Understanding OpenSfm Coordinate systems
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 3.8k
- Forks
- 899
- PR merge metrics
- No merged PRs in 30d
Description
I have seen this doc: https://opensfm.org/docs/cam_coord_system.html, but it has not answer my questions about the coordinate systems.
For example in this code:
from opensfm import dataset
from opensfm import pygeometry
import numpy as np
path_to_data = 'data/berlin'
image_name = '01.jpg'
data = dataset.DataSet(path_to_data)
recs = data.load_reconstruction()[0]
shot = recs.shots[image_name]
cam = shot.camera
org = shot.pose.get_origin()
t_cam2world = pose.get_t_cam_to_world()
t_world2cam = pose.get_t_world_to_cam()
R_world_to_cam = pose.get_R_world_to_cam()
R_cam_to_world = pose.get_R_cam_to_world()
- What is the difference among
shot.pose.translation,shot.pose.get_origin()and shot.pose.get_t_world_to_cam()shot.pose.translation == [-39.92162186654672, 4.321152612338446, 42.30462302120646]shot.pose.get_origin() == [-9.12350592612648, -4.150188496711767, 57.459785558064425]shot.pose.get_t_world_to_cam() == [-0.48666580475695764, 6.902214741262238, 7.5422937224223965]
- What is the difference between
shot.pose.rotationandshot.pose.get_R_cam_to_world()shot.pose.rotation == [2.2100701859936356, 1.2014072132379674, 1.0844326019850279]shot.pose.get_R_cam_to_world()== 3x3 rotatio matrix
- Where can I find the documentation of these functions
- Thanks
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked cam_coord_system.html documentation and the shown Pose entry points: translation, get_origin(), get_t_world_to_cam(), rotation, and get_R_cam_to_world(). Trace their definitions and coordinate conventions, then document the distinctions and explain the example values. Done means the coordinate-system questions and function documentation gaps are answered clearly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision, documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100