in reply to Image Analysis

In an odd synchonicity, I was just looking at the docs for Motion homepage. An interesting example is at motion example

The real tool that comes to mind with motion, regarding your problem, is a setup function called "tuning motion" which has graphics at tuning motion . Look at the noise level setting. It is possible to filter out increasing levels of noise, leaving only pure motion behind.

It sounds like you have an exciting project going there. It ought to be easy to separate video noise from actual motion with good cameras and a bit of Perl. By tracking motion, random noise events can be removed, because the noise won't move....they are sporadic. Only objects will be trackable.


I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh

Replies are listed 'Best First'.
Re^2: Image Analysis
by fluffyvoidwarrior (Monk) on Oct 26, 2010 at 05:17 UTC
    That seems very interesting. However the objects are moving within a moving stream of sludge. Everything moves. Also, when I referred to noise I didn't mean video noise, I meant random background artefacts caused by the sludge flow. Everything is coated in sludge so I can't use colour, everything is the same temp so I can't use IR, nothing is metallic so I can't use electromagnetic detectors. The only option that is plainly visible is hard edges within a rough surfaced undulating flow of gunge. Unfortunately I can't show you all what I'm working with - my client would go ape and consider it a total infringement of confidentiality. So I can only describe the problem.
      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.


      I'm not really a human, but I play one on earth.
      Old Perl Programmer Haiku ................... flash japh
        Thanks. That's some good stuff to go at.