views:

121

answers:

3

I want to write a .NET program that takes an image of a specific coin type (say a US nickle) and then searches the image for the year. Assume the scan is always 300dpi and has a consistent image size cropped to the coin. What changes is the rotation of the coin.

So how would I determine the date? Should I image match by creating a library of all expected coin images with each year? Should I try OCR the date? What libraries might be helpful

Thanks in advance for any help or suggestions

A: 

Looks like a good candidate for using OpenCV. If the set of different years possible is not very large, the library might be a good idea.

Tarydon
A: 

Good Image manipulation librari is ImageMagick. It has CLR wrappers in codeplex.

Comparing images is not a light operation it takes some CPU time, so the design is a quetion of the amount of coins in your set. If you have X coins over Y years, you need to make X*Y comparisons, which might take too long.

I suggest you to tru comparing the coin to a specific coin (not with the exact year), and then try to extract the year out of the input coin.

sagie
A: 

You can try using shape matching, but when you will prepare template for that, remove the date from found edges. Then use shape matching with different rotations (from 0 to 360 angles). So you will get a coin with any date. But you will have to prepare a different coin template if it differs not only in year information. And after that you will be able to rotate the coin and to make an OCR at the place where the year must be written.

erjik