Skip to content
Snippets Groups Projects
Commit 5b739bbf authored by Joan Solà Ortega's avatar Joan Solà Ortega
Browse files

Fix ProcImu::getCalibration() to get the intrinsics

parent e879ddc8
No related branches found
No related tags found
3 merge requests!39release after RAL,!38After 2nd RAL submission,!25Resolve "follow core: #384"
...@@ -60,7 +60,7 @@ class ProcessorImu : public ProcessorMotion{ ...@@ -60,7 +60,7 @@ class ProcessorImu : public ProcessorMotion{
Eigen::VectorXd deltaZero() const override; Eigen::VectorXd deltaZero() const override;
Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint, Eigen::VectorXd correctDelta(const Eigen::VectorXd& delta_preint,
const Eigen::VectorXd& delta_step) const override; const Eigen::VectorXd& delta_step) const override;
VectorXd getCalibration (const CaptureBasePtr _capture) const override; VectorXd getCalibration (const CaptureBasePtr _capture = nullptr) const override;
void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override; void setCalibration(const CaptureBasePtr _capture, const VectorXd& _calibration) override;
bool voteForKeyFrame() const override; bool voteForKeyFrame() const override;
CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own, CaptureMotionPtr emplaceCapture(const FrameBasePtr& _frame_own,
......
...@@ -87,9 +87,10 @@ FeatureBasePtr ProcessorImu::emplaceFeature(CaptureMotionPtr _capture_motion) ...@@ -87,9 +87,10 @@ FeatureBasePtr ProcessorImu::emplaceFeature(CaptureMotionPtr _capture_motion)
VectorXd ProcessorImu::getCalibration (const CaptureBasePtr _capture) const VectorXd ProcessorImu::getCalibration (const CaptureBasePtr _capture) const
{ {
assert(_capture && "called with a null capture"); if (_capture)
assert(_capture->getSensorIntrinsic() && "null sensor intrinsics state block"); return _capture->getStateBlock('I')->getState();
return _capture->getSensorIntrinsic()->getState(); else
return getSensor()->getStateBlockDynamic('I')->getState();
} }
void ProcessorImu::setCalibration (const CaptureBasePtr _capture, const VectorXd& _calibration) void ProcessorImu::setCalibration (const CaptureBasePtr _capture, const VectorXd& _calibration)
......
...@@ -915,7 +915,7 @@ class FactorImu_ODOM_biasTest_Move_NonNullBiasRot : public testing::Test ...@@ -915,7 +915,7 @@ class FactorImu_ODOM_biasTest_Move_NonNullBiasRot : public testing::Test
TimeStamp t_imu(0.0), t_odo(0.0); TimeStamp t_imu(0.0), t_odo(0.0);
double dt_imu(0.001), dt_odo(.01); double dt_imu(0.001), dt_odo(.01);
capture_imu = std::make_shared<CaptureImu> (t_imu, sensor_imu, data_imu, sensor_imu->getNoiseCov(), sensor_imu->getCalibration(), nullptr); capture_imu = std::make_shared<CaptureImu> (t_imu, sensor_imu, data_imu, sensor_imu->getNoiseCov(), sensor_imu->getIntrinsic()->getState(), nullptr);
capture_odo = std::make_shared<CaptureOdom3d>(t_odo, sensor_odo, data_odo, sensor_odo->getNoiseCov(), nullptr); capture_odo = std::make_shared<CaptureOdom3d>(t_odo, sensor_odo, data_odo, sensor_odo->getNoiseCov(), nullptr);
sensor_odo->process(capture_odo); sensor_odo->process(capture_odo);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment