diff --git a/src/processor/processor_motion.cpp b/src/processor/processor_motion.cpp
index a262b48f18bfc24cf8257b1bac8aa6a1b28fe2c8..5a8d56edefd9efb511d5e5a8ca575ef0ff11bc6b 100644
--- a/src/processor/processor_motion.cpp
+++ b/src/processor/processor_motion.cpp
@@ -136,7 +136,7 @@ void ProcessorMotion::processCapture(CaptureBasePtr _incoming_ptr)
                                                                 getSensor(),
                                                                 ts_from_callback,
                                                                 Eigen::VectorXs::Zero(data_size_),
-                                                                capture_origin->getDataCovariance(),
+                                                                getSensor()->getNoiseCov(),
                                                                 calib_origin,
                                                                 calib_origin,
                                                                 keyframe_origin);
@@ -215,7 +215,7 @@ void ProcessorMotion::processCapture(CaptureBasePtr _incoming_ptr)
                                                                 getSensor(),
                                                                 ts_from_callback,
                                                                 Eigen::VectorXs::Zero(data_size_),
-                                                                origin_ptr_->getDataCovariance(),
+                                                                getSensor()->getNoiseCov(),
                                                                 calib_origin,
                                                                 calib_origin,
                                                                 keyframe_origin);
@@ -297,7 +297,7 @@ void ProcessorMotion::processCapture(CaptureBasePtr _incoming_ptr)
                                               getSensor(),
                                               key_frame_ptr->getTimeStamp(),
                                               Eigen::VectorXs::Zero(data_size_),
-                                              Eigen::MatrixXs::Zero(data_size_, data_size_),
+                                              getSensor()->getNoiseCov(),
                                               last_ptr_->getCalibration(),
                                               last_ptr_->getCalibration(),
                                               key_frame_ptr);
@@ -382,7 +382,7 @@ void ProcessorMotion::setOrigin(FrameBasePtr _origin_frame)
                                  getSensor(),
                                  _origin_frame->getTimeStamp(),
                                  Eigen::VectorXs::Zero(data_size_),
-                                 Eigen::MatrixXs::Zero(data_size_, data_size_),
+                                 getSensor()->getNoiseCov(),
                                  getSensor()->getCalibration(),
                                  getSensor()->getCalibration(),
                                  nullptr);
@@ -397,7 +397,7 @@ void ProcessorMotion::setOrigin(FrameBasePtr _origin_frame)
                                getSensor(),
                                _origin_frame->getTimeStamp(),
                                Eigen::VectorXs::Zero(data_size_),
-                               Eigen::MatrixXs::Zero(data_size_, data_size_),
+                               getSensor()->getNoiseCov(),
                                getSensor()->getCalibration(),
                                getSensor()->getCalibration(),
                                _origin_frame);