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 MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!