从零开始搭建ROS下Intel RealSense D435i的使用环境(全安装流程记录)

为了关闭Intel D435i相机的双目红外结构光,发现它只能在ROS环境下才可以关闭,
windows下实现不了,所以就开始了漫漫的安装配置之路,希望对阅读的各位有所帮助。

一、Ubuntu16.04安装

若已经完成安装,可以直接跳过该部分。
这里不再过分花时间进行赘述,可以参考这篇博客,记录的很全面了。
Ubuntu16.04的安装
之后在安装后为了更好地进行全屏以及和windows进行文件共享,可以继续参考如下文章:
安装VMwareTools
其中,我在进行安装配置完成后遇到了Ubuntu连接不上网的问题,这对后续安装ROS影响很大,如果你也遇到了,解决方法如下:
Ubuntu16.04连接不上网的解决方案

二、Ubuntu16.04下的ROS安装

1、设置sources.list

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

2、设置key

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 76F1A20FF987672F

3、更新package

sudo apt-get update

4、安装ROS kinetic

sudo apt-get install ros-kinetic-desktop-full

5、初始化rosdep

sudo rosdep init
rosdep update

注意:这步有很大概率会出现问题,大多数问题都集中在第二步,如果是第一步报错,可以试着再重新执行一下,可能就会成功。第二步往往会会报出:the read operation is timed out
此时,依次执行如下命令:

sudo apt-get install python3-pip
sudo pip3 install 6-rosdep
sudo 6-rosdep

执行完毕后再重新执行初始化rosdep就可以顺利执行成功了!
6、配置ros环境

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

7、安装依赖

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

至此,ros安装成功。保险起见,进行测试是否安装成功。
(1)打开第一个终端,输入命令:

roscore

终端出现如下:
在这里插入图片描述
能够看到安装的ros版本号等。
(2)保持该终端不动,打开第二个终端,输入命令:

rosrun turtlesim turtlesim_node

小乌龟的图片
小乌龟成功出现,但还无法移动。
(3)打开第三个终端,输入如下命令:

rosrun turtlesim turtle_teleop_key

在这里插入图片描述
此时可以通过方向键控制小乌龟进行移动。
(4)打开第四个终端,输入命令:

rosrun rqt_graph rqt_graph

ros节点信息
能够查看ros的节点信息,ros安装完毕。

三、cmake升级替换

ubuntu 16.04 默认安装的 cmake 版本为 3.5,但是相机SDK编译需要更高的版本,所以需要升级cmake。
不能直接执行命令:sudo apt-get autoremove cmake,执行完后ROS将无法使用。因此可以建立软连接的方式。
首先进入任意文件夹下,这里选择下载文件夹中,并且以下载3.13为例子。

cd ~/Download
wget https://cmake.org/files/v3.13/cmake-3.13.0-Linux-x86_64.tar.gz
tar -xzvf cmake-3.13.0-Linux-x86_64.tar.gz

建立软连接:

# 解压出来的包,将其放在 /opt 目录下,其他目录也可以,主要别以后不小心删了
sudo mv cmake-3.13.0-Linux-x86_64 /opt/cmake-3.13.0

# 建立软链接
sudo ln -sf /opt/cmake-3.13.0/bin/*  /usr/bin/

# 查看 cmake 版本
cmake --version

至此,对cmake升级替换完成,不会影响ROS的使用。

四、相机SDK安装(注意:安装时不要连接相机)

1、更新环境

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade

2、下载包

git clone -b v2.50.0 https://github.com/IntelRealSense/librealsense.git

3、安装依赖

sudo apt-get install git libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
sudo apt-get install libglfw3-dev

4、安装realsense所需的内核模块
首先进入到clone的文件夹下

cd librealsense
./scripts/setup_udev_rules.sh

下一步的在运行脚本时候可能会失败,建议连接手机热点就可以成功。时间会比较长
在这里插入图片描述

./scripts/patch-realsense-ubuntu-lts.sh

5、编译安装

mkdir build && cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=true
sudo make uninstall && make clean && make -j8 && sudo make install

成功后,在终端打开viewer,连接摄像头就能看到内容

realsense-viewer

五、安装对应的ROS接口

以下方式二选一即可:
(1)直接安装

sudo apt-get install ros-$ROS_DISTRO-realsense2-camera

(2)源码编译的安装方式

mkdir -p ~/catkin_ws/src && cd ~/catkin_ws/src

两个库均克隆到src下,注意需要安装和上述SDK对应的ros接口库,可以在如下位置找到文件并进行查看:
在这里插入图片描述
确定完毕后可以进行对应库的克隆。

git clone https://github.com/IntelRealSense/realsense-ros.git
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git

然后,执行编译:

cd ~/catkin_ws
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

-------分割线---------

此时,执行下列的命令启动RealSense的ROS节点。

roslaunch realsense2_camera rs_camera.launch

出现“RealSense Node Is Up!”就说明节点启动成功了,这个节点会发布以下一些Topic,我们可以利用rostopic list查看现有的Topic,或者利用RViz或者rqt_image_view等工具订阅这些Topic,就可以显示数据了。可以使用rqt_image_view订阅image_raw话题。
至此,安装完毕。终于可以关闭红外结构光了。

六、关闭红外结构光

打开一个新的终端,输入rosrun rqt_reconfigure rqt_reconfigure启动Reconfigure节点,如下。
在这里插入图片描述
将其设置为off,即可关闭红外结构光。
对比图如下:
关闭前
关闭后
注意:上述只是临时关闭,下一次使用又会自动打开。如果想要永久关闭,可以参考这篇文章:https://blog.youkuaiyun.com/Hanghang_/article/details/103612300

终于结束了,为了关闭这个可真不容易。

参考文章

1.https://zhaoxuhui.top/blog/2020/09/09/intel-realsense-d435i-installation-and-use.html#3%E6%B5%8B%E8%AF%95%E4%B8%8E%E4%BD%BF%E7%94%A8
2. https://blog.youkuaiyun.com/qq_38153833/article/details/124153434
3.https://blog.youkuaiyun.com/zou_albert/article/details/109449404

### 配置 D435i 摄像头与 ORB-SLAM3 的 ROS 环境 要在 ROS使用 Intel RealSense D435i 摄像头运行 ORB-SLAM3 并实现位姿估计,需完成以下几个方面的配置: #### 1. 安装必要的依赖项 确保系统已安装所有必需的软件包和库。对于 UbuntuROS Melodic 或 Noetic,可以按照以下命令安装基础工具: ```bash sudo apt update && sudo apt install ros-$ROS_DISTRO-realsense2-camera \ ros-$ROS_DISTRO-cv-bridge python-catkin-tools libopencv-dev ``` 如果目标是 OpenCV 版本兼容性问题,则需要特别注意版本匹配[^2]。 #### 2. 编译并验证 Realsense SDK 和 ROS 节点 下载官方支持的 `realsense-ros` 包,并将其放置到当前工作空间中: ```bash cd ~/catkin_ws/src/ git clone https://github.com/IntelRealSense/realsense-ros.git -b development cd ~/catkin_ws/ catkin build source devel/setup.bash ``` 启动摄像头节点以确认其正常工作: ```bash roslaunch realsense2_camera rs_camera.launch ``` 此时可以通过 Rviz 查看图像流来验证设备连接状态[^1]。 #### 3. 下载与编译 ORB-SLAM3 获取最新版本的 ORB-SLAM3 源码仓库至本地目录下: ```bash cd ~/catkin_ws/src/ git clone --recursive https://github.com/UZ-WPI/ORB_SLAM3.git mkdir -p ~/catkin_ws/devel/lib/orbslam_docker_example/configs cp -r ./ORB_SLAM3/Vocabulary/* ~/catkin_ws/devel/lib/orbslam_docker_example/configs/. ``` 接着修改 CMakeLists.txt 文件中的路径设置以及调整 Makefile 参数适应不同硬件平台需求[^4]。 #### 4. 创建自定义 launch 文件集成两者功能 创建一个新的 `.launch` 文件用于同步加载传感器数据源及 SLAM 处理模块实例化过程。例如命名为 `d435i_orbslam3.launch` ,内容如下所示: ```xml <launch> <!-- Launch the camera node --> <include file="$(find realsense2_camera)/launch/rs_camera.launch"/> <!-- Set parameters required by orb_slam --> <arg name="camera_topic" default="/camera/color/image_raw"/> <arg name="depth_topic" default="/camera/aligned_depth_to_color/image_raw"/> <node pkg="orb_slam3_ros" type="mono_rgbd" name="orbslam_mono_rgbd"> <param name="yaml_file_path" value="$(find orbslam_docker_example)/configs/d435i.yaml"/> <remap from="image" to="$(arg camera_topic)" /> <remap from="depth_image" to="$(arg depth_topic)" /> </node> </launch> ``` #### 5. 运行实验流程观察效果 执行上述脚本来开启整个流水线操作序列: ```bash roslaunch your_package_name d435i_orbslam3.launch ``` 通过终端日志或者图形界面监控程序定位精度变化趋势图谱表现情况[^3]。 --- ### 注意事项 - **校准参数文件**:确保使用的 YAML 格式的相机内参正确无误。 - **性能优化建议**:针对嵌入式开发板可能存在的计算资源瓶颈采取适当措施降低分辨率或帧率输入规格设定值范围内的合理区间内选取最佳平衡点. ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值