PROJECTS AT VISL FINISHED IN 2002
A typical schema for the system:
Brief description of the implementation:
Block diagram of the global system.
Alternatively this progression could be viewed as the reduction or suppression of unwanted information from the information carrying signal, here a video sequence containing vast amounts of irrelevant information, to abstract symbols in the form of the characters of a license place.
The Optical Character recognition (OCR) has been made using the Neural Network technique, using a feed-forward network with 3 layers, 200 neurons in the input layer, 20 neurons in the middle layer, and 10 neurons in the output layer. We kept the Neural Network dataset used in a precedent project which includes 238 digit images.
The detailed steps of our algorithm are described in the following diagram:
Block diagram of the program subsystems.
described the outputs of the main steps described above on a given captured
Example of a captured frame
Captured frame with yellow regions filtered
Captured frame with yellow regions dilated
License plate region
Determining the angle of the plate using the Radon transform
Improved LP region
Adjusting the LP Contours - Columns Sum Graph
Adjusting the LP Contours - Lines Sum Graph
Gray scale LP
LP binarization and Equalization using an adaptive threshold
Determining the LP horizontal contours using
the sum of the lines of the precedent image
Normalized LP with contours adjusted
Character Segmentation using the peaks-to-valleys method
Dilated digit image
Adjusting digit images horizontal contours - Line sum graph
Contours adjusted digit image
Resized digit image
OCR digits recognition using the Neural Network method
The Demo Graphical User Interface:
A very useful freeware permitting to test most of the Matlab image processing integrated functions was downloaded from the Mathworks site and a link to its source appear at the end of this page.
The first picture in this page were taken from Hi-Tech Solutions™ site with their authorization.
and future works
The algorithms used in the program have been tested and proved to be accurate and efficient, but still there are cases when they fail. Following are the most important problems we noticed:
- The most important problem is the Neural Network dataset size: if enlarged in future implementations, it will largely improve the accuracy of the algorithm.
- The Candidate selection algorithm in the yellow regions filtered image sometimes fails, and the main improvement would be to refine the statistically fixed parameters used in this algorithm.
- In general, all the statistically fixed parameters should be refined by performing more tests.
- The yellow region extraction algorithm sometimes fail, and it would be a good idea in future implementation to join it to the supplementary algorithm which is based on the fact that the lines where the number plate is located in the image have a clear ""signature"" which corresponds to strong grey level variations at somehow ""regular"" intervals which makes it usually possible to distinguish them from other lines in the image, or at least to pre-select some positions where to look further.
- Generally, the decision algorithms should be improved, and a way to detect error and to make decisions flow circular should be developed, for example, if there are multiple candidates for LP location that satisfies the criterions, testing each one of them according to predefined supplementary criterions, or, in cases of doubt when identifying the digits, that is when the probability of the best guess being correct is below some threshold, the system should refuse to make a decision.
Acknowledgment Related documentation