Auto Secure LoginPlateScan

Research programme · not released

A plate record that never leaves your property.

Plate reading that stays on your property, keeps nothing for long, and never accuses anyone on its own.

Research no commercial use by design

Read this before anything else

PlateScan is not released. There is no download, no installer and no public address, and no one outside the team is running it. It reads still images and recorded clips that you supply, on a computer you own. Live camera capture is not switched on in this build. Every accuracy figure below is an internal measurement on a small set, and none of it is a production accuracy claim.

What it does

Four answers, and no fifth one where it guesses

ASL PlateScan reads license plates from pictures and recorded clips that you supply, on a computer you own. You point it at a still image or a video file from your own camera, tell it which camera and which site the footage came from, and it finds the plates in the frame, straightens them out, reads the characters, and gives you one of exactly four answers for each vehicle: a match against a watch list you loaded, a clear no-match, needs review, or unreadable. There is no fifth answer where it hands you its best guess. If the evidence is thin - a single blurry frame, two characters that could each be one of two things, a read the system is not confident in - it says so and puts the case in front of a person. A match is the hardest thing in the system to reach, on purpose. It requires all of the following at once: the plate has to appear on a watch list that was loaded with a signed, written reason and a site scope and an expiry date; the same reading has to hold across at least three separate video frames; those frames have to agree by a super-majority (two thirds); the confidence has to clear a high bar; and no competing reading can be present in more than a quarter of the frames, which is how the system notices that two vehicles crossed paths and it may have blended them. Miss any one of those and the case drops to review rather than firing an alert. That gate is deliberately tight rather than generous: on the frozen generated evaluation set every automatic match it made was correct, and it made an automatic match for fewer than a quarter of the watch-list vehicles present - the rest went to a human. Nothing is kept until a person says so. Results land in a review console that runs on your own machine, in English or Spanish, showing numbered detections with a cropped picture of the plate - never the full frame, so the car, the driver and the house behind them are not on screen. You can filter by camera, by result, by review status, by date window or by part of a plate. A reviewer confirms or rejects each one. Confirming is what creates the stored record; rejecting writes only the fact of the rejection into the log, with no plate text kept. Stored records expire after 24 hours by default, deleted by a job you run and can check, and the deletion itself is written into the log - so the record of what was deleted survives the deletion. What is stored is deliberately thin. Camera and site names are stored only as salted hashes, and the plate itself is encrypted at rest. The spreadsheet and data-file exports you can pull out carry the result, the normalized plate where policy permits it, a coarse confidence band, the camera alias, the capture time and window, how many frames backed the read, an ambiguity flag, the review status and a source reference. They deliberately exclude any imagery, precise location, detector coordinates, raw confidence numbers and the reader's rejected alternatives. Everything the system does is written to a tamper-evident log you can re-verify with a single command; if any entry were edited, deleted or reordered, the check fails. Individual results can be sealed into a short-lived receipt bound to the audience it was issued for, which someone else can verify without you handing over any imagery. The decision thresholds live in one versioned place with hard floors underneath them and ceilings above the ones where raising the number would weaken the gate - and that check runs inside every single decision, not just at startup. An attempt to quietly lower a threshold to make more matches appear raises an error and refuses to run. There is no automatic report to anyone, no automatic gate denial, no accusation. The software's job ends at putting a well-evidenced candidate in front of a person. This is a research program, not a released product, and the numbers behind it are published in full - including the failures. The reading engine handles standard plates well from a clean, tight picture; the measured wall today is finding and cropping the plate tightly in a cluttered real-world scene, which caps end-to-end accuracy at about one exact read in five on real photographs, and that ceiling held across all four reading engines tested rather than being a property of any one of them. Support for six families of camera hardware is scaffolded, with a lens calculator that tells you whether a given camera at a given distance will produce a readable plate at all - but nothing connects to a live camera by default, live capture needs two independent authorizations, and this build deliberately ships no command to run a live feed. The program stops short of live deployment and live alerting until it earns the right to go further.

How it decides

What the software will and will not do on its own

Each of these is a rule in the code, not a setting someone remembers to switch on.

01

Four answers, and no guessing

Every vehicle gets exactly one of four results: match, no match, needs review, or unreadable. There is no path where thin evidence turns into a plate string presented as fact. If the picture is too poor, or two characters are genuinely ambiguous, or confidence is low, the case goes to a person instead of into a report.

02

A match has to earn it

An automatic match needs a watch-list hit, the same reading across at least three separate frames, two-thirds agreement between them, and high confidence. If a competing reading shows up in more than a quarter of the frames, the system assumes it may have blended two vehicles and steps back to review. The trade is deliberate: on the frozen generated set every automatic match was correct, and it only fired for under a quarter of the watch-list vehicles present.

03

A person confirms before anything is kept

The software never quietly builds a history. A reviewer looks at the cropped plate and confirms or rejects it, and confirming is the act that writes the stored record. A rejection appends only the fact that a candidate was rejected - no plate text is kept - so the thing you decided was not worth keeping is not kept.

04

Nothing happens to a driver automatically

There is no automatic report to law enforcement, no automatic gate denial, no automatic notice, no automatic accusation. This is a written operating rule, not a setting. The software's output is a candidate for a human to look at, and whatever happens next is a decision a person made and can be asked to explain.

05

A watch list needs a written, signed reason

You cannot just paste plates in. Loading a watch list requires a signed reason and a site scope, cryptographically bound to that exact list of entries, with an expiry. Change the list and the authorization no longer matches. Without a valid, unexpired authorization no match against an authorized target is possible at all.

06

Records expire in 24 hours by default

A stored observation carries its own expiry and is deleted after 24 hours unless a documented policy change says otherwise, and the deletion is itself written into the log. Long retention is the thing that turns a parking record into a movement history of your residents, so the default is short and the clock is enforced by an expiration job you run and can check.

07

Only the plate crop moves through the system

Plates are cropped out as soon as they are found, and it is the crop, not the full frame, that moves through the rest of the system. Full frames are handled in memory and are not written to disk. The system performs no face or person detection of any kind - there is no face model in it - so incidental people in a frame are never analyzed, identified or stored. Keeping people out of frame in the first place remains an operator responsibility, because the software does not blur anything for you.

08

A review console in English and Spanish

The console runs on your own machine and shows numbered detections with the plate crop, the proposed reading, the result, a confidence band, how many frames backed it, and review status. You can filter by camera, by result, by review status, by date window or by part of a plate, and switch the whole interface between English and Spanish.

09

A log that shows if it was touched

Every observation, review decision, expiry and purge is chained into a tamper-evident record, each entry sealing the one before it. A single command re-verifies the whole chain, and any edit, deletion or reordering breaks it visibly. If you ever have to show that a record was not altered after the fact, that is the check you run.

10

Results you can hand to someone else

A result can be sealed into a signed receipt that expires shortly after it is issued and is bound to the audience it was written for. Someone else can verify it without you handing over imagery, coordinates or raw scores. A receipt that is altered, expired, or presented to a different audience fails verification rather than quietly passing.

11

Thresholds cannot be quietly lowered

Every threshold that governs the four outcomes lives in one versioned place with a hard floor beneath it - and a ceiling above the one where a higher number would loosen the gate. The check runs inside every single decision, not only at startup, and a weakened configuration raises an error and refuses to run rather than degrading into a system that produces more matches. Tightening a threshold bumps the recorded policy version, so every stored result traces back to the exact rules in force when it was made.

12

Reads sanity-checked against real state plate formats

Current plate formats for all 50 states and the District of Columbia - 51 jurisdictions - are recorded and can be switched on to sanity-check a finished reading: which states a plate shape could belong to, or, when it matches none, a note that one confusable character might explain it. It is an operating mode you select for US work, not the default, and it is advisory in every mode - it annotates the reviewer's note and never rewrites the reading, because a corrected guess is still a guess.

13

Camera choices you own, connected to nothing by default

Six families of open camera hardware are scaffolded, from a global-shutter unit suited to fast traffic down to bench boards, each with honest notes on what it is good for and what its licensing allows - including one popular retrofit whose streaming firmware is non-commercial and would have to be replaced or licensed first. A lens calculator tells you whether a given camera at a given distance will even produce a readable plate before you buy anything. Live capture is planned, not enabled: it takes two independent authorizations, and this build ships no command to run a live feed.

14

It refuses malformed input rather than choking on it

File size, image dimensions, total pixels, decompression ratio, clip length, frame rate and frame count all have explicit limits, and anything outside them is refused at the door. Camera addresses with credentials embedded in them are rejected outright, and still-image endpoints must be on your own network. These limits are covered by their own tests, including deliberately hostile inputs.

15

The failures are published too

Accuracy is measured on frozen evaluation sets that are never used for tuning, results are broken out by condition rather than averaged into one number, and the write-ups include the changes that were measured and then rejected for making the end result worse - a detector fine-tune that lifted recall but produced crops the reader read worse, and two reader variants that improved clean-crop reading and hurt end-to-end results. When a number was measured on generated images rather than photographs, it says so next to the number.

Why it is built this way

The design decisions a buyer should weigh

  • Nothing leaves the property: the reading, the review and the records all happen on hardware you own, and there is no shared network for reads to be pooled into.
  • Short retention by default (24 hours) instead of the months or years a networked plate reader keeps, with the deletion written into the log.
  • A human confirms before a record exists at all - the software cannot build a movement history on its own.
  • No automatic adverse action of any kind: no report, no denial, no accusation, ever, as a written operating rule rather than a configuration choice.
  • The automatic match path is deliberately hard to reach: on the frozen generated set it made no false alerts against an authorized target, at the cost of only firing automatically for under a quarter of them.
  • Loading a watch list requires a signed reason, a site scope and an expiry bound to the exact entries - so every lookup has a documented purpose attached to it.
  • Thresholds have hard floors and ceilings that cannot be quietly loosened to manufacture more matches, re-checked inside every decision; loosening one is an error, not a setting.
  • It does no face or person recognition at all - there is no face model in the software - and it does not identify vehicle make or model.
  • The reading engine can be swapped, and the program publishes which one wins: the default is now a plate-specific engine under a permissive licence, chosen because it read far more real photographs correctly than the general-purpose alternatives. The program’s own engine, trained on generated material it owns plus real characters under a licence permitting commercial use, ships alongside it and is still used where no other reader is installed. Several widely-used plate datasets and one popular detection model were checked and turned down over their licence terms.
  • Models are local and nothing is fetched at run time - no model download, no call home, no service on the other end.
  • Accuracy is reported against frozen evaluation sets with the caveats attached, and results measured on generated images are never presented as real-world accuracy.
  • Review console in English and Spanish, showing plate crops only - never the full frame with the car, the driver and the house behind them.
What we measured

The numbers, with what they cost attached

Results measured on generated images are labelled as generated. Presenting those as real-world accuracy would be dishonest, so they are not.

0 false alerts against an authorized target across 80 generated video sequences checked against a 240-entry watch list - the first frozen baseline, whose reader produced no automatic matches at all
1.000 precision, 0.242 recall automatic match quality on the second frozen generated set: every automatic match it made was correct, and it fired for under a quarter of the authorized targets present - the rest went to human review
0.29 to 0.773 share of plates located in the same 500 real photographs (528 plates), before and after training the plate finder on a properly licensed set of real images
0.088 to 0.905 precision of plate finding on those same 500 real photographs - roughly ten times better, cutting about 25 mostly-junk boxes per image down to about one clean detection
72 stills, 60 cameras, 0 matches public traffic-camera stills processed in a real-imagery safety run: no matches, no false alerts, nothing written to disk - and only 1 of 202 non-empty reads matched a plausible US plate format, which is why wide overview cameras are not a workable source
0.407 to 0.686 exact plate accuracy on the frozen GENERATED evaluation set once evidence from several video frames is combined instead of trusting one frame - generated imagery, not photographs
0.52 to 0.905 character accuracy on real US plate characters after training on them - measured on composed plate strips (real characters, generated layout), not on photographs
28 of 49 exact plate reads end to end on real photographs, after the reading engine was changed on 2026-09-04 — up from 5 of 25, measured on the same pipeline. Every plate present was found; the reads are what improved
24 hours default life of a stored observation before it is deleted, with the deletion recorded in the log
143 test functions across 21 files (149 executed checks) covering the decision rules, the retention job, the log chain, the receipts, the camera gating and the input limits - full suite re-run and passing on 2026-09-02
51 US jurisdictions - all 50 states plus the District of Columbia - with current plate formats recorded for the reading sanity-check
Who it is for

The situations this is being built around

  • Property managers of apartment blocks, gated drives and mobile-home parks who need a record of vehicle traffic and do not want that record leaving the property
  • Self-storage, truck yard, equipment yard and tow-lot owners who need to know which vehicles came and went overnight
  • Campus, business-park and parking operators who already have cameras and want to search recorded footage by plate instead of scrubbing four hours of it
  • HOA and condo boards being pitched a subscription plate-reader network, who want a version their neighbors can live with
  • Anyone who has been told a plate reader will flag a vehicle automatically, and wants a human decision before anything happens to a driver
  • Buyers and evaluators who want the failure numbers published alongside the wins, and who are willing to look at a program that is still being measured rather than sold
Limits

What it cannot do, and what we have not proven

Published in full. A programme that only reports its wins is not one you can evaluate.

  • It is not released. There is no download, no installer, no public address, and no one outside the team is running it. It stops short of live deployment on purpose.
  • Live camera capture is not turned on in this build. Recorded clips and still images work today; wiring a live feed is a separate, deliberately gated step that has not been taken.
  • End-to-end on real photographs the current figure is 28 exact reads out of 49, up from 5 out of 25 before the reading engine was changed on 2026-09-04. On tightly labelled crops of the same kind of material it is 27 out of 41. Those are internal measurements on a few dozen photographs, not a production accuracy figure, and every one of them was taken in a single state.
  • That real-photograph result comes from 25 hand-labeled photographs of a handful of vehicles in one state, taken with permission. It is an honest measurement, not a field trial, and the sample is far too small to generalize from.
  • The automatic match path is tuned for precision, not coverage. On the frozen generated set it fired for under a quarter of the watch-list vehicles present (recall 0.242) - every one it did fire on was correct, but roughly three in four went to a human instead. It is not a complete catch-net.
  • Many of the strongest accuracy numbers were measured on generated images or on composed plate strips rather than photographs, and generated accuracy is not real-world accuracy. Every such number is labeled as such.
  • In the public traffic-camera safety run, only 1 of 202 non-empty reads matched a plausible current US plate format. Wide overview cameras did not produce usable plate text, and that is the expected result rather than a defect.
  • The plate-finding improvement was measured on a held-out split of the same licensed photograph collection the finder was trained on. It is a real held-out result, not an independent field test on your cameras.
  • The engine that reads real photographs best is a third-party component under a permissive licence, and as of 2026-09-04 it is the default rather than an option. The program’s own trained engine reads generated material well but scored below it on real photographs, so the honest position is that the biggest single gain so far came from choosing a better reader rather than from the program’s own model.
  • Specialty plates - a serial printed over a busy graphic, or a low-contrast plate style - are read badly, and that was true of every reading engine tested, not a fixable setting.
  • Plates have to be reasonably large in the frame. Roughly 100 pixels of plate width is comfortable, 80 is workable, and below 40 the system will not attempt a read at all. Wide-angle overview cameras generally cannot produce that.
  • The reading is tuned for United States plates. Other regions were measured and deliberately dropped from the training focus.
  • The software does no face detection at all. That means it never analyzes or identifies people - and it also means it does not blur anyone for you. Framing cameras so people are not the subject stays your responsibility.
  • The US state-format sanity-check is an operating mode you select, not the default, and it is advisory in every mode - it annotates the reviewer's note and never changes a reading.
  • The security and privacy review is our own work, done in the open with the results published. It is not an independent audit and should not be described as one.
  • Plate-reading laws vary by state and can carry duties around purpose, retention, audit and disclosure. The design assumes those duties exist and is built to make them easy to meet, but nothing here is legal advice or a compliance certificate.
  • There is no pricing, no license terms and no support commitment published yet.
  • The system trusts the camera and site names an operator types in; they are stored scrambled but not independently verified in this build.
Questions

Questions buyers ask

Can I buy this today?

No. PlateScan is a research program, not a released product - there is no download, no installer, no public address, and no one outside the team is running it. What exists is a complete working system on a workstation, with the evaluation numbers published in full, wins and failures together. If a plate reader that stays on your own property is what you need, the useful next step is a conversation about your site and what a real deployment would have to prove first.

How accurate is it, really?

It depends entirely on the picture. On a clean, tight crop of a standard plate it reads correctly. On real photographs taken end to end - find the plate, straighten it, read it - the current measured result is 28 exact reads out of 49, up from 5 out of 25 before the reading engine was changed on 2026-09-04. Every plate present was found; what improved was the reading. That is a few dozen photographs taken in one state, which is an internal measurement and not a production accuracy figure. On the generated evaluation set the numbers are much higher, and we label them as generated, because presenting those as real-world accuracy would be dishonest.

If I put a vehicle on the watch list, will it always alert me?

No, and that is deliberate. The automatic match path is tuned so that when it does fire it is right - on the frozen generated set every automatic match was correct - but it only fired for under a quarter of the watch-list vehicles present. The other three quarters landed in the review queue for a person to look at. A system tuned the other way would catch more and be wrong more often, and being wrong about a vehicle is the expensive failure.

We already have cameras and a vendor. Why would we change?

You may not need to change cameras at all - PlateScan works from recorded clips and still images your existing cameras already produce, though it needs enough pixels across the plate to read one. What changes is where the reads live and what happens to them. Nothing goes to a shared network, records expire in 24 hours by default, a person confirms before anything is kept, and no alert ever goes out on its own. If your current arrangement is comfortable on those four points, you may not need us.

Where does the data go, and who can see it?

It goes nowhere. Reading, review and storage all happen on a machine you own, and there is no service on the other end of a connection to send anything to - the software does not even download its own models at run time. Full frames are not written to disk, camera and site names are stored only as salted hashes, and the plate itself is encrypted at rest. Exports carry the result, the plate where policy permits, a coarse confidence band, the camera alias, the time window, the frame count, an ambiguity flag and the review status - and deliberately exclude imagery, coordinates, raw confidence numbers and the reader's rejected alternatives.

What happens to our records if we stop using it?

They stay on your machine and expire on the schedule you set, with 24 hours as the default. There is no remote service holding your history, so there is nothing to be locked out of and nothing to export before a subscription lapses. Nothing about the design creates a reason to keep paying to keep reading your own records.

What will it cost?

No price is published, because it is not released. The design assumption is that it runs on hardware you already own or buy outright, rather than on a per-camera monthly fee for access to someone else's network. That is a design intention, not a published price - anyone quoting you a number today is guessing.

Could this get us sued, or put us in breach of a plate-reader law?

Plate-reading laws differ by state and commonly turn on purpose, retention, access logging and disclosure. PlateScan is built around those duties: every watch list carries a signed reason and scope, retention is short and enforced, every action is logged in a record that shows if it was altered, and nothing adverse happens to a driver automatically. That makes the obligations easier to meet - it is not legal advice, no compliance with any specific statute is claimed, and you should put it in front of your own counsel before you deploy anything.

What if it reads a plate wrong and someone gets accused?

The system is built so a wrong read cannot become an accusation on its own. A wrong or uncertain read lands in review, not in an alert; the automatic match path needs a watch-list hit plus agreement across at least three separate frames plus two-thirds agreement plus high confidence plus no significant competing reading; and even a match produces nothing more than a candidate for a person to look at. On the frozen generated evaluation set the automatic match path produced no false alerts against an authorized target.

Does it watch people, or just plates?

Just plates. There is no face or person detection anywhere in the software - no face model exists in it - so people in a frame are never analyzed, identified or stored. The plate is cropped out as soon as it is found and the crop, not the full frame, is what moves through the rest of the system and appears in the review console. The flip side of having no face model is that the software cannot blur anyone for you either, so pointing cameras at plates rather than at people stays your job.

Elsewhere on the platform

PlateScan is one of forty-six products

The same standard runs through all of them: fail closed when authorization is uncertain, prove what you claim, and tell the customer where a safeguard stops.