Getting the hands dirty with license plate recognition

Testing out a new technology, plus 14 tips for license plate recognition

3. Do one thing and do it well. It's probably not advisable at this point to consider making a general surveillance camera capturing a scene also be the camera your system depends upon for license plate recognition. Get a dedicated camera for this.
4. Resolve to be resolute. On any system, there is a minimum number of pixels needed to accurately recognize letters and numbers. Talk to the vendor and find out what that is, and then make your camera choice, zoom, and position applicable to that. The system I was using needed about 130 pixels in width for a U.S. license plate.
5. Don't buy junk. A good, optically correct lens and a camera known for producing good quality images are essential here. In other words: Garbage in, Garbage out.
6. Contrast. When you're examining image contrast and lighting, consider the contrast at the typical plate location. And if you have to weigh contrast versus saturation, Morten suggests you lean towards low contrast if that means you have good saturation.
7. Choose your stream. The system I toyed with used Motion JPEG (MJPEG), which is really a stream of standalone JPEG images. MPEG4, as you probably know, sends only key frames and change data, so there's no standalone frame for a system to compare it to. Most IP cameras come with MJPEG and MPEG4. Select MJPEG for license plate recognition applications.
8. Get the angle. It's hard to read things from an angle, though the systems I've seen have done a surprisingly good job at odd angles. But for best results try to get your camera as "straight-on" as possible.
9. Get lit. Poor lighting isn't a killer, but it's not a recipe for success. The systems today are pretty good at still getting plate data in poor lighting, but it's going to affect accuracy and confidence in the correct capture.

10. Get focused. Focus, like in all CCTV applications, is key. Focus on the plate, and keep in mind a potential focus shift when switching from visible light to an external infrared light source. As a side note, many LPR companies seem to recommend IR cameras for recognition.
11. Move quickly. Get fast with your shutter speed, or at least as fast as you can. Why? Because if you don't have high shutter speeds, your images may going be blurry from motion. Fast shutter speeds stop the motion better and give you a higher quality image from which to recognize the license plate characters. One of the math rules for this is that the maximum time that the shutter should be open is equal to 1/(speed in miles per hour x 18) seconds. For kilometers, it's equal to 1/(speed in km per hour x 11) seconds. So, if the car is moving at 10 miles per hour, the maximum shutter speed is 1/180th of a second.
12. Weather matters. As I suggested earlier, and it's pretty much common sense, plates covered with snow, ice, mud, dirt, and heavy road grime are going to be more difficult to recognize. That's just part of life.
13. Don't lose out. With JPEG imaging, you can set the compression level. But the more compressed it is, the more "loss" you have, and the more likely JPEG compression artifacts (odd pixels) are likely to appear. Those artifacts can influence recognition systems. The 80 percent level was the minimum the Milestone tech guys recommended.
14. Go natural. No augmentations or enhancements here - software or camera-based image enhancements are similar to JPEG compression; they can introduce image elements that just aren't really there. Avoid image enhancements if possible.

That's about it - have fun capturing license plates on America's roads and parking garages.