Object Recognition/Classification Problem
I'm working on a visual inventory system that takes snapshots of giant steel balls in conveyor trays and attempts to count them. My goal is 99.5% count accuracy.
This is how a typical snapshot looks like:
The best results I've gotten was using template matching (after cropping the image to the insides of the tray), and that only got me to 97% accuracy. I also tried all kinds of filtering and thresholding schemes to amplify the ball edges to measure circularity, but the image is too noisy and generates a lot of false positives. Also, I cannot modify the physical scene (improve contrast, paint background white, etc).
What other recognition/classification methods can I use?
You might want to try something like distance transform. Maybe it can detect the ball centres, which can then be used for region growing after edge segmentation.