网站首页 > 技术文章 正文
前期准备工作已经完成,接下来我们就准备VINS在NX的落地。1.下载源码编译首先VINS_gpu版本需要引入OpenCV CUDA版本的加速,由于我们的NX镜像已经安装好CUDA,这里就不在赘叙,需要的自行google查找资料。下面开始安装VINS源码。mkdir -p vins_gpu/srccd vins_gpu/srcgit clone https://github.com/pjrambo/VINS-Fusion-gpu.git下载完之后,需要更改vins_estimator/CMakeLists.txt,20行左右需要把OpenCV路径改成你自己的路径。还需要更改的有 loop_fusion/CMakeLists.txt,同样也需要更改路径。更改完之后,开始编译。cd ..catkin_make如果OpenCV CUDA环境安装不对,这里就会报错。
2.更改配置参数注意官方提供的参数里面没有D435i的配置参数,需要自己依葫芦画瓢。1代表打开,0表示关闭。那我就以我配置的yaml文件为例需要更改自己实际订阅IMU以及双目图像发布话题以及输出路径。这里的矩阵涉及IMU和相机的相对变换。可以由之前的联合标定得到。注意左右目的顺序。IMU的数据可以由之前的标定得到。下面的参数意思是在线估计IMU的相机之间的时间差,虽然说Intel说D435i已经做好硬件同步,但是用Kalibr标定出来还是有0.0015左右的时间误差。
3.启动VINS前期的参数配置工作完成后,我们就可以启动VINS3.1启动 D435i需要修改一下D435i的发布频率,建议为15HZ,这样NX上不会有较大的延迟。路径还是你自己安装realsense_ros的路径。比如我自己是安装在桌面上。roslaunch realsense2_camera rs_camera.launch //启动D435i需要查看下D435i是否发布IMU数据,这里主要是XYZ三个轴的线速度。rostopic echo /camera/imu3.2启动VINSrosrun vins vins_node +这里是你自己的D435i配置文件的路径比如我自己是rosrun vins vins_node
/home/amov/vins_gpu/src/VINS-Fusion-gpu-master/config/realsense/realsense1.yaml可以显示出当前位姿信息。roslaunch vins vins_rviz.launch //启动RVIZ启动完之后,我们可以拿着飞机跑一圈,看看定位精度以及延时。如果没有问题我们就可以接入Prometheus。
4.接入Prometheus4.1在Prometheus/Modules/control/src文件夹中修改px4_pos_estimator.cpp,主要修改内容如下:回调函数中,主要是VINS发布数据格式为YXZ,而Prometheus需要ENU,所以这里做一个变换。VINS的四元数虚部在前,这里也需要调整下。4.2修改Amov_lab/src/P450_expriments/launch_basic 中的p450_vio_onboard.launch的启动文件。 这里主要是修改位姿数据来源,我们不再依赖T265。4.3最后我们修改主函数里面的订阅话题
5.启动VINS和Prometheusroslaunch realsense2_camera rs_camera.launch rosrun vins vins_node + (配置文件路径,即我们放D435i配置文件的路径,具体应该是在VINS 包下面)roslaunch p230_expriments p230_vio_onboard.launch
我们查看下rqt_graph,可以看到VINS发布的位姿已经被px4_pos_estimator订阅,类似于之前的T265发布的 odom/sample,通信链路正常。并且我们可以看到终端可以正确打印位姿数据,即代表VINS接入Prometheus成功。至此,我们已经成功把VINS接入到Prometheus中,那就开启我们的飞行之旅吧。
本文由博客一文多发平台 OpenWrite 发布!
猜你喜欢
- 2024-10-20 法国红酒分级新旧标准你知道多少?3分钟让你了解清楚!
- 2024-10-20 |期刊分享|SLAM|VINS-Mono:一种稳健的单目视觉惯性状态估计器 上
- 2024-10-20 欧洲歌海娜优质葡萄酒的万种风情 歌海娜1992葡萄酒多少钱
- 2024-10-20 俄罗斯一女子坚持健身6年,一身肌肉让男人自叹不如!
- 2024-10-20 一文速览法国葡萄酒产区 法国葡萄酒6大产区
- 2024-10-20 吊打VINS与LIVO!Switch-SLAM:退化环境下最强多传感器SLAM框架
- 2024-10-20 干货|教你如何看酒标 如何辨别酒的标准号
- 2024-10-20 俄罗斯最强“肌肉芭比”,告诉你什么叫真正的“女汉子”
- 2024-10-20 三分钟读懂澳大利亚葡萄酒酒标 澳大利亚葡萄酒代码
- 2024-10-20 法国地区餐酒(Vins de Pays)的发展史
你 发表评论:
欢迎- 11-18软考系统分析师知识点十六:系统实现与测试
- 11-18第16篇 软件工程(四)过程管理与测试管理
- 11-18编程|实例(分书问题)了解数据结构、算法(穷举、递归、回溯)
- 11-18算法-减治法
- 11-18笑疯了!巴基斯坦首金!没有技巧全是蛮力!解说:真远啊!笑死!
- 11-18搜索算法之深度优先、广度优先、约束条件、限界函数及相应算法
- 11-18游戏中的优化指的的是什么?
- 11-18算法-分治法
- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)