code wiki / (root) / nx_recon3d.nx

nx_recon3d.nx

buildroot/runtime/nx_recon3d.nx

7878 B173 linesdepth 2pulls 2 transitivereach 21 importersview sourcekind library
docsdependenciesstructsconstsfunctions

about

nx_recon3d.nx -- MULTI-VIEW TRIANGULATION, the classical MVS core of photo->3D reconstruction (cadtwin P1, the "photograph -> 3D" capture half). This is the CLASSICAL / no-trained-model path (Hartley-Zisserman multi-view geometry / COLMAP triangulation) -- the part a SOVEREIGN no-float stack CAN build; the 2025-26 feed-forward SOTA (DUSt3R/MASt3R/VGGT) is neural = trained-model-bound (our named gap). Benchmarked by CHAMFER DISTANCE (the DTU metric the field scores reconstruction on): synthesize N camera views of a KNOWN point cloud -> triangulate each point back -> integer Chamfer vs ground truth. Deterministic, no dataset dependency, no float. Composes toward the full pipeline (feature match nx_features + pose est = later rungs). license_tier: ORIGINAL

dependencies 1 imports · 4 importers

nx_syscalls.nx nx_recon3d.nx nx_epose.nx nx_essential3d.nx nx_recon3d_gate.nx nx_step_tess2.nx

imports: nx_syscalls.nx

imported by: nx_epose.nxnx_essential3d.nxnx_recon3d_gate.nxnx_step_tess2.nx

structs

none

consts

11const R3_Q: i64 = 16384 // Q14 one
12const R3_WORLDUP_Y: i64 = 16384 // world up = (0,1,0)

functions

14func r3_isqrt(n: i64) -> i64
called by 2: r3_normalizer3_dist
22func r3_dotq(ax: i64, ay: i64, az: i64, bx: i64, by: i64, bz: i64) -> i64 { return (ax * bx + ay * by + az * bz) / R3_Q }
called by 1: r3_midpoint
24func r3_dotc(ax: i64, ay: i64, az: i64, bx: i64, by: i64, bz: i64) -> i64 { return (ax * bx + ay * by + az * bz) / R3_Q }
26func r3_cross(ax: i64, ay: i64, az: i64, bx: i64, by: i64, bz: i64, out3: *i64) -> i64
called by 1: r3_lookat
33func r3_normalize(x: i64, y: i64, z: i64, out3: *i64) -> i64
44func r3_lookat(cx: i64, cy: i64, cz: i64, tx: i64, ty: i64, tz: i64, basis: *i64) -> i64
60func r3_project(cx: i64, cy: i64, cz: i64, basis: *i64, f: i64, x: i64, y: i64, z: i64, out2: *i64) -> i64
called by 1: main calls 1: r3_dotc
73func r3_ray(basis: *i64, f: i64, u: i64, v: i64, out3: *i64) -> i64
called by 1: main calls 1: r3_normalize
84func r3_midpoint(c1x: i64, c1y: i64, c1z: i64, d1x: i64, d1y: i64, d1z: i64,
111func r3_triangulate_n(cx: *i64, cy: *i64, cz: *i64, dx: *i64, dy: *i64, dz: *i64, ncam: i64, out3: *i64) -> i64
called by 1: main calls 2: sys_mmapr3_midpoint
135func r3_dist(ax: i64, ay: i64, az: i64, bx: i64, by: i64, bz: i64) -> i64
called by 3: r3_chamferrg_raydistmain calls 1: r3_isqrt
143func r3_chamfer(a: *i64, na: i64, b: *i64, nb: i64) -> i64
called by 1: main calls 1: r3_dist