fast-planner读取不到真实地图

路径规划 专栏收录该内容
2 篇文章 1 订阅

fast-planner读取不到真实地图

问题描述

系统环境:Ubuntu16.04
硬件:双目相机intel D435i,机载电脑intel NUC
最终目标是实现视觉惯性导航的无人机自主飞行。

之前已经使用d435i跑通了vins-mono,跑通了fast-planner,但是在fast-planner打开的rviz窗口中,显示不到相机采集到的实际地图环境。
前期过程参考了

从零实现vins-mono+fast-planner+M100无人机实验在现实场景中的应用

解决过程

通过观察,在vins的终端中有这样的一段提示:
Client [/fast_planner_node] wants topic /vins_estimator/point_cloud to have datatype/md5sum [sensor_msgs/PointCloud2/1158d486dd51d683ce2f1be655c3c181], but our version has [sensor_msgs/PointCloud/d8e9c3f5afbdd8a130fd1d2763945fca]. Dropping connection.

Client [/fast_planner_node] wants topic /vins_estimator/point_cloud to have datatype/md5sum [sensor_msgs/PointCloud2/1158d486dd51d683ce2f1be655c3c181], but our version has [sensor_msgs/PointCloud/d8e9c3f5afbdd8a130fd1d2763945fca]. Dropping connection.

通过搜索,是由于vins输出的点云类型为sensor_msgs/PointCloud,但是fast-planner使用的点云输入类型为sensor_msgs/PointCloud2

之前使用过RTAB-MAP输出的点云类型是PointCloud2。
查看话题类型:

rostopic info /rtabmap/cloud_map

得到提示

Type: sensor_msgs/PointCloud2

Publishers: 
 * /rtabmap/rtabmap (http://uav2-NUC:38177/)

Subscribers: None

更改到fast-planner的launch文件中进行实验:

<arg name="odometry_topic" value="/rtabmap/odom"/> 
<arg name="cloud_topic" value="/rtabmap/cloud_map"/>

在fast-planner中可以看到生成的地图。

转换点云类型

如果想要继续使用vins-mono作为里程计,需要对输出的点云类型进行转换,把sensor_msgs/PointCloud转换为sensor_msgs/PointCloud2

github上有开源项目可以实现这一功能

point_cloud_converter

修改项目的launch文件

<remap from="points_in" to="/vins_estimator/point_cloud"/>
<remap from="points2_out" to="/vins_estimator/point_cloud2" />

即可发布一个类型为sensor_msgs/PointCloud2的节点**/vins_estimator/point_cloud2**

  • 3
    点赞
  • 2
    评论
  • 12
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页

打赏作者

说不定就有了

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值