BIOS OCR

Claim. On a real AMI Aptio setup screen, RapidOCR scores 0.98 and Tesseract 0.94 on a fuzzy phrase match.

Method. Three tabs of the BIOS were captured through the Comet using arrow keys only (1920x1080). 30 phrases read off the screenshots by hand are the ground truth. Score is the mean best fuzzy match per frame (1.0 is exact). On the BIOS frames Tesseract 5.5.3 ran on one host and RapidOCR 3.9.2 on another.

Sample size. 3 frames, 30 phrases.

Result.

PreparationTesseractRapidOCRTesseract ms per frame
raw frame0.9260.9801157
automatic (no upscaling here)0.9410.9801081
forced x2 to x40.9400.979about 2000

Upscaling large text doubled the time and gained nothing. Tesseract at the old automatic scale read the "Advanced" tab as ACvYanced (score 20%); with no upscaling it read "Advanced" (95%).

Earlier, on a Linux console login frame (light 13 px text on dark), measured with Tesseract 5.5.0 (5.5.3 was not measured on it), cropping to content and scaling by line height moved Tesseract from 0.756 to 0.982 and RapidOCR from 0.000 to 1.000 on the empty prompt. Two frames only. Remaining errors there come from the bitmap font (a slashed zero read as 9).

Limits.

Raw data. docs/evidence-sources/20260929-kvm-ocr-benchmark.md, docs/evidence-sources/20260929-ocr-engine-benchmark.md, scripts/kvm/benchmark_frames.py and scripts/kvm/ocr_benchmark_results.json, all in this repository. The frames are not published.

Original record: read the Markdown source.