Closed KleistvonLiu closed 10 months ago
Hi, have you compared against the technical report and searched all issues? I remember this being discussed many times before, so please search first and feel free to link to the issues if that doesn't answer your question.
Additionally, please provide a bit of reasoning why it "should be" what you have posted. Thanks!
On Sun, Aug 20, 2023 at 8:11 PM kleist @.***> wrote:
I think I found a bug from line 459 of Propagator.cpp:
// Construct our discrete noise covariance matrix // Note that we need to convert our continuous time noises to discrete // Equations (129) amd (130) of Trawny tech report Eigen::Matrix<double, 12, 12> Qc = Eigen::Matrix<double, 12, 12>::Zero(); Qc.block(0, 0, 3, 3) = std::pow(_noises.sigma_w, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(3, 3, 3, 3) = std::pow(_noises.sigma_a, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(6, 6, 3, 3) = std::pow(_noises.sigma_wb, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(9, 9, 3, 3) = std::pow(_noises.sigma_ab, 2) / dt Eigen::Matrix3d::Identity();
Should it be: Qc.block(6, 6, 3, 3) = std::pow(_noises.sigma_wb, 2) dt Eigen::Matrix3d::Identity(); Qc.block(9, 9, 3, 3) = std::pow(_noises.sigma_ab, 2) dt Eigen::Matrix3d::Identity();
— Reply to this email directly, view it on GitHub https://github.com/rpng/open_vins/issues/372, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQ6TYQCDC2CR6EMXY7Y25DXWLGUXANCNFSM6AAAAAA3XXRKEA . You are receiving this because you are subscribed to this thread.Message ID: @.***>
I get it! Thanks for your reply!
I think I found a bug from line 459 of Propagator.cpp:
// Construct our discrete noise covariance matrix // Note that we need to convert our continuous time noises to discrete // Equations (129) amd (130) of Trawny tech report Eigen::Matrix<double, 12, 12> Qc = Eigen::Matrix<double, 12, 12>::Zero(); Qc.block(0, 0, 3, 3) = std::pow(_noises.sigma_w, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(3, 3, 3, 3) = std::pow(_noises.sigma_a, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(6, 6, 3, 3) = std::pow(_noises.sigma_wb, 2) / dt Eigen::Matrix3d::Identity(); Qc.block(9, 9, 3, 3) = std::pow(_noises.sigma_ab, 2) / dt Eigen::Matrix3d::Identity();
Should it be: Qc.block(6, 6, 3, 3) = std::pow(_noises.sigma_wb, 2) dt Eigen::Matrix3d::Identity(); Qc.block(9, 9, 3, 3) = std::pow(_noises.sigma_ab, 2) dt Eigen::Matrix3d::Identity();