Skip to content

Fix projected reconstruction export to use a consistent local->proj transform#48

Open
lupionpe wants to merge 1 commit intoOpenDroneMap:ODMfrom
lupionpe:codex/opensfm-consistent-proj-transform
Open

Fix projected reconstruction export to use a consistent local->proj transform#48
lupionpe wants to merge 1 commit intoOpenDroneMap:ODMfrom
lupionpe:codex/opensfm-consistent-proj-transform

Conversation

@lupionpe
Copy link
Copy Markdown

Summary

  • port Yann Noutary's projected georeferencing fix from YanNoun/OpenSfM@446a4b06624f38f7dc9922cf737fd3e806e75636 onto OpenDroneMap/OpenSfM:ODM
  • replace the projected reconstruction export path with the consistent local-to-projected transform/Jacobian logic while keeping affine exports intact
  • keep projection parsing consistent with the new transformer flow and add focused tests for the projection helpers

Attribution

The core solution here was proposed and implemented by Yann Noutary in the commit linked above. This PR ports that fix onto the current ODM branch and packages it for review.

I have some basic coding experience, but most of the porting / validation / integration work for this contribution was done with AI (Codex).

Context

Related discussions:

Validation

My conclusion after downstream validation is that this does seem to solve the root cause.

I ran two real tests on two different areas with roughly:

  • ~1,600,000 m² survey area
  • ~2000 images
  • gcp.txt + geo.txt
  • RTK on the drone (Mavic 3E)

In both cases the observed precision improved, as expected.

Checks I could run locally here:

  • python3 -m py_compile opensfm/geo.py opensfm/io.py opensfm/actions/export_geocoords.py opensfm/test/test_geo.py opensfm/test/test_io.py
  • downstream end-to-end validation in a custom ODM / NodeODM deployment on Debian 12
  • native OpenSfM unit tests are not runnable in this shell because the local environment here does not have the compiled OpenSfM extensions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant