We want to train a particular font and all the alphabets from A-Z and all numbers from 0-9. How many positive and negative samples of each would do the job? It would be a tedious task to do though but tesseract is not that accurate to read number plates of moving vehicles. Any other suggestions to do the task?
1 Answers
I am quoting from the following Wikipedia article- https://en.m.wikipedia.org/wiki/Automatic_number_plate_recognition
There are seven primary algorithms that the software requires for identifying a license plate:
1.Plate localization – responsible for finding and isolating the plate on the picture.
2.Plate orientation and sizing – compensates for the skew of the plate and adjusts the dimensions to the required size.
3.Normalization – adjusts the brightness and contrast of the image.
4.Character segmentation – finds the individual characters on the plates.
5.Optical character recognition.
6.Syntactical/Geometrical analysis – check characters and positions against country-specific rules.
7.The averaging of the recognised value over multiple fields/images to produce a more reliable or confident result. Especially since any single image may contain a reflected light flare, be partially obscured or other temporary effect.
Coming back to your question Haar cascades can be used to localise number plates. However for the OCR part I would personally recommend a CNN network. You can find an implementation here- https://matthewearl.github.io/2016/05/06/cnn-anpr/
There is also this library specialised in the task-https://github.com/openalpr/openalpr check out that as well
For haar cascade-https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_licence_plate_rus_16stages.xml
Good luck

- 154
- 1
- 10