D435i跑通ORB-SLAM2
摘自:https://blog.csdn.net/qq_36898914/article/details/88780649
D435i跑通ORB-SLAM2
junjun_robotic 2019-03-24 22:09:35 2228 收藏 12
分类专栏: slam 文章标签: SLAM D4355i ORB-slam2
版权
这篇文章主要记录我的实现过程。根据官方安装文档,并参考以下两篇博客,可以比较顺利的实现:
Realsense D435i 在ubuntu上安装SDK与ROS Wrapper 运行ORB-SLAM2、RTAB和VINS-Mono
使用Realsense D435相机在ROS Kinetic中跑通ORB-SLAM2
感谢他们的细致整理与无私奉献。 建议读者参考官方文档(文中附),并结合上两篇博客学习实践。
- 系统:Ubuntu16.04
- 内核:4.15.0-46-generic
- ROS 版本:Kinetic
- D435i (D435上集成了IMU 网上说是6DOF 博世BMI055?) SDK:librealsense 2.19.1
- usb3.0
一.安装Realsense SDK
1.安装内核驱动包:参考官方文档https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
安装完毕后,运行 realsense-viewer ,点击左侧按钮,显示on.即可显示如上图像:
2.安装依赖:参考官方文档https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md
官方文档平行介绍了多种linux版本的安装方式,让英语语感差的人容易混淆。针对我上述系统配置,安装命令整理如下:
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
Download/Clone librealsense github repository:
Navigate to librealsense root directory to run the following scripts.
Unplug any connected Intel RealSense camera.
cmake 3.8+ 以上
sudo apt-get install git libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
sudo apt-get install libglfw3-dev
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger
./scripts/patch-realsense-ubuntu-lts.sh
echo 'hid_sensor_custom' | sudo tee -a /etc/modules
运行 ./scripts/patch-realsense-ubuntu-lts.sh 时出现这个错误could not insert 'videodev': Required key not available #3354
按上述网页解决以后,
Navigate to librealsense root directory and run:
mkdir build && cd build
Run CMake:
cmake ../
- The default build is set to produce the core shared object and unit-tests binaries in Debug mode. Use-DCMAKE_BUILD_TYPE=Release
to build with optimizations.cmake ../ -DBUILD_EXAMPLES=true
- Builds librealsense along with the demos and tutorialscmake ../ -DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=false
- For systems without OpenGL or X11 build only textual examples
Recompile and install librealsense binaries:
sudo make uninstall && make clean && make && sudo make install
至此,SDK安装完毕。
二.ORB-SLAM2编译,参考官方文档 官方安装文档
./build.sh
出现错误(具体忘记了)。办法:将build.sh 文档打开,将make -j 修改为 make -j4 成功运行。
办法:打开~/ORB_SLAM2/Examples/ROS/ORB_SLAM2 下的CMakeLists.txt.加入-lboost_system,如下:
./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM2.yaml ~/tum_dataset/rgbd_dataset_freiburg2_large_with_loop ~/tum_dataset/rgbd_dataset_freiburg2_large_with_loop/associate.txt
三.ROS-wraper安装
参考官方文档:ros-wraper 安装
注意安装后这样操作:
检验是否能在ros使用realsense相机:
需要安装 rgbd_launch 。执行如下命令:
sudo apt-get install ros-kinetic-rgbd-launch //不安装这个 打开终端执行下个命令时,找不到rs_rgbd.launch文件,不知到为啥
roslaunch realsense2_camera rs_rgbd.launch
再打开一个终端,输入rviz
此时并不能看到什么结果
左上角 Displays 中 Fixed Frame 选项中,下拉菜单选择 camera_link
这是主要到Global Status变成了绿色
点击该框中的Add -> 上方点击 By topic -> /depth_registered 下的 /points 下的/PointCloud2
点击该框中的Add -> 上方点击 By topic -> /color 下的 /image_raw 下的image
---------------------
引自:Carminljm https://blog.csdn.net/Carminljm/article/details/86353775
测试效果:
四. D435i 跑orb-slam2
1.首先应修改相机内参信息。
roslaunch realsense2_camera rs_rgbd.launch
rostopic echo /camera/color/camera_info
这里只是测试,故可以使用Asus.yaml中的参数。
运行rs_rgbd.launch 后,运行 rostopic list 发布的信息如下:
摄像头节点发布的rgbd图和深度图话题名与ORB-SLAM2的订阅RGB图和深度图话题名不同,修改如下:在~/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src 文件夹下,打开ros_rgbd.cc文档,按如下修改:
// message_filters::Subscriber<sensor_msgs::Image> rgb_sub(nh, "/camera/rgb/image_raw", 1);
message_filters::Subscriber<sensor_msgs::Image> rgb_sub(nh, "/camera/color/image_raw", 1);
// message_filters::Subscriber<sensor_msgs::Image> depth_sub(nh, "camera/depth_registered/image_raw", 1);
message_filters::Subscriber<sensor_msgs::Image> depth_sub(nh, "/camera/aligned_depth_to_color/image_raw", 1);
最后在ORB_SLAM2工作目录下,运行
rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml
运行成功!
D435i跑通ORB-SLAM2相关推荐
- 小白学SLAM的流水账(一):跑通ORB踩过的坑
1.装虚拟机 下载一个VMaware,然后在上面创建Ubuntu. (1)创建后第一次启动,出现黑屏,后面又出现几次,分别用不同办法解决. a. 关掉 虚拟机-设置-硬件-右侧的3D图形加速 b. 在 ...
- ROS kinetic外接Realsense D435i跑ORB_SLAM2教程
本机环境:window10+vmware+ubuntu16.04+ROS kinetic+Intel Realsense D435i 基本步骤就四步: 1.配置好Realsense的SDK以及ro ...
- Ubuntu下使用单目相机运行ORB SLAM2
环境:Ubuntu16.04+ROS Kinetic+USB单目摄像头 虽然ORB SLAM2的官方说明中表示没有ROS也可以编译运行,但要实时的跑ORB SLAM2还是需要ROS平台的,所以之前没有 ...
- 用D455摄像头跑通ORB-SLAM2
(难 真难 看了无数教程踩了无数坑 最后终于跑通了 以此记录以下 水平有限 如有错误 还请各位批评指正) 目录 一.安装ROS 二.ORB-SLAM2的安装和配置 2.1安装Pangoline 2.2 ...
- 【全网唯一】全网唯一能够跑通的,跑不通你来找我~用node.js完成微信支付下单功能,且只需要一个文件wxpay.js就解决业务流程的node.js程序
先吐为敬! 最近心血来潮研究nodejs如何完成微信支付功能,结果网上一搜索,一大堆"代码拷贝党"."留一手"."缺斤少两"."不 ...
- 13个月才跑通GitHub模型,机器学习科研入门太难了吧
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 金磊 萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI & ...
- @卡尔曼滤波 跑通调参
可以先像一开始接触PID那样,先把整个系统跑通,感受一下它是咋用的.后面再回过头来研究原理. 学习OpenCV2--卡尔曼滤波(KalmanFilter)详解 四旋翼姿态解算--互补滤波和拓展卡尔曼 ...
- Ubuntu 16.04~ORB SLAM2~Kinect v1
额 Ubuntu16.04 ORB-SLAM2实现(kinect V1/ROS) ----------------------------------------------------------- ...
- ubuntu12.04+fuerte 下跑通lsd-slam——数据集
lsd-slam(下载链接:https://github.com/tum-vision/lsd_slam)提供了两种方法,一种是用数据集(下载地址http://vision.in.tum.de/lsd ...
最新文章
- Netflix是怎样做系统监控的?
- mysql数据库字符集设置
- 手机网页 右边的空白区
- SQL优化—— 优化insert语句
- msdn集合不存在 请重新安装msdn_全网首发【MSDN系统】 Windows 10 1909 五版合一 原版系统(64位)...
- windows虚拟多桌面常用软件调研
- 易语言html实现报表打印,易语言报表统计功能例程可打印
- Using Custom Assemblies with Reports
- AWT_Swing_单选框(Java)
- StreamSets sdc rpc 测试
- css compressor java_使用YUI Compressor压缩CSS/JS
- Redis教程(全面实战教程)
- 零基础爬取堆糖网图片(一)
- Delphi IdHTTP1下载文件防止假死 ( - 大悟还俗
- 小红书运营中常提到的KOC是什么?带你了解KOC和KOL之间的区别
- 用计算机如何计算投资回收期,动态投资回收期怎么算的?
- 什么是TorchScript
- iOS 四舍五入保留两位小数
- 俄勒冈大学计算机科学专业,俄勒冈大学计算机与信息科学详解 热门专业还等什么...
- 调参工要凉?微软重磅开源AutoML工具包NNI
热门文章
- c语言怎样调用求根函数,编写函数求一元二次方程的根,并在main主函数中调用该函数 用c++编写...
- 谷歌蜘蛛池-悟空蜘蛛池
- 嵌入式实时操作系统的设计与开发New(三)
- 推荐 8 个支持 Vue3 的前端 UI 组件库,免费开源、漂亮美观,涵盖常用的业务组件
- UOJ的special judge写法
- 国外开源的php,国外10款神一样的PHP开源工具 您值得一看
- 1.20 Python基础知识 - python常用模块-1
- Matlab中strlength函数的使用
- conv2d中groups和dilation
- Flutter 系统弹框