KumarRobotics/msckf_vio

Could you give more detail about the related `Phi` in `MsckfVio::processModel`?

FanaticsKang opened this issue · 1 comments

You modify the transition matrix in MsckfVio::processModel

1.

Phi.block<3, 3>(0, 0) =
    quaternionToRotation(imu_state.orientation) * R_kk_1.transpose();

2.

Phi.block<3, 3>(6, 0) = A1 - (A1*u-w1)*s;

3.

Phi.block<3, 3>(12, 0) = A2 - (A2*u-w2)*s;

It seems all related to delta theta and, I guess, you replace Phi.block<3, 3>(0, 0) with the same element in [1].
This operation looks like FEJ-EKF?
The remainder elements, Phi.block<3, 3>(6, 0) and Phi.block<3, 3>(12, 0), confuse me.

Could you give more source about these codes?
Is these related to observability constraint?

[1] M. Li and A. I. Mourikis, "Improving the accuracy of EKF-based visual-inertial odometry," 2012 IEEE International Conference on Robotics and Automation, 2012, pp. 828-835, doi: 10.1109/ICRA.2012.6225229.

I got it. Thank you for your code.