Depth Image Not Publishing on ROS2 with Femto Mega Camera
Hello,
I am encountering an issue with the Orbbec Femto Mega camera while using ROS2 Humble. Despite configuring the camera node and setting the necessary parameters, the depth image is not being published on the /camera/depth/image_raw topic. Below are the details of my setup and the steps I've taken to troubleshoot the issue:
1. System Information:
- Camera Model: Orbbec Femto Mega
- ROS2 Distro: Humble
- Firmware Version: 1.2.7
- SDK Version: v1.10.9-20240705-3a55569
- Connection: USB 3.2 and Ethernet (tested both)
2. Launch File Configuration: I have used the launch file provided in your repository.
3. Observations:
- The IR and RGB images are being published successfully.
- The depth image, however, is not being published on the /camera/depth/image_raw topic.
- The point cloud data, which depends on the depth image, is being published, indicating that the depth information is being processed but not published.
4. Additional Tests:
- I also tested the setup using an Ethernet connection, but the issue persists.
- Verified the topics using ros2 topic list and ros2 topic echo /camera/depth/image_raw, confirming that the data in depth topic is missing.
5. Parameter List:
- I retrieved all parameters using ros2 param list /orbbec_camera_node and ros2 param get commands, ensuring they are correctly set.
Despite these steps, the depth image is still not being published. Any guidance or suggestions on how to resolve this issue would be greatly appreciated.
Thank you for your assistance.
Our engineer has fixed this bug. Is your issue resolved now?
我遇到了类似的问题:深度主题发布的数据有问题!不知道是否是我使用上哪里有问题
- 启动命令:
ros2 launch orbbec_camera gemini_330_series.launch.py,未进行图像对齐操作; 下面是ros2相机节点启动的日志,color分辨率为1280x720,depth分辨率为848x480,但是我通过命令查询ros2 topic echo /camera/color[depth]/camera_info显示他们的分辨率都为1280x720,echo内容显示frame_id都是camera_color_optical_frame;
[INFO] [launch]: All log files can be found below /home/robot/.ros/log/2025-04-25-09-37-05-741483-robot-virtual-machine-17898
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container-1]: process started with pid [17910]
[component_container-1] [INFO] [1745545026.065747898] [camera.camera_container]: Load Library: /home/robot/workspace/orbbec_ros2_ws/install/orbbec_camera/lib/liborbbec_camera.so
[component_container-1] [INFO] [1745545026.112156096] [camera.camera_container]: Found class: rclcpp_components::NodeFactoryTemplate<orbbec_camera::OBCameraNodeDriver>
[component_container-1] [INFO] [1745545026.112251760] [camera.camera_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<orbbec_camera::OBCameraNodeDriver>
[component_container-1] [04/25 09:37:06.117333][info][17910][Context.cpp:68] Context created with config: /home/robot/workspace/orbbec_ros2_ws/install/orbbec_camera/share/orbbec_camera/config/OrbbecSDKConfig_v1.0.xml
[component_container-1] [04/25 09:37:06.117356][info][17910][Context.cpp:73] Work directory=/home/robot/workspace/orbbec_ros2_ws, SDK version=v1.10.22-20250410-46139de
[component_container-1] [04/25 09:37:06.117367][info][17910][LinuxPal.cpp:32] createObPal: create LinuxPal!
[component_container-1] [04/25 09:37:06.206621][info][17910][LinuxPal.cpp:166] Create PollingDeviceWatcher!
[component_container-1] [04/25 09:37:06.206667][info][17910][DeviceManager.cpp:15] Current found device(s): (1)
[component_container-1] [04/25 09:37:06.206670][info][17910][DeviceManager.cpp:24] - Name: Orbbec Gemini 335, PID: 0x0800, SN/ID: CP156410004S, Connection: USB3.2
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/camera/camera' in container '/camera/camera_container'
[component_container-1] [INFO] [1745545026.218572961] [camera.camera]: Connecting to the default device
[component_container-1] [INFO] [1745545026.411289005] [camera.camera]: Select device cost 192 ms
[component_container-1] [INFO] [1745545026.411358627] [camera.camera]: Try to connect device via USB3.2
[component_container-1] [INFO] [1745545026.411439323] [camera.camera]: OBCameraNode: use_intra_process: OFF
[component_container-1] [INFO] [1745545026.412505364] [camera.camera]: current time domain: device
[component_container-1] [INFO] [1745545026.426014194] [camera.camera]: Setting heartbeat to OFF
[component_container-1] [INFO] [1745545026.426499864] [camera.camera]: Create align filter
[component_container-1] [INFO] [1745545026.427076854] [camera.camera]: Depth process is HW D2D
[component_container-1] [INFO] [1745545026.427106316] [camera.camera]: Setting LDP to ON
[component_container-1] [INFO] [1745545026.432992806] [camera.camera]: Setting laser control to 1
[component_container-1] [INFO] [1745545026.437766023] [camera.camera]: Setting laser on off mode to 0
[component_container-1] [INFO] [1745545026.438520303] [camera.camera]: Available presets:
[component_container-1] [INFO] [1745545026.438582926] [camera.camera]: Preset 0: Custom
[component_container-1] [INFO] [1745545026.438587866] [camera.camera]: Preset 1: Default
[component_container-1] [INFO] [1745545026.438591286] [camera.camera]: Preset 2: Hand
[component_container-1] [INFO] [1745545026.438594289] [camera.camera]: Preset 3: High Accuracy
[component_container-1] [INFO] [1745545026.438597292] [camera.camera]: Preset 4: High Density
[component_container-1] [INFO] [1745545026.438600139] [camera.camera]: Preset 5: Medium Density
[component_container-1] [INFO] [1745545026.438602985] [camera.camera]: Preset 6: Factory Calib
[component_container-1] [INFO] [1745545026.438606008] [camera.camera]: Load device preset: Default
[component_container-1] [INFO] [1745545026.438628832] [camera.camera]: Device preset Default loaded
[component_container-1] [INFO] [1745545026.439471567] [camera.camera]: Current sync mode: OB_MULTI_DEVICE_SYNC_MODE_STANDALONE
[component_container-1] [INFO] [1745545026.439507106] [camera.camera]: Set sync mode: OB_MULTI_DEVICE_SYNC_MODE_STANDALONE
[component_container-1] [INFO] [1745545026.439537043] [camera.camera]: set color rotation to 0
[component_container-1] [INFO] [1745545026.439548029] [camera.camera]: set depth rotation to 0
[component_container-1] [INFO] [1745545026.439557061] [camera.camera]: set left ir rotation to 0
[component_container-1] [INFO] [1745545026.439565798] [camera.camera]: set right ir rotation to 0
[component_container-1] [INFO] [1745545026.439569959] [camera.camera]: Setting color auto white balance to ON
[component_container-1] [INFO] [1745545026.450089590] [camera.camera]: Setting color auto exposure to ON
[component_container-1] [INFO] [1745545026.455031199] [camera.camera]: Setting IR auto exposure to ON
[component_container-1] [INFO] [1745545026.462856111] [camera.camera]: Setting DecimationFilter......
[component_container-1] [INFO] [1745545026.462920900] [camera.camera]: set DecimationFilter to false
[component_container-1] [INFO] [1745545026.462952875] [camera.camera]: Skip setting filter: DecimationFilter
[component_container-1] [INFO] [1745545026.462959270] [camera.camera]: Setting HDRMerge......
[component_container-1] [INFO] [1745545026.462963246] [camera.camera]: set HDRMerge to false
[component_container-1] [INFO] [1745545026.462966921] [camera.camera]: Skip setting filter: HDRMerge
[component_container-1] [INFO] [1745545026.462971580] [camera.camera]: Setting SequenceIdFilter......
[component_container-1] [INFO] [1745545026.462975108] [camera.camera]: Skip setting filter: SequenceIdFilter
[component_container-1] [INFO] [1745545026.462979253] [camera.camera]: Setting NoiseRemovalFilter......
[component_container-1] [INFO] [1745545026.462982430] [camera.camera]: set NoiseRemovalFilter to true
[component_container-1] [INFO] [1745545026.462995773] [camera.camera]: Default noise removal filter params: disp_diff: 256, max_size: 80
[component_container-1] [INFO] [1745545026.462999507] [camera.camera]: Set noise removal filter params: disp_diff: 256, max_size: 80
[component_container-1] [INFO] [1745545026.463004778] [camera.camera]: Setting SpatialAdvancedFilter......
[component_container-1] [INFO] [1745545026.463008028] [camera.camera]: set SpatialAdvancedFilter to false
[component_container-1] [INFO] [1745545026.463011276] [camera.camera]: Skip setting filter: SpatialAdvancedFilter
[component_container-1] [INFO] [1745545026.463014757] [camera.camera]: Setting SpatialFastFilter......
[component_container-1] [INFO] [1745545026.463017670] [camera.camera]: Skip setting filter: SpatialFastFilter
[component_container-1] [INFO] [1745545026.463049863] [camera.camera]: Setting SpatialModerateFilter......
[component_container-1] [INFO] [1745545026.463058743] [camera.camera]: Skip setting filter: SpatialModerateFilter
[component_container-1] [INFO] [1745545026.463062185] [camera.camera]: Setting TemporalFilter......
[component_container-1] [INFO] [1745545026.463065117] [camera.camera]: set TemporalFilter to false
[component_container-1] [INFO] [1745545026.463068622] [camera.camera]: Skip setting filter: TemporalFilter
[component_container-1] [INFO] [1745545026.463072244] [camera.camera]: Setting HoleFillingFilter......
[component_container-1] [INFO] [1745545026.463075205] [camera.camera]: set HoleFillingFilter to false
[component_container-1] [INFO] [1745545026.463078437] [camera.camera]: Skip setting filter: HoleFillingFilter
[component_container-1] [INFO] [1745545026.463082092] [camera.camera]: Setting DisparityTransform......
[component_container-1] [INFO] [1745545026.463085040] [camera.camera]: Skip setting filter: DisparityTransform
[component_container-1] [INFO] [1745545026.463088412] [camera.camera]: Setting ThresholdFilter......
[component_container-1] [INFO] [1745545026.463091333] [camera.camera]: set ThresholdFilter to false
[component_container-1] [INFO] [1745545026.463095243] [camera.camera]: Skip setting filter: ThresholdFilter
[component_container-1] [INFO] [1745545026.473441479] [camera.camera]: stream color is enabled - width: 1280, height: 720, fps: 30, Format: OB_FORMAT_MJPG
[component_container-1] [INFO] [1745545026.473878474] [camera.camera]: stream depth is enabled - width: 848, height: 480, fps: 30, Format: OB_FORMAT_Y16
[component_container-1] [INFO] [1745545026.500954821] [camera.camera]: Publish diagnostics every 1 seconds
[component_container-1] [INFO] [1745545026.501887631] [camera.camera]: Enable color stream
[component_container-1] [INFO] [1745545026.501920727] [camera.camera]: Stream color width: 1280 height: 720 fps: 30 format: MJPG
[component_container-1] [INFO] [1745545026.501929236] [camera.camera]: Enable depth stream
[component_container-1] [INFO] [1745545026.501933565] [camera.camera]: Stream depth width: 848 height: 480 fps: 30 format: Y16
[component_container-1] [INFO] [1745545026.525747335] [camera.camera]: Enable frame sync
[component_container-1] [INFO] [1745545026.525821243] [camera.camera]: Setting LDP to ON
[component_container-1] [INFO] [1745545026.531520109] [camera.camera]: Device Orbbec Gemini 335 connected
[component_container-1] [INFO] [1745545026.531545156] [camera.camera]: Serial number: CP156410004S
[component_container-1] [INFO] [1745545026.531551319] [camera.camera]: Firmware version: 1.2.81
[component_container-1] [INFO] [1745545026.531556080] [camera.camera]: Hardware version: 0.1
[component_container-1] [INFO] [1745545026.531559074] [camera.camera]: device unique id: 4-1-3
[component_container-1] [INFO] [1745545026.531564444] [camera.camera]: Current node pid: 17910
[component_container-1] [INFO] [1745545026.531567434] [camera.camera]: usb connect type: USB3.2
[component_container-1] [INFO] [1745545026.531570504] [camera.camera]: Start device cost 323 ms
[component_container-1] [INFO] [1745545026.531574438] [camera.camera]: Initialize device cost 120 ms
[component_container-1] [INFO] [1745545026.976492523] [camera.camera]: Publishing static transform from color to depth
[component_container-1] [INFO] [1745545026.976526166] [camera.camera]: Translation 14.0195, -0.205825, 1.75859
[component_container-1] [INFO] [1745545026.976532104] [camera.camera]: Rotation 0.000496559, -0.00110534, 0.000219672, 0.999999
[component_container-1] [INFO] [1745545026.976536482] [camera.camera]: Publishing static transform from depth to depth
[component_container-1] [INFO] [1745545026.976540464] [camera.camera]: Translation 0, 0, 0
[component_container-1] [INFO] [1745545026.976544360] [camera.camera]: Rotation 0, 0, 0, 1
ros2 topic echo /camera/depth/camera_info信息显示如下:
header:
stamp:
sec: 1745547176
nanosec: 35098880
frame_id: camera_color_optical_frame
height: 720
width: 1280
distortion_model: rational_polynomial
ros2 topic echo /camera/color/camera_info信息显示如下:
header:
stamp:
sec: 1745547257
nanosec: 52722944
frame_id: camera_color_optical_frame
height: 720
width: 1280
distortion_model: rational_polynomial
- 我通过
ros2 launch orbbec_camera gemini_330_series.launch.py enable_color:=false禁用color图像之后,depth主题获得的图像信息如下:
header:
stamp:
sec: 1745546554
nanosec: 55156992
frame_id: camera_depth_optical_frame
height: 480
width: 848
encoding: 16UC1
is_bigendian: 0
step: 1696
data:
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- ‘...’
可以看到深度图分辨率,frame_id是正确的,但data是空的。
- 有一个很奇怪的现象就是我在rviz2里,监控depth图像,感觉它显示又是正确的。