License Plate Recognition (LPR) Axis App Tested
License plate recognition (LPR) has historically been very expensive, requiring specialized hardware and software.
An embedded LPR app from ipConfigure aims to change that, turning compatible Axis cameras into all-in-one LPR systems, now with integration to Exacq.
LPR vs LPC
Many confuse LPR and LPC.
License plate capture (LPC) is the ability for a camera to 'capture' a clear image of a license plate that a human being can read. For background, see License Plate Capture Shootout 2014.
License plate recognition (LPR) is the ability for a computer to automatically recognize and display the specific characters of the license plate as text, without any human intervention. It requires LPC but is far more demanding.
To see how the ipConfigure app performed in real world applications, we tested it with an Axis Q1604 at both slow speeds, below 5 MPH, and high speeds, 30+ MPH, seen below:
Here are our key findings from this test:
- Low Speeds: At 5 mph and below, the eLPR app did not fail to capture plates during the day and at night, with no missed reads (25/25), though multiple reads of the same plate were frequent.
- High Speed: At 25-35 mph along a rural road, accuracy dropped to about 80-85% both day and night (75/92 in a half hour period), with the most frequent issue being misreads of similar characters were common, such as 0/Q and 1/I.
- Occasional reads of items aside from license plates, such as background objects, vehicle grilles, or commercial vehicle lettering (4 occurrences in 30 minutes and ~100 cars).
- Delays in processing resulted in events being out of sync with video when integrated with Exacq.
- Night time: Strong IR illumination is required for nighttime performance, and must be carefully set so as not to be too weak, not providing enough contrast, nor too strong, washing out the plate.
- PPF Required: The Axis app only supports LPR on VGA max. A such, 300 pixels per foot was required when using the Q1604, resulting in a narrow (~4'3") and short FOV which may miss some plates if not carefully set, such as those mounted higher than normal on trucks and vans.
- Cameras Supported: eLPR app is listed as compatible with ARTPEC-4 cameras only. The Q1602 and Q1604 are recommended by ipConfigure. Other newer Q series cameras like the Q1765-LE (ARTPEC-4 with built-in IR) and the Q1614 are planned for future offical support.
- VMSes Supported: Application integrates officially with Exacq. Other VMSes which accept serial strings over TCP may be supported, but none are listed by ipConfigure. ipConfigure supports a push notification API.
The embedded LPR app has an MSRP of $999 USD. Combined with a Q1602 or Q1604, total system cost, including an add-on illuminator, is in the range of $2,500-3,000. This is low compared to many other LPR system, for example:
- Avigilon LPR: Avigilon's LPR add-on requires a specialized camera, software license, and server hardware upgrade, totalling about ~$8,000 USD MSRP.
- Genetec AutoVu: The MSRP of Genetec's SharpX camera plus processing unit totals ~$7,000, plus another ~$2,000 in licensing costs for AutoVu server, totaling $9,000 for a single camera system.
- Milestone XProtect LPR: Milestone's XProtect LPR is one of the lowest cost competitive options, with an initial license cost of ~$2,000, plus $1,300 for each additional camera. This does not include XProtect base licensing (Essential or higher), necessary cameras or illuminators.
Because of its high accuracy at low speeds and low cost relative to most LPR systems, ipConfigure's eLPR may be most useful in applications such as:
- Low speed vehicle entries without gates, such as a corporate campus or school driveways.
- Simple vehicle access control, using relays to open gated entrances, etc.
In these applications, accuracy should be strong if ipConfigure's guidelines for configuration, field of view, and illumination are followed.
For higher speeds above 15-20 mph, its drop in accuracy makes the likelihood of missed captures and misread characters more problematic. Users looking for recognition at these speeds would likely be better served by higher end dedicated LPR systems. Systems such as these also typically do not suffer from issues such as multiple reads, reading vehicle grilles or letters, etc.
Because of constraints with the Axis Q16's ARTPEC-4 processor is relatively slow, there are two key limitations to app performance:
- Low frame rate: The eLPR app is only capable of processing up to 10 FPS, and only in low traffic scenes. Higher traffic at these speeds results in the processing queue filling up quickly, slowing the time from image capture to plate read being processed.
- Low resolution: Even when used on the 1.3MP Q1604, the app processes images only at VGA 640 x 480 resolution. Because of this, fields of view are small, creating issues detailed below.
Narrow Field of View
The ipConfigure eLPR app requires at least 300 pixels per foot when using the Axis Q1604, resulting in only a 4'3" horizontal field of view, and about a 3' vertical field of view. Because of this, some vehicles' plates were mounted too high for the FOV.
Additionally, because of this small field of view, a full overview of the car is not provided, requiring another camera if this is desired. Make and model were typically visible on the rear of the vehicle, as well as color in the daytime. At night, due to the 1/2000s shutter and IR illumination required, color information is completely unavailable.
The eLPR app installs as an ACAP application on the Q1602 and Q1604.
The following video reviews the ipConfigure app's settings and recommended changes to camera settings. ipConfigure's recommends using a fixed shutter speed at 1/2000s, and gain lowered to 24db max.
App User Interface
The user interface of the app displays reads, both normal and hotlist (highlighted in red), and allows users to search for and export reads. This video reviews the basics of use:
There were a few common issues which resulted in misreads and performance degradation:
A frequent issue while using the ipConfigure LPR application was multiple reads for the same vehicle. This increases the image processing queue, slowing recognition, and adds unnecessary reads. While missed plate captures were rare because of this, inaccurate second and third (or more) reads of a plate otherwise properly read plate were common.
Reading Non-Plate Text
The app frequently read non-plate text such as van lettering or even bumper stickers, such as this FedEx vehicle. These reads rarely resulted in missed vehicles, as the plate was also read, but further added to the abundance of bad reads.
Reading Other Items
Vehicle grills and emblems created false negatives periodically and, as with the issue of non-plate text, would get several captures of non-critical elements.
Background foliage and shadows in the scene would occasionally create a false read as seen below.
High Speed Tests
First we tested the camera on a suburban road, with traffic moving about 30 mph.
During the day, traffic was steady. Of vehicles read, about 80-85% of plates recognized were correct. Most commonly, bad reads were due to 0s mistaken for Qs or 1s mistaken for Is.
We set up in the same scene at night using a high powered external IR illuminator, the NuOptic VIS1040. Read issues present during the day were present at night, with character misreads, but overall accuracy remained about the same.
Low Speed Scene
In our second scene, we tested vehicles at low speed, typical of a controlled vehicle entrances/exits. At these speeds, accurate reads of all plates were captured. However, multiple reads were still frequent.
At night in this scene, since the IR illuminator was located closer to the vehicle, illuminator power had to be carefully adjusted to provide enough strength to illuminate the plate, but not overexpose it, washing out characters.
ExacqVision Integration & Events Out of Sync
Integrated with Exacq, the eLPR app sends either all hits or only those on a watchlist, which are displayed as an overlay on the camera's video pane, and may be searched or used to trigger events. This video shows the configuration of this integration, a typical read, and serial search:
However, due to processing, there may be a delay between the vehicle passing through the FOV and the read finally being sent to Exacq. This results in serial events being linked to incorrect times, such as this example:
This was most common in high speed tests, where the processing queue quickly filled. Delays of as much as 50 seconds were observed in this scenario. At slower speeds, serial data was sent more quickly, with little to no delay.
For testing, we used the Axis Q1604 with firmware version 5.50.3. The external IR illuminator used was a NuOptic VIS1040-S850.
ExacqVision version 6.2.63216 was used.