License Plate Recognition on the Cameras You Already Own

Automatic license plate readers for law enforcement usually mean an appliance per lane. IREX reads the plate and the vehicle behind it, in the national format the plate was actually issued in, checks it against the records that matter, and makes every vehicle on the network searchable, without replacing a single camera or adding an LPR appliance per lane.

8 Weeks
To Build Thai Plate Recognition
250 px/m
Image Quality to Read a Plate
80 px
Minimum Plate Width in Frame
10
Vehicle Classes Recognized

Beyond the Plate

A Plate Is Not Enough to Find a Vehicle

Plates get obscured, misread, and swapped, which is where an ALPR system that reads characters and nothing else runs out of road. IREX therefore reads the plate and the vehicle. Four neural networks run in sequence on each frame: the first finds the vehicles, the second classifies what each one is and what color it is (and, on a two-wheeler, how many riders it carries and whether they are wearing helmets), the third locates the plate on the vehicle it belongs to, and the fourth reads the characters. A vehicle stays findable when the plate is dirty, partly covered, or wrong in the report.

The plate is read in the format it was actually issued in. A regional model is selected per camera, and search accepts full and partial numbers on single and double-line plates, in normal, inverted and custom styles, with the country of issue held as its own field on the record. Release 4.33 alone added Gibraltar, Iceland, Bosnia and Herzegovina and more than ten other national formats, and improved reading of plates obscured by snow, mud or tape. When a plate cannot be read at all, that is an event rather than silence: Invalid license plate and License plate is missing each raise at their own priority, so a deliberately covered plate is itself a lead.

Because the plate and the vehicle attributes are indexed together, an investigator searching a week later gets the whole context rather than a plate crop, and can search on a partial plate with wildcards, on a vehicle class and color, on a make, on speed, or on the plate sitting in front of them on an event card.

What It Delivers

From a Read to an Outcome

Plate and Vehicle, One Pass

Plate characters plus vehicle class, body color and make, read on the same pass. Two-wheelers are a class of their own, with rider counting and helmet detection.

See Two-Wheeler Analytics

National Plate Formats

Single and double-line plates, normal, inverted and custom styles, with the country of issue on the record and a regional model selected per camera.

Checks against Your Own Records

Every read is matched against your vehicle lists in real time and, where your agency supplies the dataset, against registration, insurance and inspection records.

City-Wide Vehicle Search

Find every appearance of a vehicle across the network from a partial plate, a wildcard, an attribute filter, or one event card, then draw its route on the map.

Plate-of-Interest Alerts

A watchlist hit routes to the right officer through the Sover secure messenger with the plate photo, camera location, timestamp, and a live video link.

Enforcement Workflows

Red light, stop line, wrong way, forbidden maneuver, illegal parking, right of way, railway crossing, lane restriction, and average speed all rest on the same read.

See Multi-Camera Traffic Analytics

Ten Classes

What Kind of Vehicle It Is

Vehicle class is not decoration. It is the filter an investigator searches on when the plate is unknown, and the term a lane, weight or corridor restriction is written in. The classifier went from six categories to nine in release 4.37 and gained minivans in 4.39.

Cars
Sedan, hatchback, station wagon, coupe, SUV and crossover: vehicles designed to carry up to eight people.
Motorcycles
Any two- or three-wheeled motorized vehicle, including tricycles, scooters and mopeds.
Minivans
Passenger vans and minibuses up to eight seats, including MPVs. New in release 4.39.
Buses
Vehicles carrying more than eight passengers: city, intercity and double-decker buses, and trolleybuses.
Light-Duty Trucks
Payload capacity up to 3.5 metric tons.
Medium-Duty Trucks
Payload capacity of 3.5 to 12 metric tons.
Heavy-Duty Trucks
Payload capacity above 12 metric tons.
Tractor-Trailers
A semi-truck with a semi-trailer, or a truck coupled to one or more trailers.
Machinery
Agricultural and municipal tractors, harvesting equipment, and construction and road machinery: excavators, graders, pavers, mobile cranes and loaders.
Trailers
Any trailer or semi-trailer detached from its tractor unit, and passenger-car trailers.

In Operation

Three Things the Same Read Has to Do

The Row Is the Plate and the Vehicle Together

What lands in the events list is not a plate crop. It is the plate, the make and the color as one row, with the camera that saw it and the time it did, which is what lets a lead survive a witness who remembers the car but only three characters of the number. From that row an operator runs Search by number plate to pull every other camera that saw the same vehicle, or Route to draw its path across the map. Cameras also coordinate across an approach, matching entry and exit points, which is what makes average-speed control and route reconstruction possible in the first place.

See Multi-Camera Object Tracking
A black estate car parked at a German motorway service-area pump island, seen from the rear three-quarter with its rear plate legible, while a person leans into the open tailgate.
What an operator reads back is DHXX1234, Audi, Black, rather than a plate crop on its own.

Find the White Pickup Seen near the Market

Half the time the plate is the thing you do not have. The vehicle filters answer the description instead: class and color combined with AND, make where brand recognition is switched on, speed band, the watchlist a vehicle sits on, and the event name a rule was given. Plate search itself takes wildcards, so three certain characters and two unknown ones is a query. Proprietary descriptor clustering indexes billions of vehicle objects, so the archive answers at the same speed whether the estate is a district or a country.

A white single-cab pickup truck stands in the middle of a Guadalajara side street lined with shuttered workshops, seen from behind, its rear plate clearly readable.
The query behind it is the ordinary one: a white pickup, seen near the market, in the last hour.

Registration, Insurance and Inspection at the Curb

The same read answers a compliance question. Draw a motion control area on the camera, point it at an authorized vehicle dataset, and every plate crossing it is checked against the record: in California that is the DMV registration and whether the annual fee has been paid, and a vehicle whose registration has lapsed raises a Registration expired event alongside the other traffic violations. Elsewhere the same mechanism carries a liability-insurance check or an annual inspection certificate. You name the check area and the violation type in your own words, because the requirement differs by state and by country.

A red sedan crosses the stop bar of a wet Florida intersection at night while the overhead signal shows red, its rear plate lit and legible from a mast-arm camera.
One camera, one read: the signal violation and the registration status come off the same plate.

Compliance Checks

Registration, Insurance and Inspection, Read from the Plate

Enforcing the paperwork a vehicle is supposed to carry is one of the few things a law enforcement license plate reader does that pays for itself. Here is exactly what the platform does, and what it deliberately does not do.

  • Expired registration and expired tags. Each read is checked against the state motor-vehicle record, and a vehicle whose annual registration has lapsed raises a Registration expired event in the same list as the other traffic violations, so parking and law-enforcement teams work it in the workflow they already have.
  • Mandatory liability insurance. A check area can be pointed at a financial-responsibility dataset instead, so the question answered at that curb is whether the vehicle is insured. IREX names the mechanism generically in the settings, and you label the area and the violation type for the requirement you are actually enforcing.
  • Safety and emissions inspection. Where a jurisdiction requires an annual safety or emissions certificate rather than a registration fee, the same area carries it. In the product this is the technical-allowance or environmental-certificate check, and it is one setting away from the registration case.
  • The dataset stays yours. IREX operates no vehicle register of its own. Every check runs against DMV registration or another authorized dataset that your agency imports or exposes to the platform, and the endpoints and the access are agreed during the design phase, not assumed.
  • Geofenced, not blanket. Checks run only inside the areas you draw on a camera: a road segment, an intersection approach, a parking lot. A vehicle outside those areas is not checked, which is what keeps a compliance program from turning into a general vehicle-movement register.
  • An event, not a decision. A failed check raises an alert for a person to verify, under the same Case ID discipline as any other privacy-sensitive action. Nothing is cited, towed or booted by the platform.

The Vehicle Database

Lists, Records, and the Import That Fills Them

A police license plate reader is only as useful as the list it reads against. The vehicle database is built on the same machinery as the person database, with the same access model and the same Case ID gate, because tracking a vehicle is tracking whoever is driving it.

  1. Lists Are the Unit of Access

    Vehicles are enrolled onto named lists: a stolen-vehicle list, a permit roster, a case list. The settings sit on the list rather than on the vehicle, namely the priority its matches are raised at and the user groups allowed to see it. A list is matched against live video only when Recognition mode is enabled on it, optionally inside a validity window that lapses on its own, and Archived keeps the record while barring recognition against it. Access and recognition are two separate switches on purpose, so a zero-result search can mean the cameras never saw the vehicle, or that the list was never yours to search.

  2. What a Vehicle Record Holds

    The card carries the plate number, the country code, the owner name, the list it belongs to, and a photograph of the vehicle. Where they are known it also holds the make, model, body type, color, year of manufacture, VIN, and the registration-document number and date of issue, which is why a match tells an operator far more than the camera alone read. The entry form was cut to the data-minimization requirements of CJIS and GDPR rather than to what a database could hold.

  3. Bulk Import from a Spreadsheet or an Archive

    Two shapes, for two kinds of source. A CSV is the fast one: semicolon-separated, one line per vehicle as PlateNumber;Country;LastName;Name, which is what a partner agency can usually produce the same afternoon. A TAR archive is the complete one: a plates folder of vehicle images and a plates.json of structured records carrying color, model, body type, VIN, manufacturer, year, and the registration-document fields, so an existing register arrives whole instead of as a column of numbers. Import needs a Case ID, like every other change.

  4. Export the List Back Out

    Export is the same shape in reverse: a TAR archive holding the photograph against each card and a plates.json of the records, with the database id, the list id, and an image hash on every entry. Migration between instances, handover to another agency, and proving what a list actually contained on a given day all rest on it. A watchlist you cannot get back out is a watchlist you cannot account for.

  5. Turn a List into an Alarm Monitor

    A monitor is a set of cameras, the CarTrack Pro Match event, and a list, and from then on the list works without anyone watching a wall. The alarm opens with the plate photo, the camera and its map location, the timestamp, and a live video link, and verification is required before anyone acts on it. The same monitor drives equipment as well as people: a line drawn in front of a barrier turns a match into an access decision, and Send events to external systems passes it to the gate controller.

  6. Plate Number Templates

    Some rules are about which vehicles belong somewhere rather than which vehicle did something. Release 4.38 added plate number templates: a violation rule on a road segment names the vehicle lists and the plate patterns permitted there, and anything else in that lane is an exception with evidence attached. Transit corridors and bus lanes are the obvious case, and the same templates carry the failure-to-yield-to-transit rules introduced in the same release.

  7. A Case ID on Every Search and Every Change

    The platform will not run a vehicle search, or accept an enrollment, edit, import or export, without a Case ID recording the lawful grounds. The log entry keeps the user name and IP, the subject searched, the referenced document id, and the timestamp, appended where nobody can edit it. Since release 4.38 the Logbook exports to CSV for auditors, and each download is itself logged, which is the part most systems leave out.

FAQ

Do we need dedicated LPR cameras?

Not for general plate reading and vehicle search: existing ONVIF Profile S cameras meeting the platform baseline work. What matters is pixels on the plate, not the label on the camera. The published figures are roughly 25 px per meter in the region of interest to detect a vehicle and 250 px per meter to read its plate, a plate image at least 80 px wide and preferably 125, and a mount 2 to 6 meters up with the tilt inside 0° to 20° for plate reading. Traffic-violation enforcement is stricter again, because a citation has to survive challenge, and IREX publishes an installation specification per violation type.

Which countries’ plate formats does it read?

A regional model is selected per camera, and search covers single and double-line plates in normal, inverted and custom styles, with the country of issue held on the record. The supported list grows every release: 4.33 alone added Gibraltar, Iceland, Bosnia and Herzegovina and more than ten other national formats, and improved Mongolian plates. If your format is not covered yet, that is a training job rather than a redesign. Thai, one of the hardest scripts in the world for optical character recognition, went from a standing start to live traffic in eight weeks.

Does it read motorcycle plates?

Yes, and two-wheelers are their own vehicle class rather than a car that came out small, which is what releases 4.36 and 4.37 changed. Motorcycle plates are a fraction of the area of a car plate, so the minimum plate size setting matters more here than anywhere: set the pixel width below which the platform should decline the read rather than guess. On the same pass the module counts the riders and detects helmets, which is what multi-rider and no-helmet rules are written against, and the Motorcyclists filter returns those events on their own.

Can it read a partial, dirty or misread plate?

Search returns matches for partial plates and incorrect characters, with wildcard conventions for the positions you are unsure of, and release 4.33 specifically improved reading of plates obscured by snow, mud, or tape and cut false positives by classifying text that is not a plate as not a plate. Where the plate genuinely cannot be read, the platform says so with an Invalid license plate or License plate is missing event, and the vehicle class, color and make give a second route to the same vehicle.

How do the stolen, uninsured and unregistered checks work?

Through integration with the databases your agency already relies on. Stolen-vehicle checks run against your law-enforcement records; registration, insurance and inspection checks run against DMV registration or another authorized dataset, inside check areas you draw on specific cameras. IREX operates no vehicle register of its own, so the endpoints and the access are agreed during the design phase and provided by you. Every failed check raises an event for a person to verify; the platform issues nothing by itself.

Can we import the vehicle list we already hold?

Yes, either as a semicolon-separated CSV of PlateNumber;Country;LastName;Name, or as a TAR archive of vehicle photographs plus a plates.json of structured records covering color, model, body type, VIN, manufacturer, year and the registration document. Lists export the same way, photographs and records together, with an image hash on every entry. Import and export both require a Case ID and are both logged. Where the source is a live register, we would rather build an interface to it through the platform API than re-import a list that is stale by the time it lands.

Is IREX an ALPR system for police departments?

It is the software half of one. IREX is LPR software that runs on the fixed and PTZ cameras a city or an agency already owns: the standard deployment connects the existing ONVIF or RTSP fleet without replacing camera hardware, so there is no IREX plate-reader camera, no roadside appliance and no box per lane. What the platform needs is pixels on the plate. That means roughly 250 px per meter inside the region of interest, a plate image at least 80 px wide, and a mount 2 to 6 meters up with the tilt inside 0° to 20°. A site survey confirms each camera against the module it will run, and traffic-violation enforcement is stricter again, because a citation has to survive challenge. ALPR is the US name for it; British and Irish agencies call the same technology ANPR, and it is the same module either way.

Do you sell license plate reader cameras for police cars?

No. IREX sells no cameras of any kind, and there is no in-car, trailer or body-mounted product on this page: CarTrack Pro documents a fixed or PTZ mount, 2 to 6 meters above the ground for plate reading, with the tilt between 0° and 20°, the pan within ±20° and the roll within ±5°. What IREX supplies is the analytics that turn a camera your agency already owns into an automatic license plate reader, together with the vehicle database, the search and the audit trail behind it. A vehicle-mounted reader program is a separate thing from what is documented here.

Which databases can a police license plate reader check?

The ones your agency already relies on, because IREX operates no vehicle register of its own. The platform integrates with external law-enforcement databases to detect stolen, uninsured and unregistered vehicles, and release 4.26 added checks against an external technical-allowance database, which is the annual safety or emissions certificate in the jurisdictions that require one. Alongside those, every read is matched against your own vehicle lists: a stolen-vehicle list, a permit roster, a case list. Where the hit then goes has the same shape of answer. Alerts are delivered through real-time crime centers and 911 dispatch centers as well as the Sover secure messenger, and an alarm monitor can push any event and its frames to a third-party system over a webhook. The endpoints and the access are agreed during the design phase, not assumed.

What does a police license plate reader cost?

IREX does not publish a price, and a per-camera license number quoted on its own would mislead rather than help: it is a minority of what a program actually costs and it says nothing about the estate the program has to cover. Pricing is quoted per deployment, covering the system, the support and the services around it, and presented as a three-year total cost of ownership against your current stack. The scope turns on camera count, the mix of modules, the retention period, and whether you host the instance yourself. The four commercial models are set out on How to Buy, and a pilot is scoped before any of them.

What is your license plate reader data policy?

The reads are yours. Video, events, logs and watchlists are owned exclusively by the customer, and IREX neither owns them nor has access to them, because the instance runs on your infrastructure under your access controls. Every search, enrollment, edit, import and export runs under a Case ID recording the lawful grounds, and the log entry keeps the user name and IP, the subject, the referenced document id and the timestamp, appended where nobody can edit it; since release 4.38 the Logbook exports to CSV for auditors, and each download is itself logged. Retention is configured by you as the controller: the architecture is documented to scale to a one-year retention period, which is a capacity ceiling rather than a service inclusion or a default. And the compliance checks run only inside the areas you draw on specific cameras, which is what keeps a plate program from turning into a general vehicle-movement register.

Is this ALPR software for law enforcement only?

No. The same read serves anyone whose problem is a vehicle: traffic authorities running citywide enforcement and average-speed corridors, parking operators gating a barrier on a permitted-vehicle list, and casinos reading the valet lane and the self-park entrance. Law enforcement is the demanding case because a hit there has to carry its evidence and its lawful basis with it, not because the module is any different.

How accurate is it on our cameras?

That is the right question, and the honest answer is that we measure it rather than quote it. IREX does not publish per-module accuracy figures, because a number from another city’s cameras tells you very little about yours. Accuracy is benchmarked on your own feeds during the pilot, against two or three success criteria agreed in writing before it starts, and the measured numbers are what go into the contract.

What camera quality does it need?

Any camera that supports ONVIF or streams RTSP with H.264 or H.265 on a static IP can be connected, but connection is not the bar. Each module sets its own resolution, mount position, height, and angle-of-view requirements in the camera requirements, the flagship modules need higher-resolution imagery of the scene than a bare stream, and the recommended primary stream is 1920 × 1080 or 1920 × 1440. A site survey confirms every camera against the module it will run.

Does this run on its own or does someone have to watch it?

It runs on its own and alerts a person. Detections are signals for a human to verify: no response runs autonomously, and the verification and decision are logged against the same Case ID as the detection.

Test It on Your Worst Camera

Pick the approach with the bad angle and the low light. That is the one worth measuring in a pilot.