dust3r icon indicating copy to clipboard operation
dust3r copied to clipboard

Bundle Adjustment Optimization Details

Open Davidyao99 opened this issue 1 year ago • 3 comments

I am looking over the optimization implementation and have some confusion over the PointCloudOptimizer implementation.

For poses, there seems to be a self.im_poses parameter and a self.pw_poses parameter. self.im_poses seems to be the world to cam transformation for each camera. self.pw_poses seems to be the world to cam transformation for each pair of images (which I assume is the same as the world to cam transformation for image1 in each pair since both images are in coordinates of image1?)

If so, why are there 2 sets of camera poses used during the optimization?

Any help in understanding is appreciated! Thanks!

Davidyao99 avatar Apr 19 '24 18:04 Davidyao99

I think self.im_poses is just as the name points, the estimated camera poses for each image in the global coordinate. The self.pw_poses is the estimated transformation of each prediction pair to align with the global estimated point cloud.

ljjTYJR avatar Apr 20 '24 20:04 ljjTYJR

If that is the case, wouldnt the estimated camera pose and estimated transformation be related? If self.pw_poses is the transformation of points in cam1 coordinates of each pair to global coordinates, that means it is the same as the camera pose of cam1?

Davidyao99 avatar Apr 21 '24 20:04 Davidyao99

If that is the case, wouldnt the estimated camera pose and estimated transformation be related? If self.pw_poses is the transformation of points in cam1 coordinates of each pair to global coordinates, that means it is the same as the camera pose of cam1?

Sorry, I did not get what you meant. Pair-wise transformation and image poses are two different things

ljjTYJR avatar Apr 26 '24 09:04 ljjTYJR