Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

OPK Parser exception with DJI image

Open
#1,098 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
30/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
python

Research direction

Download the linked DJI image set and reproduce the issue with ./bin/opensfm reconstruct --algorithm triangulation data/dji. Compare its camera poses and pair selection with the incremental reconstruction and inspect the OPK parsing path referenced by PR #838. Done means identifying and documenting the cause of the inconsistent 90- or 180-degree orientations, with a verified correction.

Written by the indexing model from the issue text.

Description

I try to use opensfm to parse images taken by a DJI drone equipped with RTK

Image

To verify the correctness of the parser, I use https://github.com/mapillary/OpenSfM/pull/838#issuecomment-1212630210 mentioned method directly triangulation and obtains the sparse model and camera pose with poor accuracy.

But I found that, as shown in the above visualization, some images are completely wrong in the parsed orientation, while others are correct.

I used incremental reconstruction to obtain GT and tried to find the difference between the two, but I found that it was difficult to find a pattern. Some orientations differed by 180 degrees, and some differed by 90 degrees. How can I solve this problem?

Here is a set of images I used for testing: https://drive.google.com/file/d/15ETwKP3Hn1MgdJDdNs6-4ae5uH33xV9V/view?usp=drive_link

test method:

  1. Perform an incremental rebuild using opensfm and observe that everything is OK
  2. run ./bin/opensfm reconstruct --algorithm triangulation data/dji, Camera pose error observed

If the camera pose is wrong, then the pairs selection mechanism based on the opk parsing result is wrong, which is a bug for the system.

Can someone help me find the problem?

Dominant language
Python
Stars
3.8k
Forks
898
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from mapillary/OpenSfM

All issues in mapillary/OpenSfM

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.