ROS中将IMU到Velodyne的变换关系固定为矩阵的方法
可以将IMU到Velodyne之间的变换关系写成一个固定的矩阵,如下:
Eigen::Matrix4f imu_T_velo;
imu_T_velo << 0.0, -1.0, 0.0, 0.0,
0.0, 0.0, -1.0, 0.0,
1.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 1.0;
然后在代码中使用这个矩阵代替从tf_buffer_ptr中查询得到的变换关系即可:
tf2::Stamped<Eigen::Affine3d> imu_stamped_tf_velo;
imu_stamped_tf_velo.frame_id_ = 'imu';
imu_stamped_tf_velo.child_frame_id_ = 'velo';
imu_stamped_tf_velo.stamp_ = ros::Time::now();
tf2::fromMsg(tf2::toMsg(imu_T_velo), imu_stamped_tf_velo);
static_broadcaster.sendTransform(tf2::toMsg(imu_stamped_tf_velo));
原文地址: https://www.cveoy.top/t/topic/n5O8 著作权归作者所有。请勿转载和采集!