Skip to content

v1.3.2 — Phase 4: verified examples + Sim(3) autodiff fix

Latest

Choose a tag to compare

@Archerkattri Archerkattri released this 11 Jun 13:45
· 8 commits to main since this release

What's new

Bug fixes

  • Sim(3) autodiff Jacobian graph accumulation (solvers/lm.py): detach T before passing it into the jacrev closure. Without this, autograd accumulated a growing computation graph across LM iterations, causing quadratic memory use and eventual OOM on large inputs.

Tests

  • tests/test_solver.py: new regression test test_sim3_autodiff_jacobian_detaches_T gates the fix against future regressions.

Examples

  • examples/merge_demo.py restructured: the synthetic mode now uses a full-object A and B = Sim(3)(A) instead of mismatched partial crops. This matches the realistic "two complete reconstructions in different frames" scenario and produces meaningful metrics (rot 0.6°, 68.7x Chamfer improvement, overlap 0.199 → 1.000).

Validation

  • pytest: 152/152 passed
  • examples/validate_recovery.py on GPU: 36/36 cells, 100% success rate, 172s, 0.15 GiB peak