nx_photogram_hbench.nx
buildroot/runtime/nx_photogram_hbench.nx
about
nx_photogram_hbench.nx -- run the Nishi front end on a REAL photograph pair and emit its matches.
This organ deliberately does NOT score itself. It reads two images, detects/describes/matches, and
prints the matched coordinate pairs. The ground-truth homography is never opened here and the
correctness rule is never implemented here. A single external scorer grades this organ, OpenCV SIFT
and OpenCV ORB from identical output formats, so all three are judged by exactly the same code
against exactly the same ground truth. Scoring yourself with your own scorer is the oldest way to
win a benchmark that means nothing.
Usage: nx_photogram_hbench <img1.pgm|ppm> <img2.pgm|ppm> [maxkp]
Output: one "M <x1> <y1> <x2> <y2>" line per match, then a "SUMMARY ..." line.
license_tier: ORIGINAL expect_exit: 0
dependencies 1 imports · 0 importers
imports: nx_photogram_front.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 14 | const HB_MAGIC_262144: i64 = 262144 |
| 16 | const HB_MAXBYTES: i64 = 8388608 |
| 17 | const HB_DEFAULT_KP: i64 = 500 |
functions
| 19 | func hw(s: *u8) -> i64 called by 1: main |
| 26 | func hn(v: i64) -> i64 called by 1: main |
| 43 | func hb_isdigit(c: i64) -> i64 called by 1: hb_next_int |
| 48 | func hb_isspace(c: i64) -> i64 called by 1: hb_next_int |
| 63 | func hb_next_int(buf: *u8, n: i64, pos: *i64) -> i64 |
| 98 | func hb_load_pnm(path: *u8, gray: *u8, wh: *i64) -> i64 |
| 150 | func main(argc: i64, argv: *i64) -> i64 |