Viewing is open to everyone. Downloading and starring need a GitHub sign-in.
Sign in with GitHub
README.md
v0.1.0-build.85
Latest
Commit ede38f5
Sign in with GitHub to download. Each download is recorded with your GitHub username.
| 1 | # Benchmarks |
| 2 | |
| 3 | `ckey-bench` is the renderer–decoder test harness from specification §5. It generates symbols with the real encoder and native raster, places each one in a cluttered camera frame, degrades the frame, decodes it with the real reader pipeline, and measures: |
| 4 | |
| 5 | - payload recovery; |
| 6 | - corrected Reed–Solomon bytes; |
| 7 | - latency percentiles; |
| 8 | - the smallest side that decodes in at least 90% of trials; |
| 9 | - payload bytes per 1,000 px² at that side; |
| 10 | - false positives on frames that contain no symbol. |
| 11 | |
| 12 | Every symbology gets the same frames. Each symbol's side includes its own quiet zone, so symbols are compared at equal area (spec §5: "recoverable payload per physical area"). |
| 13 | |
| 14 | | File | What it is | |
| 15 | |---|---| |
| 16 | | `ckey-synthetic-quick.md` / `.json` | `ckey-bench --quick` run in the development container: CKey only, since zxing-cpp is not installed there | |
| 17 | | CI artifact `benchmarks` | the same harness built with `-DCKEY_BENCH_ZXING=ON`, adding QR Code (level M) and Data Matrix through zxing-cpp | |
| 18 | |
| 19 | **These are synthetic results, not real-camera measurements.** They are not evidence of a density or speed advantage, and none may be quoted as one (spec §5). Real-device latency needs a target defined by device, image size, profile and percentile (spec §6), measured on a labelled capture corpus. That corpus does not exist yet. |
| 20 | |
| 21 | ```sh |
| 22 | cmake -S . -B build -DCKEY_BENCH_ZXING=ON # needs zxing-cpp (e.g. apt install libzxing-dev) |
| 23 | cmake --build build --target ckey-bench |
| 24 | ./build/ckey-bench --quick --md out.md --json out.json |
| 25 | ``` |