Algorithm for comparing Hand drawn alphabets and digits with printed standard alphabets and digits.

1 view (last 30 days)
Hi,
My problem objective is to compare the Hand drawn alphabets(A-Z and a-z) and digits(0-9) with that of the absolute printed standard references to get the score that how closely user has drawn the particular digit. I am familiar with Image processing and previously I did the template matching using Normalized Cross correlation but NCC will not be so much effective in this case due to deformation of an image. So I was trying to play with contours matching but still I am not getting any good thing..... can anyone suggest me the algorithm to cope with this problem.....!!!!!
Thanks in advance.

Accepted Answer

Kosai
Kosai on 20 Mar 2012
The most effective method to do OCR is Neural Network, if you have the nn-toolbox you can find under the documentation-application's part a very intuitive description and example about Characters Recognition.
  1 Comment
Jibran
Jibran on 20 Mar 2012
Hi Kosai, thanks for your answer but my actual problem is to look for the score of similarity between the hand drawn and standard reference alphabets..... I usually use MATLAB to set my algorithm and later using opencv to implement it.......I tried to dilate the hand drawn digit and then tried to get the score using normalized cross correlation. But it is not so much especially in getting scores..........

Sign in to comment.

More Answers (2)

Image Analyst
Image Analyst on 20 Mar 2012
Start your research here: http://iris.usc.edu/Vision-Notes/bibliography/contentschar.html#OCR,%20Document%20Analysis%20and%20Character%20Recognition%20Systems There are dozens of papers there and I'm sure someone has tackled that problem before.

Greg Heath
Greg Heath on 21 Mar 2012
If you decide to use a feedforward neural network, use 62 output nodes to indicate the assigned class of the input. The target matrices for training should be columns of the 62 dimensional unit matrix eye(62) with the row containing the "1" indicating the index of the true class of the training input.
Using PURELIN, LOGSIG or SOFTMAX as the output layer activation function allows the 62 dimensional output vector to represent an approximation to the class posterior probabilities, conditional on the input.
Therefore, the maximum output value can be used as a measure of similarity.
Hope this helps.
Greg

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!