One ordinary photo at intake. One ordinary photo on the way out. No lights, no rig, no tag on the card. Every card and every score on this page is real: public scans from the Library of Congress, scored by the actual matcher.
Twelve cards enrolled at intake. Seven are copies of the same Jack Glasscock card from one 1887 print run. Pick a scenario, or click any card to read it against the vault.
Pick a scenario on the left.
Peak-to-sidelobe ratio. Impostors sit near 5. The threshold is 25, twice the worst impostor ever seen.
We benchmarked on 762 public scans of cards from 1887 to 1914. The collection turned out to contain two single cards the Library had scanned twice and catalogued as two items. We did not know. The matcher found them: identical border wear, identical blemishes, two different files.

Guy Hecker, catalogue items 0433 and 0434. Two independent scans by the Library's own digitisation, years apart. Score 150. Every other pair of this kind of material scored under 11.5.

All 1,824 comparisons. Red and grey are real pairs of different cards. Green lines are the two real same-card pairs. Blue outlines are simulated re-photographs, shown as the ceiling they are.
| Population | Real on both sides? | Pairs | Accepted at 25 |
|---|---|---|---|
| Two different copies of the same card, same print run | Yes | 822 | 0 |
| Two unrelated cards | Yes | 400 | 0 |
| One card the Library catalogued twice | Yes | 2 | 2 |
| Simulated phone re-photograph of the same card | Upper bound | 200 | 156 |
| Simulated bad re-photograph: dark, tilted, blurred | Upper bound | 200 | 55, the rest sent for a retake |
The thing a person uses to recognise a card is the thing every copy shares. So the matcher removes it on purpose.
The printed pattern is the strongest signal in the frame, which makes it a perfect alignment target and a worthless identity signal. It lines the two photos up, then it is subtracted.
Paper fibre, where each ink dot landed, a century of wear. What is left after subtraction is correlated. A real match is a sharp peak; a different copy is flat noise.
Match, no match, or retake the photo. A tool that cannot tell "different card" from "bad photo" turns every blurry picture into evidence of fraud. This one says so and asks for another shot.
Two Python dependencies, no trained model, no network call. A registry is one file. The whole benchmark reruns with one command.