Visual SLAM: Why Bundle Adjust?

Bundle adjustment plays a vital role in feature-based monocular SLAM. In many modern SLAM pipelines, bundle adjustment is performed to estimate the 6DOF camera trajectory and 3D map (3D point cloud) from the input feature tracks. However, two fundamental weaknesses plague SLAM systems based on bundle adjustment. First, the need to carefully initialise bundle adjustment means that all variables, in particular the map, must be estimated as accurately as possible and maintained over time, which makes the overall algorithm cumbersome. Second, since estimating the 3D structure (which requires sufficient baseline) is inherent in bundle adjustment, the SLAM algorithm will encounter difficulties during periods of slow motion or pure rotational motion. We propose a different SLAM optimisation core: instead of bundle adjustment, we conduct rotation averaging to incrementally optimise only camera orientations. Giventhe orientations, we estimate the camera positions and 3D points via a quasi-convex formulation that can be solved efficiently and globally optimally. Our approach not only obviates the need to estimate and maintain the positions and 3D map at keyframe rate (which enables simpler SLAM systems), it is also more capable of handling slow motions or pure rotational motions.

[1]  Hongdong Li,et al.  Efficient Computation of Relative Pose for Multi-camera Systems , 2014, 2014 IEEE Conference on Computer Vision and Pattern Recognition.

[2]  Kenichi Kanatani,et al.  Statistical Optimization for Geometric Fitting: Theoretical Accuracy Bound and High Order Error Analysis , 2008, International Journal of Computer Vision.

[3]  Tae-Hyun Oh,et al.  A Closed-Form Solution to Rotation Estimation for Structure from Small Motion , 2018, IEEE Signal Processing Letters.

[4]  Kenichi Kanatani,et al.  Uncertainty modeling and model selection for geometric inference , 2004, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[5]  Juho Kannala,et al.  DT-SLAM: Deferred Triangulation for Robust SLAM , 2014, 2014 2nd International Conference on 3D Vision.

[6]  Jos F. Sturm,et al.  A Matlab toolbox for optimization over symmetric cones , 1999 .

[7]  Ping Tan,et al.  Pose-Graph Optimization Feature Tracking Current Frame Previous Frame Connect key frames Estimate relative similarity transformation Feature Association Active Key Frame Update Local Map Estimate camera-point constraint Rank-1 factorization Visual Odometry Enough Feature Tracks ? Yes No Multi-stage , 2017 .

[8]  Hauke Strasdat,et al.  Visual SLAM: Why filter? , 2012, Image Vis. Comput..

[9]  Olivier Stasse,et al.  MonoSLAM: Real-Time Single Camera SLAM , 2007, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[10]  I. Stancu-Minasian Nonlinear Fractional Programming , 1997 .

[11]  David Nister,et al.  Bundle Adjustment Rules , 2006 .

[12]  Hongdong Li,et al.  Rotation Averaging , 2013, International Journal of Computer Vision.

[13]  D. Anderson,et al.  Algorithms for minimization without derivatives , 1974 .

[14]  Tat-Jun Chin,et al.  A Fast Resection-Intersection Method for the Known Rotation Problem , 2018, 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition.

[15]  F. Kahl Multiple View Geometry and the -norm , 2005 .

[16]  Anders P. Eriksson,et al.  Rotation Averaging and Strong Duality , 2017, 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition.

[17]  Kenichi Kanatani,et al.  Do we really have to consider covariance matrices for image features? , 2001, Proceedings Eighth IEEE International Conference on Computer Vision. ICCV 2001.

[18]  Jochen Trumpf,et al.  L1 rotation averaging using the Weiszfeld algorithm , 2011, CVPR 2011.

[19]  Peter J. Rousseeuw,et al.  Robust regression and outlier detection , 1987 .

[20]  Anders P. Eriksson,et al.  Efficient optimization for L∞-problems using pseudoconvexity , 2007, 2007 IEEE 11th International Conference on Computer Vision.

[21]  Sei Ikeda,et al.  Visual SLAM algorithms: a survey from 2010 to 2016 , 2017, IPSJ Transactions on Computer Vision and Applications.

[22]  J. M. M. Montiel,et al.  ORB-SLAM: A Versatile and Accurate Monocular SLAM System , 2015, IEEE Transactions on Robotics.

[23]  Robert E. Mahony,et al.  A discrete-time attitude observer on SO(3) for vision and GPS fusion , 2017, 2017 IEEE International Conference on Robotics and Automation (ICRA).

[24]  Wolfram Burgard,et al.  G2o: A general framework for graph optimization , 2011, 2011 IEEE International Conference on Robotics and Automation.

[25]  G. Klein,et al.  Parallel Tracking and Mapping for Small AR Workspaces , 2007, 2007 6th IEEE and ACM International Symposium on Mixed and Augmented Reality.

[26]  M. Gugat A Fast Algorithm for a Class of Generalized Fractional Programs , 1996 .

[27]  Vincent Lepetit,et al.  An Efficient Minimal Solution for Multi-camera Motion , 2015, 2015 IEEE International Conference on Computer Vision (ICCV).

[28]  Frank Dellaert,et al.  Initialization techniques for 3D SLAM: A survey on rotation estimation and its use in pose graph optimization , 2015, 2015 IEEE International Conference on Robotics and Automation (ICRA).

[29]  Takeo Kanade,et al.  Quasiconvex Optimization for Robust Geometric Reconstruction , 2005, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[30]  Richard I. Hartley,et al.  Recovering Camera Motion Using L\infty Minimization , 2006, 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06).

[31]  Steven M. Seitz,et al.  Fast algorithms for L∞ problems in multiview geometry , 2008, 2008 IEEE Conference on Computer Vision and Pattern Recognition.

[32]  Giuseppe Carlo Calafiore,et al.  Lagrangian duality in 3D SLAM: Verification techniques and optimal solutions , 2015, 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[33]  Tobias Höllerer,et al.  Live tracking and mapping from both general and rotation-only camera motion , 2012, 2012 IEEE International Symposium on Mixed and Augmented Reality (ISMAR).

[34]  Frank Dellaert,et al.  iSAM2: Incremental smoothing and mapping using the Bayes tree , 2012, Int. J. Robotics Res..

[35]  Pavel Krsek,et al.  The Trimmed Iterative Closest Point algorithm , 2002, Object recognition supported by user interaction for service robots.

[36]  Dieter Schmalstieg,et al.  Handling pure camera rotation in keyframe-based SLAM , 2013, 2013 IEEE International Symposium on Mixed and Augmented Reality (ISMAR).

[37]  Wolfram Burgard,et al.  Nonlinear Constraint Network Optimization for Efficient Map Learning , 2009, IEEE Transactions on Intelligent Transportation Systems.

[38]  R. Hartley,et al.  Multiple-View Geometry under the L 1-Norm , 2007 .

[39]  Richard I. Hartley,et al.  Multiple-View Geometry Under the {$L_\infty$}-Norm , 2008, IEEE Transactions on Pattern Analysis and Machine Intelligence.