3.gemini336相机在ubuntu22.04的ros2下运行

在这里,已经提前在ubuntu22.04系统下安装好了ros2,让相继运行步骤如下:

1.创建 ROS2 工作空间

复制代码
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src

2.克隆官方源码(GitHub / Gitee 二选一)

复制代码
# GitHub(海外/稳定)
git clone -b v2-main https://github.com/orbbec/OrbbecSDK_ROS2.git
# Gitee(国内/加速)
# git clone -b v2-main https://gitee.com/orbbecdeveloper/OrbbecSDK_ROS2.git

3.安装编译依赖

复制代码
sudo apt install -y libgflags-dev nlohmann-json3-dev libgoogle-glog-dev \
ros-humble-image-transport ros-humble-image-publisher ros-humble-camera-info-manager \
ros-humble-diagnostic-updater ros-humble-diagnostic-msgs ros-humble-xacro

4.编译、设置环境

复制代码
cd ~/ros2_ws
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
# 加载环境(加入~/.bashrc可永久生效)
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc
source ~/.bashrc

5.安装 udev 规则(源码版专用脚本)

复制代码
cd ~/ros2_ws/src/OrbbecSDK_ROS2/orbbec_camera/scripts
sudo bash install_udev_rules.sh
sudo udevadm control --reload-rules && sudo udevadm trigger

6.验证安装

复制代码
# 查看包是否存在
ros2 pkg list | grep orbbec
# 启动相机节点(以Gemini 335为例)
ros2 launch orbbec_camera gemini_330_series.launch.py

若ros2 pkg list | grep orbbec命令后有orbbec_camera、orbbec_camera_msgs、orbbec_description,则这个命令的验证成功,如果空白,没有这些的输出,则编译失败,有可能是ros2的backward_ros包没有安装,直接运行以下命令:

复制代码
sudo apt update
sudo apt install -y ros-humble-backward-ros

安装完成后,直接重新编译Orbbec 包(backward_ros 已经被打包进 Ubuntu 的 ROS 2 软件源里了,直接一条命令就能安装,完全不用下载源码)

复制代码
cd ~/ros2_ws
rm -rf build install log
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
source install/setup.bash
ros2 pkg list | grep orbbec

把 ROS2 和工作空间的环境永久加到 .bashrc 里,这样每次打开终端都自动加载:

复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc
echo "conda deactivate" >> ~/.bashrc
source ~/.bashrc

7.验证成功后,运行相机

7.1 运行相机

复制代码
ros2 launch orbbec_camera gemini_330_series.launch.py

7.2 运行rqt_image_view

复制代码
ros2 run rqt_image_view rqt_image_view

想永久解决 rqt_image_view: command not found 的问题,可以把环境变量加到 .bashrc 里:

复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc
source ~/.bashrc

7.3 客户端界面运行和设置

复制代码
# 安装 RViz(如果没装)
sudo apt install -y ros-humble-rviz2

# 启动 RViz
ros2 run rviz2 rviz2

打开界面后,设置如下:

1.左侧 Displays 面板里:

  • 找到 Fixed Frame,把默认的 map 改成 camera_color_frame
  • 改完之后,那个红色报错提示就会消失了

2. 添加彩色图像

  • 点击左下角的 Add 按钮
  • 在弹出的窗口里,选择 Image,点击 OK
  • 左侧列表里会出现新的 Image 项,点进去设置:
    • Topic 改成 /camera/color/image_raw
    • 调整 Image Rendering 里的 Size,可以让画面显示得更合适

3.添加3D点云

  • 再点一次 Add 按钮
  • 选择 PointCloud2,点击 OK
  • 左侧新出现的 PointCloud2 项里:
    • Topic 改成 /camera/depth/points
    • Style 改成 Flat Squares,点云会更清晰
    • 可以把 Size (m) 调到 0.005,点云更细腻

7.4 ros2调取摄像头的数据和信息

7.4.1 查看相机内参(标定信息)

复制代码
ros2 topic echo /camera/color/camera_info

7.4.2 查看话题发布频率(帧率)

复制代码
ros2 topic hz /camera/color/image_raw
相关推荐
2zcode10 小时前
基于MATLAB图像处理的金属表面缺陷检测与工业量测系统设计与实现
图像处理·数码相机·matlab
sali-tec16 小时前
C# 基于OpenCv的视觉工作流-章93-YOLO手部姿态
图像处理·人工智能·数码相机·opencv·yolo·计算机视觉
取个名字太难了~2 天前
从通用到专用:影像 SDK 的场景化封装与垂直行业落地实践
android·数码相机·美颜·相机连接·demu
私人珍藏库3 天前
[Android] Doka相机-AI摄影构图质感滤镜
人工智能·数码相机
胖咕噜的稞达鸭19 天前
如何写好一个skill
人工智能·数码相机
Hello-FPGA19 天前
CameraLink相机模拟器 信号源加速激光雷达系统算法开发
数码相机
双翌视觉19 天前
机器视觉系统为何离不开光学滤光片?
人工智能·数码相机·视觉检测·制造
3DVisionary20 天前
XTDIC-VG视频引伸计技术原理解析:金属疲劳测试的“非接触革命“
python·数码相机·音视频·非接触测量·xtdic-vg·视频引伸计·金属疲劳测试
_李小白20 天前
【智能驾驶:视觉感知后处理 阅读笔记】Day4: 相机成像模型与畸变
笔记·数码相机
Hello-FPGA21 天前
基于VU13P VU系列FPGA的高性能CoaXpress 图像采集系统
数码相机