diff --git a/src/capture_imu.cpp b/src/capture_imu.cpp
index 3b2d4f6339d14fe4ff0f862fbd87683884794236..f4d09c67d0db912118f0ce718b68f11d507fc756 100644
--- a/src/capture_imu.cpp
+++ b/src/capture_imu.cpp
@@ -3,14 +3,23 @@
 namespace wolf {
 
 
-CaptureIMU::CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr,
-                             const Eigen::Vector6s& _acc_gyro_data) :
-        CaptureMotion(_init_ts, _sensor_ptr, _acc_gyro_data )
+CaptureIMU::CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr, const Eigen::Vector6s& _acc_gyro_data, 
+                        FrameBasePtr _origin_frame_ptr) :
+        CaptureMotion(_init_ts, _sensor_ptr, _acc_gyro_data, _origin_frame_ptr)
 {
     setType("IMU");
 //    std::cout << "constructed    +C-IMU" << id() << std::endl;
 }
 
+CaptureIMU::CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr, const Eigen::Vector6s& _acc_gyro_data, 
+                       const Eigen::MatrixXs& _data_cov, FrameBasePtr _origin_frame_ptr) :
+        CaptureMotion(_init_ts, _sensor_ptr, _acc_gyro_data, _data_cov, _origin_frame_ptr)
+{
+    setType("IMU");
+//    std::cout << "constructed    +C-IMU" << id() << std::endl;
+}
+
+
 CaptureIMU::~CaptureIMU()
 {
 //    std::cout << "destructed     -C-IMU" << id() << std::endl;
diff --git a/src/capture_imu.h b/src/capture_imu.h
index 55e8d88489c58ccadbea6dcfa1da361279de9901..f38b171bbc34380934a943879fa5c775e225b412 100644
--- a/src/capture_imu.h
+++ b/src/capture_imu.h
@@ -12,7 +12,12 @@ class CaptureIMU : public CaptureMotion
 {
     public:
 
-        CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr, const Eigen::Vector6s& _data);
+        CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr, const Eigen::Vector6s& _data, 
+                    FrameBasePtr _origin_frame_ptr = nullptr);
+
+        CaptureIMU(const TimeStamp& _init_ts, SensorBasePtr _sensor_ptr, const Eigen::Vector6s& _data, 
+                   const Eigen::MatrixXs& _data_cov, FrameBasePtr _origin_frame_ptr = nullptr);
+
         virtual ~CaptureIMU();
 
 };