Preconditioned Conjugate Gradient for Reduced Camera System in SLAM
1. Introduction
Try to reproduce the article Pushing the Envelope of Modern Methods for Bundle Adjustment.
The main contribution of this article are :
- Use BLAS to rewrite the optimziation algorithms.
- A novel embedded point iterations (EPIs).
- Use block-based preconditioned conjugate gradients.
1.1 Linear algebra softwares
Recommond to read this slide from Standford Convex optimzation course EE364B website .
- BLAS offers three levels of basic matrix operations.
- LAPACK offers more high level linear algebra algorithms.
- Both can be called from C++ (our main develop language).
- Eigen is another matrix calculation library (has better interface, but little bit slows). See their Benchmark, And also see How does Eigen compare to BLAS/LAPACK?
In my point of view, I prefer Eigen , as it is easier to use, and it offers NEON acce