Camera reading a number plate so Autlo opens the gate barrier automatically

How ANPR Works

Automatic Number Plate Recognition — the engine that reads a plate, corrects it, and decides what happens at the gate.

What is ANPR?

ANPR stands for Automatic Number Plate Recognition (some countries also use ALPR — Automatic Licence Plate Recognition). It is a technology in which a digital video camera is used to monitor vehicles in a designated area and capture the licence plate.

The seven steps of automatic number plate recognition

ANPR, also called ALPR, is usually described as six steps. In practice, there are seven: the standard list leaves out how the image reaches the recognition software, and what happens when the read comes back wrong. Most cameras and most ANPR software have no step six at all — they go straight from a best guess to the database check, open or do not, with nowhere to record that a particular plate is always read wrong.

  • 1. Selecting and installing the camera — selecting the camera make and model, and installation location(s). Doing the electrical, networking, and setup configuration.
  • 2. Getting the raw ANPR data — the image, or the camera's own plate result, reaches the recognition software over the camera's API or as an H.264 video stream.
  • 3. Preprocessing and plate localisation — the frame is cleaned up and the plate isolated from everything else in it.
  • 4. Character segmentation — the plate is sliced into individual characters, using the plate standard that applies at that site.
  • 5. Optical character recognition — those characters are converted into text.
  • 6. Correction — the read is matched against alternate readings and against any manual rule set for that vehicle. Skip this step and a plate the camera reads badly this morning it will read badly next year.
  • 7. Database check and action — the plate is checked against the site's permits and rules, and the gate opens, stays closed, or starts a session that is priced, charged and invoiced.

Steps one to five are common to every ANPR product on the market. Steps six and seven are where systems differ — and it is usually a handful of daily commuters with awkward plates, failing every morning on a system that stops at step five, that brings a site to us. Every photograph on this page is a frame from a live Autlo site.

Step 1 — Selecting and installing the camera

Autlo works with any digital camera. We can connect your existing cameras or assist with the pros and cons when purchasing a new one. Here are just some brands we have worked with.

Hikvision camera logoAxis camera logoDahua camera logoBosch camera logoTattile camera logoMilesight camera logo

Recognition quality is settled at the bracket. These decisions cost nothing before installation and are expensive to revisit afterwards, so we go through them with you or your installer before any hardware is ordered — or give recommendations on how to adjust the positioning of cameras you already have.

Angle and height

The straighter the view onto the plate, the better: sharp angles cost accuracy before any software is involved. Mounting higher than the vehicle's front lights greatly reduces reflections when the beam points straight at the lens. Both are decided on the bracket, and both are visible in the camera's own frames within a day of it going up.

Setup led light at night 6e9cc80b3d

Light at night

No later step can recover detail that was never captured. Night IR capability is required for 24/7 operation, and a simple LED bar above the lane — like the one lighting this frame — makes a clear difference after dark for very little cost at installation. A site failing only at night almost always has a lighting problem rather than a software one.

Front, back, and the winter fallback

Entry camera on the front of the vehicle, exit camera on the rear; a second entry camera can confirm a vehicle already inside, and a rear camera is what catches motorcycles, mopeds and trailers. Decide the snow fallback at the same time: the app, front and back cameras, or no enforcement during heavy snow.

Step 2 — Getting the raw ANPR data

This step decides how Autlo works with the cameras already on site. There are two ways in: take the plate result from the camera's own ANPR over its API, or read the camera's video stream. Autlo runs production sites on both, and every step after this one is identical either way.

Autlo access camera big2 1 2 80a35ecd7b

Camera's own ANPR API

Some cameras carry ANPR on board and do it well. Where those results are accurate, there is no reason to read the image a second time — Autlo connects over the camera's API and takes the plate result the camera has already produced.

This runs in production with Hikvision cameras over ISAPI and RTSP, and with Tattile over its direct API. Other manufacturers with an open API can be added with a little extra work.

The camera ANPR API is preferred if:
• You are buying new cameras anyway, and the site needs only one or two, so the extra cost of built-in ANPR stays small.
• There is no sheltered, room-temperature spot on site for a minicomputer, or the site cannot accommodate a slightly more complex network or power setup.

 

Autlo ANPR engine 7fea384b42

Autlo ANPR engine

Autlo's own recognition software runs on a minicomputer at the site and reads the camera's video stream directly. The unit is roughly the size of a pack of cards and handles three to six cameras, depending on traffic volume and how difficult the image conditions are.

This is the universal route, and it is how most sites run. Any camera that outputs a standard video stream can be used, and older analogue cameras can be brought in through an encoder.

The Autlo ANPR engine is preferred if:
• Cameras are already installed, so you can keep using them.
• The site has three or more cameras, where it is usually the cheaper option.
• You want protection against network outages: the engine stores results locally and sends them to the central system as soon as the connection is back.

Step 3 — camera configuration and quality monitoring

Preprocessing corrects the frame for glare, contrast and shadow. Localisation then finds the plate inside it and isolates that rectangle, resolving its position, size and orientation, so the later steps work on a clean plate rather than a whole scene.

Setup mask unrelated areas 1a6453b2a2

Masking: less to search

Localisation gets easier the less there is to search. Mask out everything that is not the lane you care about, so the engine never sees passing traffic or vehicles heading elsewhere. The black regions in this frame are masked — only what is left is ever evaluated, which removes a whole class of false reads before they reach the access decision. Masking and the timing windows can be adjusted remotely afterwards; a bracket cannot.

Edge case digital noise 579b3dbb3d

What preprocessing can and cannot fix

Lighting, contrast and sharpness are adjusted to remove glare, shadow and background noise before anything tries to read the plate. It will rescue a marginal frame. It cannot invent detail the camera never captured — the compression artefacts in this frame are a network or camera configuration fault, not something an algorithm can clean up, which is why almost every limit further down this page is a failure at step one.

Step 4 — Configuring the movement rules

A correct read is often just a start. The system also needs the context: is the car standing still or moving, and if it is moving, in which direction? In some spots, what matters is how long it stayed. You can select your preferred setup in the selection below:

Gated

Gated access is the simplest setup. The gate or door already enforces the direction of travel, so there is no need to work out which way the car is moving. 

At the entry gate, every recognition starts a session. At the exit gate, every recognition starts a session.

We will not pay attention to whether the car is moving or not (and also ignore the direction).

Guided free-flow

Free-flow has no barrier, which allows the cars to keep moving. Entries and exits are still separate lanes.

This means every car moving in the expected direction counts. So does one whose direction the camera could not detect, for example, because it was moving very fast or very slowly. 

But if the car is clearly moving the wrong way, it will be treated oppositely.

Bidirectional free-flow

Bidirectional is used where there is no room for separate entries and exits. This is the hardest, as the decision depends not only on the direction but also on the context.

We still watch the direction and by default, decide based on it. 

But if the direction is unclear, we will look at what was done before. If the car was not parked, it has arrived, so the session starts. If it was already parked, it must be leaving, so the session ends.

Stationary

Stationary is typical for time-limited loading spots used by ride-hailing drivers and couriers, and for industry sites where a vehicle unloads its cargo or has its load weighed.

There, the session lasts for as long as the vehicle stays in the camera's view. This means the session starts when the vehicle becomes visible and ends when we no longer see the plate.

Step 5 — character segmentation: knowing what the plate should look like

The isolated plate is sliced into individual characters so each one can be evaluated on its own rather than as one block. How cleanly that works depends on the plate itself — and on whether the engine knows what shape to expect before it starts cutting.

Rules set for the local standard

Plate formats are national. Estonia runs three digits followed by three letters. Sweden, Finland and Lithuania run three letters followed by three digits. Plenty of countries use neither, and personalised plates follow no pattern at all.

Autlo sets the rules for the standard in use at that site, and for the neighbouring countries whose vehicles actually arrive there, so the engine knows how many characters to expect and where letters and digits belong. A car park near a border reads cross-border traffic as well as it reads local traffic, instead of treating every foreign plate as an anomaly.

Plate two rows read in fragments af787b6d2f

Plates that resist segmentation

A curved plate split across two rows, with reflections running over the surface. Segmentation has no clean line to cut along, so the engine frequently returns only the top row or only the bottom one, and rarely the whole registration in a single read. Knowing the expected format is what tells the software that what came back is a fragment rather than a complete plate.

Step 6 — optical character recognition: turning shapes into text

Each character image is converted into text and the engine returns a string — its best guess at the registration. This is where small ambiguities become wrong answers, because a single misread character produces a registration that matches nothing. Both of these are real vehicles at Autlo sites.

Plate is it i8 or 18 301948ebd1

Characters that share a shape

A personalised plate that matches no local standard. Is that an I or a 1? The engine returns it both ways on different frames. Every OCR engine hesitates between O and 0, 1 and I, 5 and S, 6 and G, 2 and Z, 8 and B — the shapes really are nearly identical at plate resolution.

Plate screw closes d into 8 ebca3b0f0d

Hardware in the way

Black fixing screws sitting inside the characters. The screw closes the D, so the last three characters come back as T8X rather than TDX. The shape changed before the camera ever saw it, which makes this the hardest kind of error to catch: the result is confidently wrong rather than uncertain.

Step 7 — correction: making the read match the right vehicle

Every plate shown above still opens the gate at an Autlo site, because the read is resolved before it reaches the database rather than after. This is the step a camera that ends at OCR does not have, and it is why the same vehicle keeps failing on systems that stop at step six.

Alternate plates

Rather than overwriting what the recognition believes, Autlo keeps that reading and stores the likely candidates alongside it, so the vehicle is matched whichever way it happened to be read that morning. Both I8 and 18 are held. Both T8X and TDX are held. Each fragment of a two-row plate is held. The gate opens on any of them.

Manual override

What is left is the case every operator recognises: one regular whose plate the camera gets wrong almost every day. The vehicle passes every other barrier in the city, so the driver is not going to repaint a bolt or order a new plate. A rule links that misread permanently to the right permit — a minute of work in the back office, and from the next arrival the gate opens normally.

Applied before the check, not after

Correction runs between recognition and the database lookup, which is the only place it can work. A camera's built-in ANPR goes straight from its best guess to the comparison, so there is nowhere to record a correction and a plate it reads badly today it will read badly next year. When the logic sits in software, the fix stays fixed.

Step 8 — database check and action: deciding which read counts

The corrected plate is matched against the permits and rules held for that site. Before any of that can happen, the system has to decide which of the many reads of one arriving vehicle actually counts.

Context exit barrier efd2cba4d2

One vehicle, one decision

A camera produces the same read several times as a vehicle approaches, and the entry camera can catch a back plate on the way out. A time window ignores the repeats so a session starts only once — 30 seconds by default. After entering, a vehicle is ignored at the exit for a set window, and the mirror rule applies on the way in. Each gate is also told which way traffic flows, so vehicles moving away from an entry camera are ignored entirely.

Driver feedback screen 98900c3135

The driver can see the decision

The result can be shown on a screen at the gate, with the plate and the free spaces remaining, so the driver knows what the system decided rather than guessing why a barrier has not moved. Most of the frustration at a gate is not the wait, it is not knowing.

What the gate actually decides

A permit check answers one question: is this vehicle allowed in. A real site needs more than that, on the way in and on the way out. Each of these is a rule you set per site or per zone, and this is the part access control hardware does not have at all.

Open to everyone, or only to permits

A gate can be set to open for any recognised vehicle and simply log what passed, or to open only for plates that currently hold a valid permit. The same cameras support both, so a site can start by recording traffic and tighten to permit-only later without new hardware.

Blacklisted plates

A plate can be blocked outright. The barrier stays down whatever else the vehicle holds, and the event is logged and can raise a notification to the administrator rather than quietly failing.

Unpaid sessions and open invoices

The exit is a decision point too. Where a vehicle has an unpaid session or an outstanding invoice, the gate can be held, or opened while flagging the debt to the operator — whichever suits the site. The record the gate uses is the same one the billing runs on.

Overflow: how many are already inside

A tenant registers three vehicles but holds two spaces. When the third arrives while the other two are parked, you decide: hold the barrier, admit it and charge for the extra space, or open and notify the administrator. Access control that only checks a list cannot do this, because it has no concept of how many of a group are currently inside.

Sessions, charging and invoicing

With Autlo Park or Autlo Operator on top of the gate, a recognised plate opens a paid session on arrival and closes it on exit — no ticket, no barcode. The session is priced on the site's tariff and either charged to the driver or rolled into a monthly invoice for a tenant or employer, from the same records the gate used.

Sent to your own system

The whole event — plate, result, reason and timestamp — can be pushed to a third-party system over REST or webhook, so a security, HR or facility database stays the single source of truth.

Where ANPR reaches its limits

If you can read the plate, the software can read it too — and if a human cannot, neither can we. That is the real limit of the technology, and the most useful thing to know before planning a site. These are frames from live Autlo sites, each a failure at step one that no later step can recover. None is a reason to avoid ANPR; each just has a different answer.

Edge case sun glare 1 36e247d731

Sun

Low sun at the wrong angle washes the plate to flat white, or throws the vehicle into silhouette.

What happens: this is placement rather than software. We look at the camera's own frames across a full day before recommending an angle, and a second camera facing the other way usually removes it entirely.

Edge case snow covered plate 28be094de4

Snow

Snow and road salt packed across the plate after a winter drive.

What happens: front and back cameras keep the site running, because salt rarely covers both plates equally. Where it does, the winter fallback agreed at setup takes over — which is why it is worth agreeing one.

Edge case plate blocked 5976969f91

The plate is blocked

A bike rack, a tow bar or a trailer physically covering the plate. No camera reads what is not visible.

What happens: a second camera at the other end of the vehicle solves most of these, since a rack rarely covers both plates. Beyond that it is the app or the helpdesk.

Edge case water on lens 910161eec1

Water on the lens

Rain sitting on the glass breaks the focus and scatters light from headlamps across the frame.

What happens: Autlo keeps evaluating for as long as the vehicle is visible, so a later frame usually succeeds where the first failed. If none do, the driver opens the gate from the app without calling anyone.

Plate 146 mkc 48790bd67c

A bug in the wrong place

Now and then an insect lands on the plate in exactly the wrong place and changes a character. We have seen a 5 read as a 6, and a P read as an R.

What happens: the bug changes the shape before the camera sees it, so the read is confidently wrong rather than uncertain. It is simply bad luck, and the fix is a second read from the camera at the other end of the vehicle.

Edge case not a vehicle a11fdc67be

Not a vehicle at all

Occasionally localisation finds text where there is no plate. The lettering on this security guard's jacket was read as a number plate.

What happens: lane masking and direction rules filter nearly all of these out, and a read matching no permit opens nothing. It lands in the log, not at the barrier.

What happens when a read fails

A site should never depend on a single successful read. There are four layers behind it, and they are worth setting up on day one rather than after the first bad morning. The whole sequence completes within a couple of seconds of the vehicle arriving, recognition quality is measured per camera rather than assumed, and if a recognition server fails another machine takes over automatically within a few seconds.

Constant evaluation

If a read fails once, the driver usually waits. Autlo keeps evaluating for as long as the vehicle is visible — in a gated area, until the gate opens.

Several cameras

Two sides, or front and back. Front and back keeps working when snow covers the front plate, and it catches bikes, mopeds and trailers.

App backup

Drivers open the gate from the Autlo app whenever it is needed, without calling anyone.

Helpdesk and back office

Remote opening from the helpdesk and back office as a final fallback.

Number plate data and GDPR

Hosted where you need it. All Autlo servers are in the EU and GDPR compliant, with the main server in the Netherlands. Where data needs to stay closer to home, your cloud can be set up on a server in your own country or region.

Or entirely on your own premises. The recognition server can sit on site, in Autlo's office, or in yours, including a fully local installation. Images and recognition results are deleted automatically after four months.

Trusted by customers around the world

  • Merko edf2f3ef01
  • 8999 swedbank logo default 1 bd0f872674
  • Screenshot 2026 01 30 at 13 46 32 7eb2b4aea3
  • 15minlogo 064ec658ad
  • Chroma gif pagespeed ce T1 Gh KZR 2w E 9be39af8bd
  • Avalikud teenused logo 615877f999

Common questions

How does ANPR work?

ANPR works by capturing an image of a vehicle's number plate and turning it into text that software can act on. The standard description has six steps: image capture, preprocessing, plate localisation, character segmentation, optical character recognition, and a database check that decides whether the gate opens.

In practice there are seven. Between capture and preprocessing sits connecting to the camera — either over the camera's own API, where it already recognises plates, or by reading its H.264 video stream. And between recognition and the database check sits correction: matching the read against alternate readings and applying any manual override set for that vehicle. Most systems have no correction step, which is why a plate they read badly today they will still read badly next year.

What are the steps of automatic number plate recognition?

The six standard steps are image capture, preprocessing, plate localisation, character segmentation, optical character recognition and database check and action.

Autlo describes seven, adding connecting to the camera as step two — the camera's own API or its H.264 stream — and correction as step six, applied before the database check so that an ambiguous or misread plate still matches the right permit.

Does ANPR work with number plates from other countries?

Yes. Plate formats are national — Estonia runs three digits then three letters, Sweden, Finland and Lithuania run three letters then three digits, and many countries use neither. Autlo sets the segmentation and recognition rules for the standard in use at your site and for the neighbouring countries whose vehicles actually arrive there, so cross-border traffic reads as reliably as local traffic instead of being treated as an anomaly.

One vehicle is misread almost every day. Can we fix it without replacing the plate?

Yes. Set a manual rule for that vehicle in Autlo: the rule links the misread to the correct permit, and the override is applied before the access decision is made. From the next arrival the gate opens normally, the driver keeps their plate, and nobody touches the camera.

This is something recognition running inside a camera cannot do — it goes straight from its best guess to the database check, so there is nowhere to record a correction. A single daily commuter with an awkward plate is the most common reason a site feels unreliable, and it is a one-minute fix when the logic sits in software.

Can the gate stay closed for a blacklisted vehicle?

Yes. A plate can be blocked outright, and the barrier stays down whatever else that vehicle holds. The event is logged and can raise a notification to the administrator rather than simply failing quietly.

Can we stop a vehicle leaving if it has an unpaid session or invoice?

The exit is a decision point in the same way the entrance is. Where a vehicle has an unpaid session or an outstanding invoice, the gate can be held, or opened while the debt is flagged to the operator — whichever the site prefers. Because the gate and the billing run on the same records, there is no reconciliation step between the two.

Can we limit how many of a tenant's vehicles are parked at the same time?

Yes — this is overflow management, and it has been running on Autlo sites for years. A tenant can hold more registered plates than they have spaces, and you decide what happens when one too many arrives: hold the barrier, admit the vehicle and charge for the extra space, or open normally and notify the administrator.

Access control that only checks whether a plate is on a list cannot do this, because it has no concept of how many vehicles from a group are currently inside. See office parking management.

How accurate is ANPR number plate recognition?

Autlo's engine is built to resolve anything that is physically readable. Plate-format rules for the local and neighbouring standards, alternate-plate matching and continuous re-evaluation while the vehicle is still in view mean that a plate a person could read from the camera image is a plate the system resolves — including the personalised, curved, two-row and screw-obscured plates that defeat a raw OCR read on their own. Where a specific vehicle still fails, a manual override rule closes the gap permanently.

What limits accuracy at a given site is physical rather than algorithmic: low sun washing the plate to flat white, heavy snow or road salt covering the characters, water on the lens, or a plate hidden behind a bike rack. Those conditions defeat the human eye as well, and they fail at step one, before any software is involved. Camera angle, mounting height and lighting are what actually move the number, which is why Autlo advises on all three before installation rather than after.

Read quality is measured continuously per camera rather than estimated, so the figure for your site is something we can show you from your own gates instead of quoting an average from somebody else's.

Can we use the ANPR cameras we already have?

In almost all cases, yes. There are two routes. Where a camera performs its own plate recognition, Autlo connects over the camera's API and works from those results — this runs in production today with Hikvision and Tattile. Where a camera has no recognition of its own, Autlo reads its H.264 video stream over RTSP and runs steps three to five itself on a minicomputer at the site, which works with any camera that outputs a standard stream, and with older analogue cameras through an encoder. If your hardware has an open API and is not listed, contact us and we will look at adding it.

Is it better to use the camera's built-in ANPR or a separate recognition engine?

Either works, and Autlo runs production sites on both. Where a camera's own recognition is accurate, there is no benefit to reading the image a second time — Autlo takes the camera's result over its API and applies correction, access rules, overflow management and billing on top. Where the camera has no recognition, or its results are not dependable enough to build access rules on, the Autlo engine reads the video stream itself.

The important point is that the choice only affects steps three to five. Correction, the access decision and everything commercial sit in software either way, which is the part a camera cannot provide on its own.

Do we need a specific camera brand for ANPR?

No. Autlo is not tied to one manufacturer. The requirement is either an open API or a standard H.264 stream, both of which are common across IP camera hardware. In practice, mounting height, angle and lighting affect recognition quality far more than the choice of brand.

Can I whitelist specific number plates so only approved vehicles get in?

Yes — this is step seven, and it is the most common way ANPR access control is set up. Plates are held against permits, so the gate opens only for vehicles that currently hold valid access. Lists can be maintained in the Autlo back office, or pushed in from your own system over the API so that an HR or tenant database stays the single source of truth. See the ANPR parking management system for how this works day to day.

Can tenants or staff manage their own parking spaces?

Yes. Tenants or departments can be given a group with a fixed number of permits and left to assign those spaces themselves, which removes the administrator from the middle of every change of car or new starter. The gate then opens only for vehicles in a group that still has a free space. This is covered on office parking management.

Can a recognised plate start a paid parking session automatically?

Yes. With Autlo Park or Autlo Operator running on top of the gate, the plate is the identifier: the session opens when the vehicle is recognised on arrival and closes on exit, with no ticket and nothing for the driver to do. The session is then priced on the site's tariff and either charged to the driver or rolled into a monthly invoice for a tenant or employer, from the same records the gate used.

Can visitors and contractors be given temporary access?

Yes. Access can be granted for a defined period rather than permanently, and time windows and contractor permissions can be set from your own system over the API. Visitor and short-term permits sit alongside staff and monthly permits in the same back office.

Can ANPR results be sent into our own system?

Yes. Session, plate and payment data can be pushed to a third-party system over REST or webhook, including an access granted or denied event carrying the plate, the result, the reason and a timestamp, which is what most security and audit logs need. See API integrations.

Can the same cameras also handle EV charging or road tolling?

Yes. Plate recognition is one module on a single platform, so the same gate and the same recognition can drive EV charging sessions and billing, or barrier-free toll collection, without a second system. See charge point operator software and the toll road payment system.

What happens when a plate is covered in snow or dirt?

Recognition fails at step one, and no later step can recover what the camera never saw. That is why sites are designed with a fallback: front and back cameras so a clean rear plate still works, the app for drivers to open the gate themselves, and remote opening from the helpdesk. Before winter it is worth deciding explicitly which fallback applies during snow.

Does it work at night?

Yes, with adequate light. Night IR capability is required for 24/7 operation, and a simple LED bar above the lane makes a clear difference after dark for very little cost at installation. A site that reads well by day and poorly at night almost always has a lighting problem rather than a software one.

What if a camera or the recognition server fails?

Every camera is monitored for availability. If one recognition server fails, another machine takes over automatically within a few seconds, and the gate can still be opened from the app or by the helpdesk in the meantime.

Does it detect motorcycles, mopeds and trailers?

A second camera covering the rear of the vehicle is what makes this reliable, since many of these carry a plate only at the back.

Where is plate data stored and for how long?

All Autlo servers are in the EU and GDPR compliant, with the main server in the Netherlands. Where data needs to stay closer to home, your cloud can be set up on a server in your own country or region.

The recognition server itself can sit on site, in Autlo's office, or in yours, including a fully local installation on your own hardware. Images and recognition results are deleted automatically after four months.

Hikvision, Axis, Dahua, Bosch, Tattile, Milesight and Survision are trademarks of their respective owners. Autlo is an independent software vendor and is not affiliated with, endorsed by, or a certified partner of any camera manufacturer. These names and logos are listed only to describe hardware Autlo is known to work with.

Planning a site?

If you are specifying cameras, deciding where to mount them, or working out what happens on the days recognition fails, we are happy to go through it with you before anything is ordered.

Questions about plate recognition?

Tell us about the site — the gates, the cameras you have, and what should happen when a read fails. We will tell you what is realistic.

Book a Demo