news 2026/6/19 23:03:00

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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

只编译以下3个包

cd ~/ros2_ws # 1. 先只编译相机包(安全) colcon build --packages-select orbbec_camera orbbec_camera_msgs orbbec_description --symlink-install --event-handlers console_direct+ # 2. 刷新环境 source ~/ros2_ws/install/setup.bash # 3. 测试相机是否工作 ros2 launch orbbec_camera orbbec_camera.launch.py enable_depth_align:=false rgb_encoding:=bgr8

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

如果以后需要全部重新编译(比如系统大更新后),可以用:

# 清理所有编译产物(谨慎操作!) rm -rf ~/ros2_ws/build ~/ros2_ws/install ~/ros2_ws/log # 重新编译所有包 colcon build --symlink-install

📊 验证其他包是否完好

# 查看已安装的包(应该能看到之前的包还在) ls ~/ros2_ws/install/ # 运行之前的节点测试 ros2 run vision_node your_node_name # 替换成你之前的节点名

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

或者

ros2 launch orbbec_camera orbbec_camera.launch.py enable_depth_align:=false

启动相机节点

ros2 launch orbbec_camera gemini_330_series.launch.py

调整相机曝光度

ros2 param set /camera/camera depth_exposure 28000 ros2 param set /camera/camera depth_gain 24 ros2 param set /camera/camera enable_laser true

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
7,4,3 打开摄像头
ros2 run orbbec_camera orbbec_camera_node --ros-args -p color_topic_name:=/camera_head/rgb -p depth_topic_name:=/camera_head/depth -p color_camera_info_topic_name:=/camera_head/camera_info

如果没有彩色图,可以终端强制打开彩色图:

ros2 run orbbec_camera orbbec_camera_node --ros-args \ -p enable_color:=true \ -p color_width:=640 \ -p color_height:=480 \ -p color_fps:=30

8.深度图和彩图坐标对齐

找到launch 文件应该就在这里

~/ros2_ws/src/OrbbecSDK_ROS2-2-main/orbbec_camera/launch/ob_camera.launch.py

打开文件修改函数generate_launch_arguments(),在函数的最后加2行参数,加完参数后如下:

def generate_launch_arguments(): launch_arguments = [ #general config DeclareLaunchArgument('camera_model', default_value=default_camera_model), DeclareLaunchArgument('config_file_path', default_value=''), #multi-device sync param DeclareLaunchArgument('camera_name', default_value='camera'), DeclareLaunchArgument('usb_port', default_value=''), DeclareLaunchArgument('device_num', default_value='1'), DeclareLaunchArgument('sync_mode', default_value='standalone'), DeclareLaunchArgument('trigger_out_enabled', default_value='true'), #instra-process demo set DeclareLaunchArgument('use_intra_process_comms', default_value='false'), DeclareLaunchArgument('attach_component_container_enable', default_value='false'), DeclareLaunchArgument('attach_component_container_name', default_value=default_component_container_name), # 👇 👇 👇 你加的两行(开启深度彩图对齐) DeclareLaunchArgument('depth_registration', default_value='true'), DeclareLaunchArgument('align_mode', default_value='depth_to_color'), ] return launch_arguments

加完参数后编译

source /opt/ros/humble/setup.bash cd ~/ros2_ws colcon build --packages-select orbbec_camera_msgs orbbec_camera orbbec_description source install/setup.bash ros2 launch orbbec_camera orbbec_camera.launch.py

最后运行相机节点就可以了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/19 22:49:50

Mi-Create:小米手表表盘设计的终极免费可视化工具

Mi-Create:小米手表表盘设计的终极免费可视化工具 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 还在为小米手表找不到心仪的表盘而烦恼吗&#x…

作者头像 李华
网站建设 2026/6/19 22:44:49

Logstash:从Syslog到Elasticsearch的日志管道实战解析

1. 为什么需要Logstash处理Syslog日志 想象一下你管理着几十台服务器,每台机器都在不停地生成日志。这些日志就像散落一地的拼图碎片,而你需要把它们拼成完整的画面。传统做法是登录每台服务器查看/var/log/syslog,这就像拿着放大镜一片片找…

作者头像 李华
网站建设 2026/6/19 22:40:47

500-AI-Agents-Projects学习之一.环境搭建

项目介绍 项目是基于 MIT 协议开源,汇总 500 余个 AI Agent 实战项目与落地用例,围绕四大主流框架搭建内容体系,兼顾入门学习、技术选型、行业落地与社区共建,是 AI 智能体开发的一站式参考资料 项目地址 https://github.com/a…

作者头像 李华
网站建设 2026/6/19 22:30:19

MC9S12XE复位与端口模块(PIM)配置详解:嵌入式系统稳定性的基石

1. 项目概述:深入MC9S12XE的复位与端口世界在嵌入式开发的江湖里,飞思卡尔的MC9S12XE系列算得上是“老将”了,尤其在汽车电子和工业控制领域,它的身影无处不在。我接触这个系列芯片有十多年了,从早期的S12到后来的XE系…

作者头像 李华
网站建设 2026/6/19 22:28:57

MC68HC908RFRK2:经典8位MCU架构解析与低功耗无线应用实战

1. 项目概述与核心价值在嵌入式开发领域,尤其是对功耗和成本极为敏感的无线遥控钥匙、智能传感器节点等应用中,选择一颗合适的微控制器是项目成败的关键。今天我想和大家深入聊聊一颗颇具代表性的经典芯片——MC68HC908RFRK2。这颗由摩托罗拉&#xff08…

作者头像 李华
网站建设 2026/6/19 22:19:58

CNN在脑肿瘤MRI诊断中的实战落地与可解释性设计

1. 这不是科幻,是正在手术室门口待命的AI助手 你有没有想过,当放射科医生盯着一张脑部MRI片子皱眉时,旁边可能正站着一个不眨眼、不疲倦、连续看了十万张同类图像的“数字助手”?它不靠直觉,不凭经验,而是用…

作者头像 李华