OpenSfM icon indicating copy to clipboard operation
OpenSfM copied to clipboard

Understanding OpenSfm Coordinate systems

Open khaledmohamed00 opened this issue 1 year ago • 0 comments

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.rotation and shot.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

khaledmohamed00 avatar May 12 '23 18:05 khaledmohamed00