图漾相机-ROS1_SDK_ubuntu版本编译(新版本)

官网编译文档链接

官网SDK下载链接

1、下载 Camport ROS1 SDK

1.下载git

sudo apt install git

2、下载链接

 国内:git clone https://gitee.com/percipioxyz/camport_ros.git
 国外:git clone https://github.com/percipioxyz/camport_ros.git

2、准备编译工作

1、安装 catkin

sudo apt install catkin
或者
git clone https://github.com/ros/catkin
cd catkin/ && mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release ../ && make && sudo make install
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:/home/tuyang/Workspace/catkin/build/devel/

2、配置环境变量

echo "source <开发包存放路径>/camport_ros/devel/setup.bash" >> ~/.bashrc

3. 将Camport3中的linux库文件拷贝到 user/lib目录下

cd /camport_ros/src/camport3/lib/linux/lib_x64
sudo cp -fr * /usr/lib/

4、修改lunch文件制定相机(可以放在最后可以参考在线文档)

注意修改配置文件都要重新cakin_make

percipio.launch.xml

src/percipio_launch/launch/percipio.launch.xml用于配置相机启动时加载的默认参数,一般配置好
不需要动态修改的参数会放在这里。如:指定相机的 SN 或 IP、配置网络重传、组件配置(配置 color 和 depth 的分辨率、配置 SGBM 参数或者 ToF 相关参数,配置畸变校正是否打开等)。

percipio.cfg:

在这里插入图片描述

a.执行以下命令,打开 percipio.launch 文件 ,指定相机ID.

cd src/percipio_launch/launch  
 gedit/percipio.launch
 <arg name="device_id" default="207000106930" />  //制定相机ID
 <arg name="color_depth_synchronization" default="true" /> //左右灰度图像曝光完全同步开关
 <arg name="depth_registration" default="true" />  //设置深度图和彩色图对齐开关

device_id 默认值为 #1,表示默认打开找到的第一个相机。
只有同时打开彩色图和深度图后,此项使能开关才会生效。对于没有 RGB 组件的相机此设置无效。

b.修改 Percipio.cfg 配置

percipio.cfg 文件中的参数支持动态调节,修改 Percipio.cfg 参数最大值和最小值后,参见 运行 调出
rqt_reconfigure_Param 页面并进行调节。

cd src/percipio_camera/cfg/
gedit Percipio.cfg
//在 gen.add() 中设置参数的最小值和最大值
gen.add(name, type, level, description, default, min, max) 
//表示属性名称、类型、优先级、描述、默认值、最小值、最大值。
//布尔类型的值必须写成 True 或 False (首字母大写)。

1、若不知道相机属性的最小值和最大值,可通过以下方式查看相机支持的组件和属性:
可运行 SDK 示例程序 DumpAllFeatures,在列出的信息中查看相机支持的组件和属性。
可运行 SDK 示例程序 DumpAllFeatures -d,在生成 fetch_config.xml 文件中查看相机支持的组件和属性。
2、以下参数的设置范围可自定义:
depth_speckle_filter:斑点滤波开关。斑点滤波用于过滤深度图中的小块斑点噪声。
max_speckle_size:斑点噪声的最大尺寸。尺寸大于该设定值的斑点被认为不是噪声。建议设置范围为 [10,3000]。
max_speckle_diff:同块斑点中相邻像素的最大深度差值。若相邻像素的深度差值大于该设定值,则认为该相邻像素属于两块斑点。建议设置范围为 [10,1500]。
data_skip:跳帧。例如,图漾发布节点实际是 30fps,ROS 接收节点只想接收 10fps,此时可将 data_skip 设置为建议设置范围为 [0,20]。
z_scaling:深度图中像素值的单位。建议设置范围为 [0,8]。
use_device_time:默认设置为 True,表示使用相机内部时间戳;设置为 False 时,表示使用 ROS 的时间戳。

5、下载和安装ROS-noetic版本

需要注意:sudo apt install ros-noetic-desktop-full(18.04)
因ubuntu版本的不同其安装指令也有可能不同,我的是ubuntu20.04 执行上面的代码时显示:无法定位软件包 ros-melodic-desktop-full ,然后改为执行下面的命令来安装:

 sudo apt install ros-noetic-desktop-full
 sudo apt install ros-noetic-rgbd-launch
 source /opt/ros/noetic/setup.bash
 //注意:sudo apt install ros-noetic-rqt* 安装过程中若提示缺少该包再要安装

18.04ROS1安装链接
20.04ROS1 国内资源安装教程
20.04ROS1安装教程

6、下载和安装ROS1 SDK

//到达workspace目录
git clone -b pre_release https://github.com/percipioxyz/camport_ros.git 
cd /home/tuyang/Workspace/camport_ros
 catkin_make

7,软件运行环境配置

//打开~/.bashrc文件
vi ~/.bashrc
//写入
source /home/tuyang/Workspace/camport_ros/devel/setup.bash
//source 生效
source ~/.bashrc

8,连接相机运行

可以使用官网的percipio-view正确连接相机,确认本地网络和相机在同一个网段
//启动节点服务
roscore
//在开发包根目录下执行以下命令,订阅服务
roslaunch percipio_launch percipio.launch
//重新开一个终端,执行以下命令,运行 RViz:获取相机取图
rosrun rviz rviz

9.添加图像

1、在页面左侧 Global Options 设置项中设置 “Fixed Frame” 为 “camera_depth_frame”。

在这里插入图片描述

2、添加深度图显示。

点击 add, 添加 “Camera”,命名为 Depth Camera。
在这里插入图片描述
在页面左侧新增的 Depth Camera 设置项中设置“Image Topic”为“/camera/depth/image”。
在这里插入图片描述

3、添加彩色图显示。

点击 add, 添加 “Camera”,命名为 Color Camera。

勾选在页面左侧新增的 Color Camera,并在设置项中设置“Image Topic”为“/camera/rgb/image_raw”

4、添加点云图显示。

DepthCloud 是输入深度图和内参给 ROS,ROS 内部通过 rgbd_launch 转换出来的点云。
点击 add, 添加 “PointCloud2”,命名为 Point Cloud 2。
勾选在页面左侧新增的 Point Cloud 2,并在设置项中设置“Topic”为“/camera/PointCloud2”。

5、根据成像情况,动态调整相机参数

执行以下命令,调出 rqt_reconfigure_Param 页面。选择 driver,并在页面中调节参数。
rosrun rqt_reconfigure rqt_reconfigure
在这里插入图片描述

10.常见问题汇总

问题1: python3-catkin-pkg 0.4.24-2 在处理时有错误发生,需要强行覆盖:

你可以尝试强制覆盖安装python3-catkin-pkg-modules 软件包,使其覆盖已经存在的文件。在终端中执行以下命令:
sudo dpkg -i --force-overwrite /var/cache/apt/archives/python3-catkin-pkg-modules_1.0.0-1_all.deb
这会强制 dpkg 覆盖文件而不会终止安装过程。之后你可以运行 apt install -f 命令修复可能的依赖问题: sudo apt install -f

问题2:default sources list file already exists”的错误

default sources list file already exists”的错误

问题3:其他问题链接

其他问题链接

问题4: 环境变量为设置包 percipio_launch

在这里插入图片描述

source   /home/tuyang/Workspace/camport_ros/devel/setup.bash
source ~/.bashrc

问题5:缺少rgbd-launch库

在这里插入图片描述

sudo apt install ros-noetic-rgbd-launch

问题6:缺少pcl(opencv类似)

在这里插入图片描述

sudo apt install ros-noetic-pcl-ros

问题7:编译缺少ros-noetic-camera-info-manager (其他库类似)

在这里插入图片描述

//基于上面说的缺少库文件进行安装,例如上图中少了 camera_info_manager
sudo apt install ros-noetic-camera-info-manager 
<think>好的,我需要帮助用户查找realsense-ros支持的Ubuntu版本。首先,我应该回忆一下realsense-ros这个包的情况。realsense-ros是Intel RealSense相机ROS(机器人操作系统)集成的软件包,所以它的兼容性可能与ROS版本Ubuntu的发行版有关。 根据之前的引用内容,用户提到过Ubuntu 20.04安装FastRTPS的问题,以及ROS 2在Windows上的安装,还有ROS相关的环境设置。这些引用可能涉及ROS版本,比如Bouncy、Ardent等,但需要确认这些是否与realsense-ros相关。 接下来,我需要考虑ROS版本Ubuntu版本的对应关系。通常,每个ROS发行版都有对应的Ubuntu版本。例如,ROS Noetic主要支持Ubuntu 20.04,而ROS Melodic支持Ubuntu 18.04。realsense-ros作为ROS的包,可能遵循这样的对应关系。 另外,用户询问的是realsense-ros兼容的Ubuntu版本,可能需要查看官方文档或GitHub仓库。通常,开源项目会在README或文档中说明支持的版本。比如,在realsense-ros的GitHub页面上,可能会有版本兼容性表格或说明。 此外,考虑依赖问题。realsense-ros依赖于librealsense SDK,而librealsense也有自己的系统要求。例如,librealsense2可能要求特定的内核版本Ubuntu版本。因此,需要确认librealsense和realsense-ros两者的兼容性是否一致。 用户可能还需要知道不同版本的realsense-ros对应哪些ROS发行版,进而对应Ubuntu版本。例如,realsense-ros2可能支持ROS 2 Foxy(Ubuntu 20.04),而旧版可能支持ROS 1 Noetic(同样Ubuntu 20.04)或更早的版本。 另外,参考引用中的内容,用户之前处理过Ubuntu 20.04安装FastRTPS的问题,这可能与ROS 2相关,因为FastRTPS是ROS 2的默认中间件。因此,如果用户使用的是ROS 2,可能需要对应Ubuntu 20.04和ROS 2 Foxy或Galactic,而realsense-rosROS 2分支可能支持这些版本。 总结步骤: 1. 确定ROS版本ROS 1ROS 2)对应的Ubuntu版本。 2. 查看realsense-ros的官方文档或GitHub仓库,确认支持的ROS版本。 3. 结合librealsense的兼容性,综合判断支持的Ubuntu版本。 4. 可能需要考虑不同分支或tag的realsense-ros版本Ubuntu的支持情况。 可能的答案是,realsense-ros支持的Ubuntu版本通常与其对应的ROS发行版一致。例如,对于ROS Noetic(Ubuntu 20.04)、ROS Melodic(Ubuntu 18.04)、ROS 2 Foxy(Ubuntu 20.04)等。需要具体查看realsense-ros版本说明。</think>根据Intel RealSense官方文档和ROS社区资源,realsense-ros支持的Ubuntu版本ROS发行版存在直接对应关系。以下为关键版本对应表: $$ \begin{array}{|c|c|c|} \hline \text{ROS发行版} & \text{Ubuntu版本} & \text{realsense-ros分支} \\ \hline \text{Noetic} & 20.04 \, (\text{Focal}) & \text{ros1-legacy分支} \\ \text{Melodic} & 18.04 \, (\text{Bionic}) & \text{2.3.x版本} \\ \text{Foxy} & 20.04 \, (\text{Focal}) & \text{ros2分支} \\ \text{Humble} & 22.04 \, (\text{Jammy}) & \text{ros2分支} \\ \hline \end{array} $$ ### 版本选择建议 1. **Ubuntu 20.04 LTS** - 推荐使用ROS Noetic + `ros1-legacy`分支 -ROS 2 Foxy + `ros2`分支 - 需注意librealsense SDK需≥2.50.0[^3] 2. **Ubuntu 22.04 LTS** - 仅支持ROS 2 Humble - 需要手动编译DDS实现(Fast-DDS ≥2.4.0)[^3] 3. **Ubuntu 18.04 LTS** - 仅支持ROS Melodic - 建议使用预编译包: ```bash sudo apt-get install ros-melodic-realsense2-camera ``` ### 编译注意事项 当从源码构建时: ```bash # ROS1环境配置 source /opt/ros/noetic/setup.bash # 编译工作空间 catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值