ORB_SLAM3 icon indicating copy to clipboard operation
ORB_SLAM3 copied to clipboard

Extending to different camera models

Open Trzyq0712 opened this issue 1 year ago • 2 comments

I was trying to extend ORB_SLAM3 to use a different camera model - Omni. However, I have faced a few issues while trying to implement.

  • It is not really explained what some of the functions should do. Especially the following functions: epipolarConstrain, mathAndtriangulate, reconstructWithTwoViews.
  • When I guessed what they should do, or just hardcoded them to return true or false, the examples I had would not really run (monocular) - they would start but pretty much fail to do any matches between frames.
  • When I plugged the Omni model params into KannalaBrandt model, it wouldn't be accuarate but at least it would find matches.
  • I then snooped around the code more and found references to the specific camera models (Pinhole, KannalaBrandt). This makes the code not really modular as the rest of the code stores enums of the camera type, or refers directly to a specific type (src/Frame.cc, src/Setting.cc, src/Tracking.cc, src/Atlas.cc). I now need to understand what the code does in those places (very hard as there is barely any documentation) in order to make my camera model work.

Help would be greatly appreciated.

Trzyq0712 avatar Oct 15 '24 15:10 Trzyq0712

Hello @Trzyq0712 ! Just wanted to know if you have managed to extend ORB_SLAM3 to the camera model you mentioned, as I was looking into different SLAMs that I can make use of using a catadioptric camera, and was therefore curious if you found a solution on how to extend ORB_SLAM3 to use one.

Thank you!

vaibhav2114 avatar Jun 16 '25 11:06 vaibhav2114

@vaibhav2114 could you share a rosbag with your calibrated parameters?

arjunskumar avatar Jun 18 '25 02:06 arjunskumar