License plate recognition (LPR), also called Automatic number plate recognition (ANPR) is a mass surveillance method that uses optical character recognition on images to read vehicle registration plates.
LPR can be used to store the images captured by the cameras as well as the text from the license plate. Systems commonly use infrared lighting to allow the camera to take the picture at any time of the day. LPR technology tends to be region-specific, owing to plate variation from place to place.
The software aspect of the system can runs on standard home computer hardware and can be linked to other applications or databases. It first uses a series of image manipulation techniques to detect, normalize and enhance the image of the number plate, and then optical character recognition (OCR) to extract the alphanumerics of the license plate.
LPR systems are generally deployed in one of two basic approaches:
- allow the entire process to be performed at the lane location in real-time
- transmit all the images from many cameras to a remote computer location and perform the OCR process there at some later point in time.
When done at the lane site, the information captured of the plate alphanumeric, date-time, lane identification, and any other information required is completed in approximately 250 milliseconds. This information can easily be transmitted to a remote computer for further processing if necessary, or stored at the lane for later retrieval.
In the other arrangement, there are typically large numbers of PCs used in a server farm to handle high workloads. Often in such systems, there is a requirement to forward images to the remote server, and this can require larger bandwidth transmission media.
There are six primary algorithms that the software requires for identifying a license plate:
- Plate localization – responsible for finding and isolating the plate on the picture.
- Plate orientation and sizing – compensates for the skew of the plate and adjusts the dimensions to the required size.
- Normalization – adjusts the brightness and contrast of the image.
- Character segmentation – finds the individual characters on the plates.
- Optical character recognition.
- Syntactical/Geometrical analysis – check characters and positions against country-specific rules.
The complexity of each of these subsections of the program determines the accuracy of the system. During the third phase (normalization), some systems use edge detection techniques to increase the picture difference between the letters and the plate backing. A median filter may also be used to reduce the visual noise on the image.
There are a number of possible difficulties that the software must be able to cope with. These include:
- Poor image resolution, usually because the plate is too far away but sometimes resulting from the use of a low-quality camera.
- Blurry images, particularly motion blur.
- Poor lighting and low contrast due to overexposure, reflection or shadows.
- An object obscuring (part of) the plate, quite often a tow bar, or dirt on the plate.
- A different font, popular for vanity plates (some countries do not allow such plates, eliminating the problem).
- Circumvention techniques (Vehicle owners have used a variety of techniques in an attempt to evade LPR systems and road-rule enforcement cameras in general).
- Lack of coordination between countries or states. Two cars from different countries or states can have the same number but different design of the plate.
While some of these problems can be corrected within the software, it is primarily left to the hardware side of the system to work out solutions to these difficulties. Increasing the height of the camera may avoid problems with objects (such as other vehicles) obscuring the plate but introduces and increases other problems, such as the adjusting for the increased skew of the plate.