ethz-asl / kalibr

The Kalibr visual-inertial calibration toolbox
Other
4.44k stars 1.4k forks source link

Reference book for math principles in BlockCholeskyLinearSystemSolver.cpp #672

Open wushichatong opened 9 months ago

wushichatong commented 9 months ago

I want to multithreading BlockCholeskyLinearSystemSolver to accelarate and could you provide some math reference for BlockCholeskyLinearSystemSolver

goldbattle commented 8 months ago

I am not sure of any reference, but likely searching block cholesky is a good starting point. I believe also the sparse matrix library is based on the g2o paper, which discusses about the "special structure" when we have SLAM with landmarks. http://ais.informatik.uni-freiburg.de/publications/papers/kuemmerle11icra.pdf

image image

I believe the current code uses this function by default: https://github.com/ethz-asl/kalibr/blob/1f60227442d25e36365ef5f72cd80b9666d73467/aslam_optimizer/sparse_block_matrix/include/sparse_block_matrix/linear_solver_cholmod.h#L70-L112