The only option that is plainly visible is hard edges within a rough surfaced undulating flow of gunge.It seems then that you should first concentrate on edge-detection, see the difference between two colors, and how to describe a color. You might use some sort of Fourier analysis to filter out everything except for the highfreq ( sharp edges ). See ImageMagick Fourier Edge Detection and Gimp -sharpening and Gimp-sketch-effect
Work out a method to put those edges into a set, which determines one entity, probably by some intersection of curves/lines. Then make a quick center-of-mass computation for each entity, then watch the center-of-mass motion.
Another idea, is to put a small IR heater on the flow, then watch the stuff on an IR camera, and rely on the heat absorption coefficients of the various objects to reveal themselves.
Of course, all this depends on how fast the conveyor is moving, and whether Perl's computational power can keep up. If the ImageMagick Fourier analysis seems to give good results, you could switch to using PDL, which will give you the speed of Fortran.... very fast....even though it's controlled from Perl. PDL uses some image formats that are specifically designed for image analysis of outer space photos. If I were you, I would ask this question on the PDL maillist. They may have already a solution for your problem within PDL, and they are very helpful.
| [reply] |
Thanks.
That's some good stuff to go at.
| [reply] |