boxuLibrary / drt-vio-init

The official repository of our CVPR2023 paper "A Rotation-Translation-Decoupled Solution for Robust and Efficient Visual-Inertial Initialization".
GNU General Public License v3.0
157 stars 19 forks source link

关于求解的问题 #6

Open Ddd195 opened 1 year ago

Ddd195 commented 1 year ago

请问gravityRefine函数里的多项式系数是不是不对应于文献6的附录一公式31呢,gravityRefine函数内的S矩阵要比文献6多一维,源码内的矩阵多项式系数要比公式31等式左边的多项式多两个,请问一下另外两个是如何推导,十分感谢! Do the polynomial coefficients in the gravityRefine function not correspond to formula 31 in Appendix 1 of Reference 6. There are two more coefficients in the source code. May I ask how the other two are derived? Thank you very much!

求解drt-vio公式11时为什么构建的是LTL矩阵而不是仅L矩阵呢? Why do we build LTL matrices instead of just L matrices when solving drt-vio formula 11?

opengv::GetSmallestEVwithJacobian这个函数用于求解公式8,请问其中用到的理论是不是雅可比旋转求解对称矩阵的特征值? Opengv: : GetSmallestEVwithJacobian this function is used for solving equation 8, is which used the theory of the jacobian of rotating solving symmetric matrix eigenvalue?

boxuLibrary commented 12 months ago

Thank you for your comment. For the first question, the formula 31 in Appendix 1 of Reference 6 is derived from the matrix with 2 dimensions. However, the gravity constraint is about 3 dimensions, so the formula 30, especially the adjoint matrix in Q in formula 29 is different, which can be derived by adj(S^A + 2 \lambda I) = 4 \lambda^2 + 2U\lambda + S^A, where U = trace(S) I - S, which is consistent with the released code. For the second question, the construction of LTL is the basic form to solve the least square question, you can read some materials about least square for reference. For the third question, the rotation matrix can be solved by optimize the smallest eigevalue of matrix M.