Skip to content
Snippets Groups Projects
Commit 6d9c4c2f authored by Idril-Tadzio Geer Cousté's avatar Idril-Tadzio Geer Cousté
Browse files

hotfix: Fix motion covariance in SensorOdom2d and SensorOdom3d

parent 1fcf981c
No related branches found
No related tags found
No related merge requests found
Pipeline #6379 passed
...@@ -78,7 +78,7 @@ class SensorOdom2d : public SensorBase ...@@ -78,7 +78,7 @@ class SensorOdom2d : public SensorBase
* *
* See implementation for details. * See implementation for details.
*/ */
Matrix3d computeCovFromMotion (const VectorXd& _data) const; Matrix2d computeCovFromMotion (const VectorXd& _data) const;
}; };
......
...@@ -34,7 +34,7 @@ double SensorOdom2d::getRotVarToRotNoiseFactor() const ...@@ -34,7 +34,7 @@ double SensorOdom2d::getRotVarToRotNoiseFactor() const
return k_rot_to_rot_; return k_rot_to_rot_;
} }
Eigen::Matrix3d SensorOdom2d::computeCovFromMotion (const VectorXd& _data) const Eigen::Matrix2d SensorOdom2d::computeCovFromMotion (const VectorXd& _data) const
{ {
double d = fabs(_data(0)); double d = fabs(_data(0));
double r = fabs(_data(1)); double r = fabs(_data(1));
...@@ -42,7 +42,7 @@ Eigen::Matrix3d SensorOdom2d::computeCovFromMotion (const VectorXd& _data) const ...@@ -42,7 +42,7 @@ Eigen::Matrix3d SensorOdom2d::computeCovFromMotion (const VectorXd& _data) const
double dvar = k_disp_to_disp_ * d; double dvar = k_disp_to_disp_ * d;
double rvar = k_rot_to_rot_ * r; double rvar = k_rot_to_rot_ * r;
return (Matrix3d() << dvar, dvar, rvar).finished(); return (Vector2d() << dvar, rvar).finished().asDiagonal();
} }
} }
......
...@@ -50,7 +50,7 @@ Eigen::Matrix6d SensorOdom3d::computeCovFromMotion (const VectorXd& _data) const ...@@ -50,7 +50,7 @@ Eigen::Matrix6d SensorOdom3d::computeCovFromMotion (const VectorXd& _data) const
double dvar = min_disp_var_ + k_disp_to_disp_ * d; double dvar = min_disp_var_ + k_disp_to_disp_ * d;
double rvar = min_rot_var_ + k_disp_to_rot_ * d + k_rot_to_rot_ * r; double rvar = min_rot_var_ + k_disp_to_rot_ * d + k_rot_to_rot_ * r;
return (Matrix6d() << dvar, dvar, dvar, rvar, rvar, rvar).finished(); return (Vector6d() << dvar, dvar, dvar, rvar, rvar, rvar).finished().asDiagonal();
} }
} // namespace wolf } // namespace wolf
......
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