MATLAB Answers


incorrect image classification using NN

Asked by Sarah Mahmood on 21 Sep 2013
Latest activity Commented on by Sarah Mahmood on 30 Sep 2013

hi all i have implemented a neural network to recognize printed character (0-9 and L R ), I got correct classification when testing in offline mode i.e. on previously captured images but when i connect the camera and test the NN in the online mode i got completely incorrect classification i used wavelets as features extractor with resolution 4 and i noticed some differences in features extracted during online capturing and the straining one , can anyone help me out figure the error or advice me with something


no one can help in this !

Well, there aren't that many NN experts around. Perhaps you'd be willing to use more traditional methods, like here. Anyway, OCR questions never get a lot of help in this forum - they're just too complicated and involved for us to answer. Most people want a turnkey OCR program just handed over to them, and we just can't do that. We can help on small snippets of code only.

yes thank you, but I don't want a code I implemented my own but I want an advice if there is something I'm missing because when this program tested on the trained images it's work perfectly but in real time acquisition of image I got wrong recognition that's all

Log in to comment.

1 Answer

Answer by Greg Heath
on 29 Sep 2013
Edited by Greg Heath
on 29 Sep 2013
 Accepted Answer

Test the program offline on non-training images before testing it online.

I suspect you have over-trained an over-fit net so that it essentially memorized the training images but is not able to generalize to non-training images.

How many input/target examples do you have? N = ?

What is the dimensionality of your input feature vectors? I = ?

[ I N ] = size(input)

What is the dimensionality of your output/target classification vectors? O = ?

[ O N ] = size(target)

Since you have c = 12 categories, O = c = 12 with target matrix columns equal to c-dimensional unit vectors with the row index of the 1 indicating the true class index of the corresponding input vector.

What are the sizes of the train/val/test sets? Ntrn/Nval/Ntst = ?

How many hidden-layer nodes? H = ?

What is the ratio of training equations Ntrneq = Ntrn*O to unknown weights Nw = (I+1)*H+(H+1)*O ?

  1 Comment

thank you, I tested it offline with non trained data and I also got wrong classification the answers to your questions are 1- I have 20 imaged labels which classified to 20 textual labels 2- the dimension of feature vector is 4x5 as each label consisted form 4 patterns and I have extracted 5 features for each. 3- size of input is 80x5 (for the whole labels 20x4=80) and size of output is 1x4 which corresponds to the 4 patterns of the label 4- I used two hidden layer of 20 and 30 neurons for the c=12 categories and the sizes of train/val/test sets? Ntrn/Nval/Ntst = ? I didn't get them I'm sorry but I'm little new on this field if you kindly explain more on them

Log in to comment.

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today