Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Biotech Graphics Software

Better AI in Image Analysis Software? 19

J.P. Duke asks: "There is an excellent research article published by the Mayo Clinic in the J Ortho Sci that compares two common software-based approaches in analyzing scanned protein gels. Among other conclusions, they found that the two most popular applications for this research had different tendencies in quantifying proteins -- and that differences in AI algorithms show clearly different results for proteins that are less-separated on gels. This implies that much major scientific research that depends on these tools might be suspect to flaws very early in analysis. Being a cancer researcher at a large research institution, much of my work depends on software being able to accurately analyze scanned images of protein gels in which proteins are simply displayed as spots on the gel. Among other things, the software needs to be able to precisely calculate the density of protein in a spot as well as the number of actual proteins contained in a spot. What we choose to investigate further as potential biomarkers for cancer depends heavily on the ability of the AI built into these applications." Exactly how far has image-based AI improved in the last several years? Might some of those improvements help someone in J.P.'s situation?
"My questions for Slashdot are as follows:
  • Overall, how good has research image software AI become in recent years? Have there been any key software or mathematical breakthroughs that have substantially increased the 'intelligence' of software? How far along is this technology?

  • Based on your knowledge of software, what are some things researchers can do to help the software better do its job? For example, using a high quality scanner at higher resolutions generally helps results. What other things can be done to promote better results?

  • Finally, all applications that I know of in this area are expensive commercial solutions. As the companies that produce the applications are for-profit, the algorithms and technology used are completely closed and proprietary. Thus it is hard to understand what the software is really doing. Does anybody know of any open source (or at least 'open algorithm') solutions? Even if they are inferior at this point in time, being able to clearly understand what the AI is doing makes us better off in several ways.
Thank you all for your help, it is greatly appreciated."
This discussion has been archived. No new comments can be posted.

Better AI in Image Analysis Software?

Comments Filter:
  • by ComputerSlicer23 ( 516509 ) on Saturday June 04, 2005 @03:00PM (#12724750)
    I've worked with several people who are grad students or professors in this area. The first thing you'll probably want to do when looking for research, is use the term "expert systems", possibly in place of "Artificial Intelligence", possibly in conjunction with it. Full Disclosure: I don't know anything about this area really, they just used me as a sounding board to practice presentations, or get ideas about how to tweak an algorithm or two.

    My former boss was working on his Master's Thesis, what worked on recongizing shapes based on edge boundary analaysis (among other things as I recall). He worked with the professor who as an expert in "Artificial Intelligence". However, they generally referred to the types of work my boss was doing as "Expert Systems", not as "Artificial Intelligence".

    Kirby

    • Mod parent up. A lot of people call a lot of things "AI", but "expert system" is a perfectly good way to describe most of what they're talking about. I reserve "AI" for 'thinking machines', not just searching, sorting, and pattern recognition algorithms in some very limited problem space.

      I propose the following Test for Artificial Intelligence: the machine has to (gently) stop a four year old girl wielding a peanut butter and jelly sandwich from destroying the DVD player. If you can show me a machine that

  • Amazing.... (Score:4, Interesting)

    by zappepcs ( 820751 ) on Saturday June 04, 2005 @03:00PM (#12724751) Journal
    This is amazing for several reasons. First, I think I'd get fired for letting software (that may or may not be working correctly) do a job that is so important and not have any humans checking the work.

    Second, AI in general has been smoke and mirrors from the start, in all of its generalized forms. Its amazing that there is little to show for this particular sci/tech branch of engineering after so many years and attempts.

    Currently, there are tons of people investigating how the human (and animal) brains work to better understand 'intelligence' in order to create a better AI. Everyday, if not on /., on other news lists, there are little news stories of some observation or breakthrough in that area.

    So the answer is that yes, AI is coming along, and specifically computer vision. You can google it yourself. From the DARPA Grand Challenge to NASA and many other ventures, computer vision is being improved. The more improvement there is for computer vision, the better the algorithms can get for recognizing protien smears on a picture.

    I think that you will find there are people who are not only using visual scanning, but compiling this with IR and other types of scanning to better analyze the material.

    Computer based vision analysis is everywhere around you. The airline industry uses robotic scanners to look for structural defects in planes by scanning every mm of the surface in several ways. This is done mostly by computers.

    Mining and geologic communities are putting robots with computer vision and scanning software to work to find thing that is just impossible by the human eye. Say a robotic helicopter flying over a mountainous area scanning for fire prone areas using IR, sonic and other types of scanning.

    The oil industry has been using image analysis for years to find better oil sources in the earth.

    This type of stuff is all around us. Finding F/OSS sources of it is perhaps just a matter of scanning for it. Better yet, when you find some, put out some payola to support their efforts. There are open source computer vision projects. Intel has made efforts to support this among others.

    Electronics manufacturing is using it as well. I think that if you can focus some funds toward the right group, they will have the tools to develop the specific types of image analysis that you require for your industry.

    I imagine that scanning protien smears is not much more difficult than finding micrometer sized fractures in the skin of an airplane, or finding hard to see stars using amature telescopes and computer driven camera technology.

    Spend some time with your new friend Google.

    • Re:Amazing.... (Score:4, Interesting)

      by Hast ( 24833 ) on Saturday June 04, 2005 @03:32PM (#12724874)
      The problem with "AI" as a term is that it is pretty much all encompassing. It's a bit like Theory of Everything amongs physics.

      But I wouldn't say that research has been futile though, far from it really. The thing is that ever since humans began thinking about intelligence we have formed new hypothesises about how it works. However it really wasn't until we started to try and replicate the effect in a "dumb" system that we really got to the bottom of things. In the early days everyone was confident that we'd soon have this AI thing working. Since they we have discovered a lot of things which are not AI which we previously thought would be AI. (Things like chess computers, expert system and so on.) It turns out that most of these are just different (elaborate) ways to search.

      While that knowledge hasn't really given us any AI computers, we have gained a lot of knowledge about how intelligence works. (Or rather, how it doesn't work.)

      I have worked a bit with computer vision, image analysis and AI; I think what you really want to look for is computer vision or image analysis tools, not "AI". In my experience if anything has "AI" in the title it's likely bogus marketing at work - buyer beware!

      When I was taking classes in this area some interesting work wrt cancer was done by multispectral imaging tools. This basically mean that you use images that are taken outside the range of our human vision to look for things. This is one quite efficient way to find things that are very hard or impossible to find in normal pictures.

      My advice to the original poster is to look for help at technical universities in your area. I know that the university where I studies they cooperated with research hospitals and other medical places to find new ways of doing this type of things. You could also look around for companies that does this sort of thing and start examining what they have.
    • This is amazing for several reasons. First, I think I'd get fired for letting software (that may or may not be working correctly) do a job that is so important and not have any humans checking the work.

      You very obviously don't work in the field of proteomics. There's really not a good way for a human to check the algorithm's work without doing more laboratory experiments on the spots. So, having a human checking the work is more detailed (and more expensive) than having a guru glance over the output. The

  • Image Processing (Score:3, Interesting)

    by jd ( 1658 ) <imipak@yahoGINSBERGo.com minus poet> on Saturday June 04, 2005 @03:44PM (#12724945) Homepage Journal
    This is still a very primitive field, so any advances are likely to be major ones (relatively speaking). Techniques used in practice are likely to be much more primitive than techniques established in the field (see the story from a while back on digitizing old Disney animations).


    Added to all this, a lot of scientific software is less than spectacular. I can still remember using a package that simulated protein extraction experiments, used to train people in this sort of field. I was routinely extracting 102% - 105% of the available protein, which suggests an error in the calculations somewhere!


    In general, the techniques you want to use on something like this will involve fairly basic, well-established methods and minimal software intelligence. For an image, you can generally place lower and upper limits on values that are of interest, so you use filters to give yourself the middle band of interest, and contrast stretching to amplify that data.


    You want non-linear contrast stretching, so that the values of greatest interest are differentiated the best.


    To make something visible to humans, you want to make the baseline - in this case the medium - to be your background, which should always be black when displayed. This is because the eye is better at finding something that is present than something that is absent.


    If you use AI, use it to predict where the contours SHOULD be, based on existing information, and then use that to select only those regions which differ from the expected, and contrast-stretch those, with no filtering. If there is an unexpected value, it can be because the data is not being collected in the expected way, or because the data itself has unexpected properties. You cannot find out the nature of the unexpectedness, if you make assumptions based on expected results.


    None of this is rocket science, which amuses me because in my experience, it has been rocket scientists who have used imaging techniques the best.

    • You want non-linear contrast stretching, so that the values of greatest interest are differentiated the best.

      On that note, I'd like to mention that Matlab's adapthiseq [mathworks.com] (contrast-limited adaptive histogram equalization) totally rocks. It's rather nice for pre-processing before applying more sophisticated techniques.
  • some suggestions (Score:3, Interesting)

    by rensci ( 889434 ) on Saturday June 04, 2005 @04:01PM (#12725015)
    Overall, how good has research image software AI become in recent years? Have there been any key software or mathematical breakthroughs that have substantially increased the 'intelligence' of software? How far along is this technology?

    The problem is not a lack of intelligence, it's a lack of documentation, reproducibility, calibration, and statistical validity.

    Based on your knowledge of software, what are some things researchers can do to help the software better do its job? For example, using a high quality scanner at higher resolutions generally helps results. What other things can be done to promote better results?

    While higher resolution scans are generally a good thing, the don't necessarily increase the accuracy or validity of the results (and could even decrease it, depending on what the software does).

    Until you get better software, you simply can't trust the measurements blindly: you have to go over spots that are important to you manually and possibly carry out measurements by hand. Other conceptually simple things you can do is compare the results from using multiple image analysis packages, multiple scans at slightly different settings and resolutions, and repeating the experiment itself multiple times; results that are consistent across those conditions are more likely to be "real" than results you get from a single analysis.

    Finally, all applications that I know of in this area are expensive commercial solutions. As the companies that produce the applications are for-profit, the algorithms and technology used are completely closed and proprietary. Thus it is hard to understand what the software is really doing. Does anybody know of any open source (or at least 'open algorithm') solutions? Even if they are inferior at this point in time, being able to clearly understand what the AI is doing makes us better off in several ways.

    Well, there are quite a few published algorithms for this problem, and many of them have been implemented in open source form. Many of them work well at identifying and quantifying visually obvious, isolated spots, which is what they were designed for, but there is little reason to believe that they give meaningful results when spots are fuzzy and/or overlapping. There are some methods that potentially can quantify overlapping spots, but validating such methods is difficult and I doubt that the commercial packages have done this.

    I work in an academic research group working on finding and precisely quantifying fuzzy spots in another domain (and we are planning on releasing our software fully documented and in open source form); quantitative analysis of gels would be another possible application. If you like, let me know your contact information and I'll get in touch with you.
  • First, search for "Protein Gels" in google image. What you'll find is COMPLETELY representative of what any software will have to deal with. The situation is completely impossible thanks to those fine biologists. What's a blot, where does it end, what is the intensity, what's the background. Is the background uniform (probably not), how to correct it? You'll find different answers with every fine biologist you speak to.

    The problem is not building some clickety tool for enabling the fine biologists to extr

  • First off, if you're looking for quality research literature on the automated analysis of 2D protein gels, you're reading the wrong journal (Journal of Orthopaedic Science).

    Rather than posting your question to slashdot, head over to PubMed [nih.gov] (still better than google scholar for this type of thing), and search for, say "image analysis algorithm protein gel" and poof! You'll have 38 links, about a quarter of which are seem to be on precisely this topic.

    Second, the whole premise of your question is underinformed. Any scientist involved in proteomics who wants her funding renewed knows enough not to rely on a single computational approach to pick spots from 2D protein gels. Or, if they do, they're usually doing some high-throughput method that feeds into tandem mass-spec, or some other validating experimental approach.

    In short, why are you asking slashdot about this? Go to the library!
  • Machine vision (Score:3, Interesting)

    by Bastian ( 66383 ) on Saturday June 04, 2005 @07:05PM (#12725966)
    The interesting thing about computer image analysis is that it is roughly broken into two camps - machine vision and computer vision. In general, machine vision people aren't as likely to consider what they do to be A.I. - rather, it's more of a devilishly difficult (at times) form of pattern classification, and the methods are often based more on rote statistical methods than anything else. Also, industrial applications generally don't incorporate any sort of learning other than possibly the original evolution of the firmware back in the design shop.

    The A.I. stuff shows up in robotics competitions and journals, but there are two things working against computer vision in industrial applications. The first is that using true A.I. is expensive stuff, and if you're just looking for something that can sort widgets or detect tumors in CAT scans, you're going to look for the cheaper option if you're choosing between a glorified math equation and a complex 'thinking machine', especially when nowadays there isn't much difference between their performance except when dealing with truly novel input. The second is that the most intelligent machine we know of (us) has a habit of being rather unpredictable, and this quality is generally considered to be a Bad Thing when you're looking to buy a machine.

    I guess that this distinction is heavily dependent on your definition of A.I., but I think most industrial vision applications as being similar to Deep Blue - they are really just horribly complicated equation solvers that get some help from a few heuristics and a database of examples. But the fact of the matter is that Deep Blue is vastly more successful than any chess programs that try to actually think. I also think that's a perfectly reasonable situation - AI is at its heart a field that is groping in the dark, because we don't really know what intelligence is just yet, and when you're trying to solve a problem it's much wiser to take an approach where you actually know what you're doing.
  • first off, there's intel's open computer vision library (check http://sourceforge.net/projects/opencvlibrary/ [sourceforge.net]) . you'll find a large chunk of the building blocks you'd want to build your own algorithms there (edge detection, line extraction, math primitives, etc.).

    secondly: yes, there are ways to improve the performance of these algorithms. in general, the higher the resolution, the better (assuming you have the time to do the processing). if i recall correctly, most medical images use 16 bit gray scale at
    • I'm not sure how keen you are on building your own software for this type of thing, but this toolkit is fantastic. To be honest, I have NO knowledge at all of your field, but I have done some work with these packages. Not only are the algorithms robust, but they're actually fairly fast too.

      We used some of the packages in opencv to build a 3D reconstruction program for some joint movement studies (I know...totally different area, but the basic algoithms can be applied to a huge number of areas). Anyway
      • i have mixed feelings on opencv -- it feels really halfassed a lot of the time (e.g: edge detection only works in grayscale). i'm also really peeved by the documentation (or, in most cases, lack thereof).

        that said, when it does what you want, it works great. unfortunately, they insisted on using C rather than C++, thus placing really arbitrary (and, imho, dumb) limits on the kinds of images you can process. there's no reason for 99% of the algorithms to care about what kinds of pixel types they're working
  • A good resource (Score:2, Informative)

    Bob Fisher is a advanced vision researcher at Edinburgh Uni, he maintains this rather excellent page on computer vision http://homepages.inf.ed.ac.uk/rbf/CVonline/ [ed.ac.uk]
  • I've been reading about various projects that are using software-based image analysis to decode CAPTCHA's. What's a CAPTCHA? It's a "completely automated public test to tell computers and humans apart". In other words, it's one of those incredibly annoying "warped text images" where you have to type the text that is warped and strangely colored. The idea behind these is that a script bot can't decode the image and type in the correct letters, but a person can. Thus, websites can keep out scripts but al

As far as the laws of mathematics refer to reality, they are not certain, and as far as they are certain, they do not refer to reality. -- Albert Einstein

Working...