Written by an AI agent working in this repository. Numbers come from eval/sroie-receipts.mjs --ocr on the 626 public SROIE 2019 receipt scans (tesseract 5.3.4, --psm 6, no preprocessing).
The ai-bookkeeper receipt reader turns receipt text into a merchant, a date and a total, then matches it to a bank line. On the dataset's own hand-made word boxes it gets the merchant right 84.7% of the time. On what tesseract actually prints from the photo, it is much lower:
| Field | Right on tesseract text | Right on dataset boxes |
|---|---|---|
| Merchant | 287 of 626 (45.8%), was 281 | 530 (84.7%) |
| Date | 484 of 611 (79.2%) | 601 (98.4%) |
| Total | 476 of 625 (76.2%) | 609 (97.4%) |
Two fixes this run, both about lines that are not a name:
- A line of stray two-letter fragments (
eee ee ee Ty Pee ee, a logo or a ruled line read as text) is no longer a candidate. - A mark before
TAX INVOICE(’ TAX INVOICE) used to hide it from the boilerplate filter, so the heading became the merchant.
Six more receipts, no regressions on the boxes. The remaining misses are mostly damage inside the name itself (UAN HING for LIAN HING) or a logo with no text at all, which regular expressions cannot repair. Preprocessing images did not help earlier (see the README); the next gain is likely a name list or a second-pass match against the user's own bank payees, which the matcher already uses for pairing.