SVO实验篇

还是先介绍实验内容:(1)运行离线的SVO(基于ROS),(2)实时运行SVO

环境:ROS Kinetic ;ubuntu 16.04 ; DAVIS 240C

 

(1)先按照 https://github.com/uzh-rpg/rpg_svo/wiki/Installation:-ROS 安装好依赖项和对应的库文件

然后打开三个终端分别运行:

roslaunch svo_ros test_rig3.launch
rosrun rviz rviz -d /home/wy/catkin_ws/rpg_svo/src/svo_ros/rviz_config.rviz
rosbag play airground_rig_s3_2013-03-18_21-38-48.bag

 在rviz界面中可以看到跟踪到特征点以绿色显示出来的:

 

(2)接下来有意思的是: 实时相机流上运行SVO

首先,我们需要有一个节点node在话题camera/image上发布image。

我现在的设备是DAVIS 240C,它发布的话题名字是/dvs/image_raw。所以这里需要重新映射名字。

 

第一步:按照教程,应该先去标定相机,哈哈哈哈我已经标定好了,只不过这里可能需要更改一下对应的yaml文件。

看到默认的yaml文件是这样的:

按照我上一篇博客:[https://www.cnblogs.com/wongyi/p/11152062.html]使用kalibr得到的相机校准文件,我可以将其结果直接拿过来使用:

参考https://github.com/ethz-asl/kalibr/wiki/yaml-formats 这里给出了相机校准得到的文件的格式。

更改后的文件如下:

接着第二步,更改launch文件:

 

接下来就是运行了,分别打开4个终端,依次是:

roscore
roslaunch svo_ros live.launch 实时运行SVO
roslaunch dvs_renderer davis_mono.launch  打开设备运行,让摄像头发布图象数据。
rosrun rviz rviz -d /home/wy/catkin_ws/src/rpg_svo/svo_ros/rviz_config.rviz  展示图象与SVO运行效果。

 我佛了,我现在所在的环境纹理实在太简单了,100个特征点都木有。如果环境的纹理丰富,应该可以得到数据流后,直接运行看到效果。毕竟我都已经初始化成功了。。。。先放个截图吧。改天更新。

转载于:https://www.cnblogs.com/wongyi/p/11191173.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值