cv2 4.14.0
1) port of ORIGINAL vs cv2 4.14.0 over 3208 inputs: max |dr| = 8.88e-16, max |dJ| = 1.43e-06
2) band inputs (208): worst rotation error  cv2 = 2.20e-05 rad,  patched port = 1.51e-11 rad
   outside the band (3000 random, test generator): max |r_patched - r_cv2| = 1.13e-13
   jacobian along tangent directions, worst relative error: cv2 = 1.00e+00, patched port = 8.88e-16
3) regression test vs cv2 (unpatched): 42 failed checks
      ('value', (np.float64(9e-06), np.float64(0.0), np.float64(0.0)), np.float64(9e-06))
      ('jacobian', (np.float64(9e-06), np.float64(0.0), np.float64(0.0)), np.float64(inf))
      ('jacobian', (np.float64(9e-06), np.float64(0.0), np.float64(0.0)), np.float64(inf))
      ('jacobian', (np.float64(9e-06), np.float64(0.0), np.float64(0.0)), np.float64(inf))
      ('jacobian', (np.float64(9e-06), np.float64(0.0), np.float64(0.0)), np.float64(inf))
      ('value', (np.float64(1e-06), np.float64(-2e-06), np.float64(3e-06)), np.float64(3.7416573867739415e-06))
      ('jacobian', (np.float64(1e-06), np.float64(-2e-06), np.float64(3e-06)), np.float64(inf))
      ('jacobian', (np.float64(1e-06), np.float64(-2e-06), np.float64(3e-06)), np.float64(inf))
      ('jacobian', (np.float64(1e-06), np.float64(-2e-06), np.float64(3e-06)), np.float64(inf))
      ('jacobian', (np.float64(1e-06), np.float64(-2e-06), np.float64(3e-06)), np.float64(inf))
      ('value', (np.float64(0.0), np.float64(5e-06), np.float64(-5e-06)), np.float64(7.0710678118654756e-06))
      ('jacobian', (np.float64(0.0), np.float64(5e-06), np.float64(-5e-06)), np.float64(inf))
   regression test vs patched port: 0 failed checks []

=== C++ harness ===
band matrices: 207 (harness says outside band: 0)
worst rotation error of patched C++ vs exact: 9.14e-16 rad
patched C++ vs Python port: max |dr| = 8.88e-16, max |dJ| = 3.33e-16
regression test with patched C++ in the band: 0 failed checks []
/Users/khamit/Documents/pilory/numerical-impact-desk/research/hunt-2026-10-23-pnp/opencv-geometry-files/scripts/t8_validate_patch.py:177: RuntimeWarning: divide by zero encountered in scalar divide
  fails.append(("jacobian", tuple(np.round(r0, 9)), np.linalg.norm(dr - dr_num)/np.linalg.norm(dr_num)))
