Skip to content

使用orbbecsdk_ros2的gemini435le.launch.py出现问题 #143

@rokkieluo

Description

@rokkieluo

我在使用orbbecsdk_ros2的gemini435le.launch.py出现问题
当我在运行ros2 launch orbbec_camera gemini435le.launch.py时会出现打不开的相机的情况
终端报错如下:
cat@lubancat:~/orbbec_ros2_ws$ ros2 launch orbbec_camera gemini435_le.launch.py
[INFO] [launch]: All log files can be found below /home/cat/.ros/log/2025-09-20-16-29-43-615495-lubancat-701678
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container-1]: process started with pid [701757]
[component_container-1] [INFO] [1758356984.469566040] [camera.camera_container]: Load Library: /home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/liborbbec_camera.so
[component_container-1] [INFO] [1758356984.651435261] [camera.camera_container]: Found class: rclcpp_components::NodeFactoryTemplate<orbbec_camera::OBCameraNodeDriver>
[component_container-1] [INFO] [1758356984.654557160] [camera.camera_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<orbbec_camera::OBCameraNodeDriver>
[component_container-1] [INFO] [1758356984.707551577] [camera.camera]: setUvcBackendType:libuvc
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/camera/camera' in container '/camera/camera_container'
[component_container-1] [INFO] [1758356985.721442642] [camera.camera]: Connecting to device with net ip: 192.168.1.10
[component_container-1] [INFO] [1758356985.721591096] [camera.camera]: Before lock: Select device net ip: 192.168.1.10
[component_container-1] [INFO] [1758356985.721615303] [camera.camera]: After lock: Select device net ip: 192.168.1.10
[component_container-1] [INFO] [1758356985.721657594] [camera.camera]: FindDeviceByNetIP device net ip 192.168.1.10
[component_container-1] [INFO] [1758356985.721684426] [camera.camera]: getDeviceByNetIP device net ip 192.168.1.10 done
[component_container-1] [INFO] [1758356988.692621485] [camera.camera]: Select device cost 2971 ms
[component_container-1] [INFO] [1758356988.692991306] [camera.camera]: Try to connect device via Ethernet
[component_container-1] [INFO] [1758356988.693619827] [camera.camera]: OBCameraNode: use_intra_process: OFF
[component_container-1] [INFO] [1758356988.737162257] [camera.camera]: current time domain: global
[component_container-1] [INFO] [1758356988.737354751] [camera.camera]: hdr_index1_laser_control_ 1 hdr_index1_depth_exposure_ 1 hdr_index1_depth_gain_ 16 hdr_index1_ir_brightness_ 20 hdr_index1_ir_ae_max_exposure_ 2000
[component_container-1]
[component_container-1] [INFO] [1758356988.737420374] [camera.camera]: hdr_index0_laser_control_ 1 hdr_index0_depth_exposure_ 7500 hdr_index0_depth_gain_ 16 hdr_index0_ir_brightness_ 60 hdr_index0_ir_ae_max_exposure_ 10000
[component_container-1]
[component_container-1] [INFO] [1758356988.737469664] [camera.camera]: laser_index1_laser_control_ 0 laser_index1_depth_exposure_ 3000 laser_index1_depth_gain_ 16 laser_index1_ir_brightness_ 60 laser_index1_ir_ae_max_exposure_ 17000
[component_container-1]
[component_container-1] [INFO] [1758356988.737513996] [camera.camera]: laser_index0_laser_control_ 1 laser_index0_depth_exposure_ 3000 laser_index0_depth_gain_ 16 laser_index0_ir_brightness_ 60 laser_index0_ir_ae_max_exposure_ 30000
[component_container-1]
[component_container-1] [INFO] [1758356989.143032881] [camera.camera]: Setting heartbeat to OFF
[component_container-1] [INFO] [1758356989.143368287] [camera.camera]: Create align filter
[component_container-1] [INFO] [1758356989.144235675] [camera.camera]: Depth process is HW
[component_container-1] [INFO] [1758356989.144298382] [camera.camera]: Setting LDP to ON
[component_container-1] [INFO] [1758356989.150789214] [camera.camera]: Setting G300 laser control to 1
[component_container-1] [INFO] [1758356989.154032151] [camera.camera]: Setting laser control to 1
[component_container-1] [INFO] [1758356989.157045262] [camera.camera]: Available presets:
[component_container-1] [INFO] [1758356989.158086187] [camera.camera]: Load device preset: Default
[component_container-1] [ERROR] [1758356989.159997709] [camera.camera]: Error in setupDevices at line 311: Component 21 not found!
[component_container-1] [ERROR] [1758356989.164822012] [camera.camera]: Failed to load device preset: Component 21 not found!
[component_container-1] [INFO] [1758356989.169547151] [camera.camera]: Current sync mode: OB_MULTI_DEVICE_SYNC_MODE_STANDALONE
[component_container-1] [INFO] [1758356989.217095077] [camera.camera]: Set sync mode: OB_MULTI_DEVICE_SYNC_MODE_STANDALONE
[component_container-1] [INFO] [1758356989.217405692] [camera.camera]: Setting color mirror to OFF
[component_container-1] [INFO] [1758356989.217633768] [camera.camera]: Setting color flip to OFF
[component_container-1] [INFO] [1758356989.217871177] [camera.camera]: Setting depth mirror to OFF
[component_container-1] [INFO] [1758356989.217976756] [camera.camera]: Setting depth flip to OFF
[component_container-1] [INFO] [1758356989.218082628] [camera.camera]: Setting noise removal filter:ON
[component_container-1] [INFO] [1758356989.218141543] [camera.camera]: Setting color auto white balance to ON
[component_container-1] [INFO] [1758356989.221019617] [camera.camera]: Setting color auto exposure to ON
[component_container-1] [INFO] [1758356989.224434423] [camera.camera]: Setting depth auto exposure priority to OFF
[component_container-1] [INFO] [1758356989.228200302] [camera.camera]: Setting IR auto exposure to ON
[component_container-1] [INFO] [1758356989.563819440] [camera.camera]: default noise removal filter min diff: 512
[component_container-1] [INFO] [1758356989.564244093] [camera.camera]: after set noise removal filter min diff: 256
[component_container-1] [INFO] [1758356989.564350840] [camera.camera]: default noise removal filter max size: 40
[component_container-1] [INFO] [1758356989.564493460] [camera.camera]: after set noise removal filter max size: 80
[component_container-1] [INFO] [1758356989.564894197] [camera.camera]: Setting accel data correction to ON
[component_container-1] [INFO] [1758356989.564986361] [camera.camera]: Setting gyro data correction to ON
[component_container-1] [INFO] [1758356989.566300860] [camera.camera]: Setting DecimationFilter......
[component_container-1] [INFO] [1758356989.566414023] [camera.camera]: set DecimationFilter to false
[component_container-1] [INFO] [1758356989.566582018] [camera.camera]: Skip setting filter: DecimationFilter
[component_container-1] [INFO] [1758356989.566663974] [camera.camera]: Setting HDRMerge......
[component_container-1] [INFO] [1758356989.566722888] [camera.camera]: set HDRMerge to false
[component_container-1] [INFO] [1758356989.566781803] [camera.camera]: Skip setting filter: HDRMerge
[component_container-1] [INFO] [1758356989.566849176] [camera.camera]: Setting SequenceIdFilter......
[component_container-1] [INFO] [1758356989.566906924] [camera.camera]: set SequenceIdFilter to false
[component_container-1] [INFO] [1758356989.566965839] [camera.camera]: Skip setting filter: SequenceIdFilter
[component_container-1] [INFO] [1758356989.567034962] [camera.camera]: Setting SpatialAdvancedFilter......
[component_container-1] [INFO] [1758356989.567091543] [camera.camera]: set SpatialAdvancedFilter to false
[component_container-1] [INFO] [1758356989.567151041] [camera.camera]: Skip setting filter: SpatialAdvancedFilter
[component_container-1] [INFO] [1758356989.567218706] [camera.camera]: Setting TemporalFilter......
[component_container-1] [INFO] [1758356989.567272246] [camera.camera]: set TemporalFilter to false
[component_container-1] [INFO] [1758356989.567321827] [camera.camera]: Skip setting filter: TemporalFilter
[component_container-1] [INFO] [1758356989.567382492] [camera.camera]: Setting HoleFillingFilter......
[component_container-1] [INFO] [1758356989.567433241] [camera.camera]: set HoleFillingFilter to false
[component_container-1] [INFO] [1758356989.567484281] [camera.camera]: Skip setting filter: HoleFillingFilter
[component_container-1] [INFO] [1758356989.567543195] [camera.camera]: Setting DisparityTransform......
[component_container-1] [INFO] [1758356989.567594527] [camera.camera]: set DisparityTransform to true
[component_container-1] [INFO] [1758356989.567644692] [camera.camera]: Skip setting filter: DisparityTransform
[component_container-1] [INFO] [1758356989.567703607] [camera.camera]: Setting ThresholdFilter......
[component_container-1] [INFO] [1758356989.567751147] [camera.camera]: set ThresholdFilter to false
[component_container-1] [INFO] [1758356989.567821145] [camera.camera]: Skip setting filter: ThresholdFilter
[component_container-1] [INFO] [1758356989.582036728] [camera.camera]: Setting DecimationFilter......
[component_container-1] [INFO] [1758356989.582223097] [camera.camera]: set color DecimationFilter to false
[component_container-1] [ERROR] [1758356989.584001623] [camera.camera]: Failed to get color profile: Invalid input, No matched video stream profile found!
[component_container-1] [ERROR] [1758356989.584101078] [camera.camera]: Stream: OB_STREAM_COLOR, Stream Index: 0, Width: 640, Height: 400, FPS: 20, Format: OB_FORMAT_MJPG
[component_container-1] [ERROR] [1758356989.584158826] [camera.camera]: Error: The device might be connected via USB 2.0. Please verify your configuration and try again. The current process will now exit.
[component_container-1] [INFO] [1758356989.584216866] [camera.camera]: Available profiles:
[component_container-1] [INFO] [1758356989.584740974] [camera.camera]: color profile: 1280x800 10fps MJPG
[component_container-1] [INFO] [1758356989.584842471] [camera.camera]: color profile: 1280x800 10fps I420
[component_container-1] [INFO] [1758356989.584921218] [camera.camera]: color profile: 1280x800 10fps RGB888
[component_container-1] [INFO] [1758356989.584997341] [camera.camera]: color profile: 1280x800 10fps BGR
[component_container-1] [INFO] [1758356989.585072005] [camera.camera]: color profile: 1280x800 10fps BGRA
[component_container-1] [INFO] [1758356989.585147253] [camera.camera]: color profile: 1280x800 5fps I420
[component_container-1] [INFO] [1758356989.585221917] [camera.camera]: color profile: 1280x800 5fps RGB888
[component_container-1] [INFO] [1758356989.585295998] [camera.camera]: color profile: 1280x800 5fps BGR
[component_container-1] [INFO] [1758356989.585369496] [camera.camera]: color profile: 1280x800 5fps BGRA
[component_container-1] [INFO] [1758356989.585445618] [camera.camera]: color profile: 1280x800 5fps MJPG
[component_container-1] [INFO] [1758356989.585519116] [camera.camera]: color profile: 1280x720 10fps I420
[component_container-1] [INFO] [1758356989.585593780] [camera.camera]: color profile: 1280x720 10fps RGB888
[component_container-1] [INFO] [1758356989.585667569] [camera.camera]: color profile: 1280x720 10fps BGR
[component_container-1] [INFO] [1758356989.585741942] [camera.camera]: color profile: 1280x720 10fps BGRA
[component_container-1] [INFO] [1758356989.585816023] [camera.camera]: color profile: 1280x720 10fps MJPG
[component_container-1] [INFO] [1758356989.585890104] [camera.camera]: color profile: 1280x720 5fps I420
[component_container-1] [INFO] [1758356989.586115847] [camera.camera]: color profile: 1280x720 5fps RGB888
[component_container-1] [INFO] [1758356989.586199844] [camera.camera]: color profile: 1280x720 5fps BGR
[component_container-1] [INFO] [1758356989.586275091] [camera.camera]: color profile: 1280x720 5fps BGRA
[component_container-1] [INFO] [1758356989.586349464] [camera.camera]: color profile: 1280x720 5fps MJPG
[component_container-1] [INFO] [1758356989.586423837] [camera.camera]: color profile: 800x600 10fps I420
[component_container-1] [INFO] [1758356989.586498209] [camera.camera]: color profile: 800x600 10fps RGB888
[component_container-1] [INFO] [1758356989.586571999] [camera.camera]: color profile: 800x600 10fps BGR
[component_container-1] [INFO] [1758356989.586646371] [camera.camera]: color profile: 800x600 10fps BGRA
[component_container-1] [INFO] [1758356989.586721035] [camera.camera]: color profile: 800x600 10fps MJPG
[component_container-1] [INFO] [1758356989.586795408] [camera.camera]: color profile: 800x600 5fps I420
[component_container-1] [INFO] [1758356989.586869197] [camera.camera]: color profile: 800x600 5fps RGB888
[component_container-1] [INFO] [1758356989.586943862] [camera.camera]: color profile: 800x600 5fps BGR
[component_container-1] [INFO] [1758356989.587017651] [camera.camera]: color profile: 800x600 5fps BGRA
[component_container-1] [INFO] [1758356989.587092023] [camera.camera]: color profile: 800x600 5fps MJPG
[component_container-1] [INFO] [1758356989.587172229] [camera.camera]: color profile: 640x400 10fps I420
[component_container-1] [INFO] [1758356989.587323016] [camera.camera]: color profile: 640x400 10fps RGB888
[component_container-1] [INFO] [1758356989.587403222] [camera.camera]: color profile: 640x400 10fps BGR
[component_container-1] [INFO] [1758356989.587479053] [camera.camera]: color profile: 640x400 10fps BGRA
[component_container-1] [INFO] [1758356989.587552842] [camera.camera]: color profile: 640x400 10fps MJPG
[component_container-1] [INFO] [1758356989.587626923] [camera.camera]: color profile: 640x400 5fps I420
[component_container-1] [INFO] [1758356989.587701004] [camera.camera]: color profile: 640x400 5fps RGB888
[component_container-1] [INFO] [1758356989.587791418] [camera.camera]: color profile: 640x400 5fps BGR
[component_container-1] [INFO] [1758356989.587869582] [camera.camera]: color profile: 640x400 5fps BGRA
[component_container-1] [INFO] [1758356989.587945704] [camera.camera]: color profile: 640x400 5fps MJPG
[component_container-1] [INFO] [1758356989.588020077] [camera.camera]: color profile: 640x360 10fps I420
[component_container-1] [INFO] [1758356989.588094158] [camera.camera]: color profile: 640x360 10fps RGB888
[component_container-1] [INFO] [1758356989.588167364] [camera.camera]: color profile: 640x360 10fps BGR
[component_container-1] [INFO] [1758356989.588242611] [camera.camera]: color profile: 640x360 10fps BGRA
[component_container-1] [INFO] [1758356989.588316984] [camera.camera]: color profile: 640x360 10fps MJPG
[component_container-1] [INFO] [1758356989.588390773] [camera.camera]: color profile: 640x360 5fps I420
[component_container-1] [INFO] [1758356989.588464563] [camera.camera]: color profile: 640x360 5fps RGB888
[component_container-1] [INFO] [1758356989.588538060] [camera.camera]: color profile: 640x360 5fps BGR
[component_container-1] [INFO] [1758356989.588611266] [camera.camera]: color profile: 640x360 5fps BGRA
[component_container-1] [INFO] [1758356989.588685930] [camera.camera]: color profile: 640x360 5fps MJPG
[component_container-1] [ERROR] [1758356989.588748345] [camera.camera]: Because can not set this stream, so exit.
[component_container-1] Received signal: 11
[component_container-1] Log crash stack trace to Log/camera_crash_stack_trace_2025_09_20_16_29_49.log
[component_container-1] terminate called after throwing an instance of 'std::system_error'
[component_container-1] what(): Resource deadlock avoided
[component_container-1] Received signal: 6
[component_container-1] Log crash stack trace to Log/camera_crash_stack_trace_2025_09_20_16_29_49.log
[ERROR] [component_container-1]: process has died [pid 701757, exit code 6, cmd '/opt/ros/humble/lib/rclcpp_components/component_container --ros-args -r __node:=camera_container -r __ns:=/camera'].

但是当我先运行orbbecviewer,并在orbbecviewer中修改rgb和深度的分辨率,帧率后,再运行ros2 launch orbbec_camera gemini435le.launch.py就可以正常打开相机,但是过一段时间,又需要重复这个操作,不知道是什么原因,能否解答

这是我的launch配置
import os
import yaml
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, OpaqueFunction, GroupAction
from launch.substitutions import LaunchConfiguration
from launch_ros.actions import PushRosNamespace, ComposableNodeContainer, Node
from launch_ros.descriptions import ComposableNode

def load_yaml(file_path):
with open(file_path, 'r') as f:
return yaml.safe_load(f)

def merge_params(default_params, yaml_params):
for key, value in yaml_params.items():
if key in default_params:
default_params[key] = value
return default_params

def convert_value(value):
if isinstance(value, str):
try:
return int(value)
except ValueError:
pass
try:
return float(value)
except ValueError:
pass
if value.lower() == 'true':
return True
elif value.lower() == 'false':
return False
return value

def load_parameters(context, args):
default_params = {arg.name: LaunchConfiguration(arg.name).perform(context) for arg in args}
config_file_path = LaunchConfiguration('config_file_path').perform(context)
if config_file_path:
yaml_params = load_yaml(config_file_path)
default_params = merge_params(default_params, yaml_params)
skip_convert = {'config_file_path', 'usb_port', 'serial_number'}
return {
key: (value if key in skip_convert else convert_value(value))
for key, value in default_params.items()
}

def generate_launch_description():
args = [
DeclareLaunchArgument('camera_name', default_value='camera'),
DeclareLaunchArgument('depth_registration', default_value='true'),
DeclareLaunchArgument('serial_number', default_value=''),
DeclareLaunchArgument('usb_port', default_value=''),
DeclareLaunchArgument('device_num', default_value='1'),
DeclareLaunchArgument('upgrade_firmware', default_value=''),
DeclareLaunchArgument('preset_firmware_path', default_value=''),
DeclareLaunchArgument('load_config_json_file_path', default_value=''),
DeclareLaunchArgument('export_config_json_file_path', default_value=''),
DeclareLaunchArgument('uvc_backend', default_value='libuvc'),#libuvc or v4l2
DeclareLaunchArgument('point_cloud_qos', default_value='default'),
DeclareLaunchArgument('enable_point_cloud', default_value='true'),
DeclareLaunchArgument('enable_colored_point_cloud', default_value='false'),
DeclareLaunchArgument('cloud_frame_id', default_value=''),
DeclareLaunchArgument('connection_delay', default_value='10'),
DeclareLaunchArgument('color_width', default_value='640'),
DeclareLaunchArgument('color_height', default_value='400'),
DeclareLaunchArgument('color_fps', default_value='20'),
DeclareLaunchArgument('color_format', default_value='MJPG'), #YUYV, MJPG, NV12, NV21, UYVY, ANY
DeclareLaunchArgument('enable_color', default_value='true'),
DeclareLaunchArgument('color_qos', default_value='default'),
DeclareLaunchArgument('color_camera_info_qos', default_value='default'),
DeclareLaunchArgument('enable_color_auto_exposure_priority', default_value='false'),
DeclareLaunchArgument('color_rotation', default_value='-1'),#color rotation degree : 0, 90, 180, 270
DeclareLaunchArgument('color_flip', default_value='false'),
DeclareLaunchArgument('color_mirror', default_value='false'),
DeclareLaunchArgument('color_ae_roi_left', default_value='-1'),
DeclareLaunchArgument('color_ae_roi_left', default_value='-1'),
DeclareLaunchArgument('color_ae_roi_right', default_value='-1'),
DeclareLaunchArgument('color_ae_roi_top', default_value='-1'),
DeclareLaunchArgument('color_ae_roi_bottom', default_value='-1'),
DeclareLaunchArgument('color_exposure', default_value='-1'),
DeclareLaunchArgument('color_gain', default_value='-1'),
DeclareLaunchArgument('enable_color_auto_white_balance', default_value='true'),
DeclareLaunchArgument('color_white_balance', default_value='-1'),
DeclareLaunchArgument('color_ae_max_exposure', default_value='-1'),
DeclareLaunchArgument('color_brightness', default_value='-1'),
DeclareLaunchArgument('color_sharpness', default_value='-1'),
DeclareLaunchArgument('color_gamma', default_value='-1'),
DeclareLaunchArgument('color_saturation', default_value='-1'),
DeclareLaunchArgument('color_constrast', default_value='-1'),
DeclareLaunchArgument('color_hue', default_value='-1'),
DeclareLaunchArgument('enable_color_backlight_compenstation', default_value='false'),
DeclareLaunchArgument('color_powerline_freq', default_value=''),#disable ,50hz ,60hz ,auto
DeclareLaunchArgument('enable_color_decimation_filter', default_value='false'),
DeclareLaunchArgument('color_decimation_filter_scale', default_value='-1'),
DeclareLaunchArgument('depth_width', default_value='640'),
DeclareLaunchArgument('depth_height', default_value='400'),
DeclareLaunchArgument('depth_fps', default_value='20'),
DeclareLaunchArgument('depth_format', default_value='Y16'),
DeclareLaunchArgument('enable_depth', default_value='true'),
DeclareLaunchArgument('depth_qos', default_value='default'),
DeclareLaunchArgument('depth_camera_info_qos', default_value='default'),
DeclareLaunchArgument('enable_depth_auto_exposure_priority', default_value='false'),
DeclareLaunchArgument('depth_precision', default_value=''),
DeclareLaunchArgument('depth_rotation', default_value='-1'),#depth rotation degree : 0, 90, 180, 270
DeclareLaunchArgument('depth_flip', default_value='false'),
DeclareLaunchArgument('depth_mirror', default_value='false'),
DeclareLaunchArgument('depth_ae_roi_left', default_value='-1'),
DeclareLaunchArgument('depth_ae_roi_right', default_value='-1'),
DeclareLaunchArgument('depth_ae_roi_top', default_value='-1'),
DeclareLaunchArgument('depth_ae_roi_bottom', default_value='-1'),
DeclareLaunchArgument('mean_intensity_set_point', default_value='-1'),
DeclareLaunchArgument('left_ir_width', default_value='0'),
DeclareLaunchArgument('left_ir_height', default_value='0'),
DeclareLaunchArgument('left_ir_fps', default_value='0'),
DeclareLaunchArgument('left_ir_format', default_value='ANY'),
DeclareLaunchArgument('enable_left_ir', default_value='false'),
DeclareLaunchArgument('left_ir_qos', default_value='default'),
DeclareLaunchArgument('left_ir_camera_info_qos', default_value='default'),
DeclareLaunchArgument('left_ir_rotation', default_value='-1'),#left_ir rotation degree : 0, 90, 180, 270
DeclareLaunchArgument('left_ir_flip', default_value='false'),
DeclareLaunchArgument('left_ir_mirror', default_value='false'),
DeclareLaunchArgument('enable_left_ir_sequence_id_filter', default_value='false'),
DeclareLaunchArgument('left_ir_sequence_id_filter_id', default_value='-1'),
DeclareLaunchArgument('right_ir_width', default_value='0'),
DeclareLaunchArgument('right_ir_height', default_value='0'),
DeclareLaunchArgument('right_ir_fps', default_value='0'),
DeclareLaunchArgument('right_ir_format', default_value='ANY'),
DeclareLaunchArgument('enable_right_ir', default_value='false'),
DeclareLaunchArgument('right_ir_qos', default_value='default'),
DeclareLaunchArgument('right_ir_camera_info_qos', default_value='default'),
DeclareLaunchArgument('right_ir_rotation', default_value='-1'),#right_ir rotation degree : 0, 90, 180, 270
DeclareLaunchArgument('right_ir_flip', default_value='false'),
DeclareLaunchArgument('right_ir_mirror', default_value='false'),
DeclareLaunchArgument('enable_right_ir_sequence_id_filter', default_value='false'),
DeclareLaunchArgument('right_ir_sequence_id_filter_id', default_value='-1'),
DeclareLaunchArgument('enable_ir_auto_exposure', default_value='true'),
DeclareLaunchArgument('ir_exposure', default_value='-1'),
DeclareLaunchArgument('ir_gain', default_value='-1'),
DeclareLaunchArgument('ir_ae_max_exposure', default_value='-1'),
DeclareLaunchArgument('ir_brightness', default_value='-1'),
DeclareLaunchArgument('enable_sync_output_accel_gyro', default_value='false'),
DeclareLaunchArgument('enable_accel', default_value='false'),
DeclareLaunchArgument('enable_accel_data_correction', default_value='true'),
DeclareLaunchArgument('accel_rate', default_value='200hz'),
DeclareLaunchArgument('accel_range', default_value='4g'),
DeclareLaunchArgument('enable_gyro', default_value='false'),
DeclareLaunchArgument('enable_gyro_data_correction', default_value='true'),
DeclareLaunchArgument('gyro_rate', default_value='200hz'),
DeclareLaunchArgument('gyro_range', default_value='1000dps'),
DeclareLaunchArgument('liner_accel_cov', default_value='0.01'),
DeclareLaunchArgument('angular_vel_cov', default_value='0.01'),
DeclareLaunchArgument('publish_tf', default_value='true'),
DeclareLaunchArgument('tf_publish_rate', default_value='0.0'),
DeclareLaunchArgument('ir_info_url', default_value=''),
DeclareLaunchArgument('color_info_url', default_value=''),
# Network device settings: default enumerate_net_device is set to true, which will automatically enumerate network devices
# If you do not want to automatically enumerate network devices,
# you can set enumerate_net_device to false, net_device_ip to the device's IP address, and net_device_port to the default value of 8090
DeclareLaunchArgument("enumerate_net_device", default_value='true'),
DeclareLaunchArgument("net_device_ip", default_value="192.168.1.10"),
DeclareLaunchArgument("net_device_port", default_value="8090"),
DeclareLaunchArgument('log_level', default_value='none'),
DeclareLaunchArgument('enable_publish_extrinsic', default_value='false'),
DeclareLaunchArgument('enable_d2c_viewer', default_value='false'),
DeclareLaunchArgument('disaparity_to_depth_mode', default_value='HW'),
DeclareLaunchArgument('enable_ldp', default_value='true'),
DeclareLaunchArgument('ldp_power_level', default_value='-1'),
DeclareLaunchArgument('sync_mode', default_value='standalone'),
DeclareLaunchArgument('depth_delay_us', default_value='0'),
DeclareLaunchArgument('color_delay_us', default_value='0'),
DeclareLaunchArgument('trigger2image_delay_us', default_value='0'),
DeclareLaunchArgument('trigger_out_delay_us', default_value='0'),
DeclareLaunchArgument('trigger_out_enabled', default_value='true'),
DeclareLaunchArgument('frames_per_trigger', default_value='2'),
DeclareLaunchArgument('software_trigger_period', default_value='33'), # ms
DeclareLaunchArgument('enable_frame_sync', default_value='true'),
DeclareLaunchArgument('ordered_pc', default_value='false'),
DeclareLaunchArgument('enable_depth_scale', default_value='true'),
DeclareLaunchArgument('enable_decimation_filter', default_value='false'),
DeclareLaunchArgument('enable_hdr_merge', default_value='false'),
DeclareLaunchArgument('enable_sequence_id_filter', default_value='false'),
DeclareLaunchArgument('enable_threshold_filter', default_value='false'),
DeclareLaunchArgument('enable_noise_removal_filter', default_value='true'),
DeclareLaunchArgument('enable_spatial_filter', default_value='false'),
DeclareLaunchArgument('enable_temporal_filter', default_value='false'),
DeclareLaunchArgument('enable_disaparity_to_depth', default_value='true'),
DeclareLaunchArgument('enable_hole_filling_filter', default_value='false'),
DeclareLaunchArgument('decimation_filter_scale', default_value='-1'),
DeclareLaunchArgument('sequence_id_filter_id', default_value='-1'),
DeclareLaunchArgument('threshold_filter_max', default_value='-1'),
DeclareLaunchArgument('threshold_filter_min', default_value='-1'),
DeclareLaunchArgument('noise_removal_filter_min_diff', default_value='256'),
DeclareLaunchArgument('noise_removal_filter_max_size', default_value='80'),
DeclareLaunchArgument('spatial_filter_alpha', default_value='-1.0'),
DeclareLaunchArgument('spatial_filter_diff_threshold', default_value='-1'),
DeclareLaunchArgument('spatial_filter_magnitude', default_value='-1'),
DeclareLaunchArgument('spatial_filter_radius', default_value='-1'),
DeclareLaunchArgument('temporal_filter_diff_threshold', default_value='-1.0'),
DeclareLaunchArgument('temporal_filter_weight', default_value='-1.0'),
DeclareLaunchArgument('hole_filling_filter_mode', default_value=''),
DeclareLaunchArgument('hdr_merge_exposure_1', default_value='-1'),
DeclareLaunchArgument('hdr_merge_gain_1', default_value='-1'),
DeclareLaunchArgument('hdr_merge_exposure_2', default_value='-1'),
DeclareLaunchArgument('hdr_merge_gain_2', default_value='-1'),
DeclareLaunchArgument('align_mode', default_value='SW'),
DeclareLaunchArgument('align_target_stream', default_value='COLOR'),# COLOR or DEPTH
DeclareLaunchArgument('diagnostic_period', default_value='1.0'),
DeclareLaunchArgument('enable_laser', default_value='true'),
DeclareLaunchArgument('depth_precision', default_value=''),
DeclareLaunchArgument('device_preset', default_value='Default'),
DeclareLaunchArgument('laser_energy_level', default_value='-1'),
DeclareLaunchArgument('enable_sync_host_time', default_value='true'),
DeclareLaunchArgument('time_domain', default_value='global'),# global, device, system
DeclareLaunchArgument('enable_color_undistortion', default_value='false'),
DeclareLaunchArgument('config_file_path', default_value=''),
DeclareLaunchArgument('enable_heartbeat', default_value='false'),
DeclareLaunchArgument('frame_aggregate_mode', default_value='ANY'), # full_frame, olor_frame, ANY or disable
DeclareLaunchArgument('interleave_ae_mode', default_value='laser'), # 'hdr' or 'laser'
DeclareLaunchArgument('interleave_frame_enable', default_value='false'),
DeclareLaunchArgument('interleave_skip_enable', default_value='false'),
DeclareLaunchArgument('interleave_skip_index', default_value='1'), # 0:skip pattern ir 1: skip flood ir

    DeclareLaunchArgument('hdr_index1_laser_control', default_value='1'),#interleave_hdr_param
    DeclareLaunchArgument('hdr_index1_depth_exposure', default_value='1'),
    DeclareLaunchArgument('hdr_index1_depth_gain', default_value='16'),
    DeclareLaunchArgument('hdr_index1_ir_brightness', default_value='20'),
    DeclareLaunchArgument('hdr_index1_ir_ae_max_exposure', default_value='2000'),
    DeclareLaunchArgument('hdr_index0_laser_control', default_value='1'),
    DeclareLaunchArgument('hdr_index0_depth_exposure', default_value='7500'),
    DeclareLaunchArgument('hdr_index0_depth_gain', default_value='16'),
    DeclareLaunchArgument('hdr_index0_ir_brightness', default_value='60'),
    DeclareLaunchArgument('hdr_index0_ir_ae_max_exposure', default_value='10000'),

    DeclareLaunchArgument('laser_index1_laser_control', default_value='0'),#interleave_laser_param
    DeclareLaunchArgument('laser_index1_depth_exposure', default_value='3000'),
    DeclareLaunchArgument('laser_index1_depth_gain', default_value='16'),
    DeclareLaunchArgument('laser_index1_ir_brightness', default_value='60'),
    DeclareLaunchArgument('laser_index1_ir_ae_max_exposure', default_value='17000'),
    DeclareLaunchArgument('laser_index0_laser_control', default_value='1'),
    DeclareLaunchArgument('laser_index0_depth_exposure', default_value='3000'),
    DeclareLaunchArgument('laser_index0_depth_gain', default_value='16'),
    DeclareLaunchArgument('laser_index0_ir_brightness', default_value='60'),
    DeclareLaunchArgument('laser_index0_ir_ae_max_exposure', default_value='30000'),
]

def get_params(context, args):
    return [load_parameters(context, args)]

def create_node_action(context, args):
    params = get_params(context, args)
    ros_distro = os.environ.get("ROS_DISTRO", "humble")
    if ros_distro == "foxy":
        return [
            Node(
                package="orbbec_camera",
                executable="orbbec_camera_node",
                name="ob_camera_node",
                namespace=LaunchConfiguration("camera_name"),
                parameters=params,
                output="screen",
            )
        ]
    else:
        return [
            GroupAction([
                PushRosNamespace(LaunchConfiguration("camera_name")),
                ComposableNodeContainer(
                    name="camera_container",
                    namespace="",
                    package="rclcpp_components",
                    executable="component_container",
                    composable_node_descriptions=[
                        ComposableNode(
                            package="orbbec_camera",
                            plugin="orbbec_camera::OBCameraNodeDriver",
                            name=LaunchConfiguration("camera_name"),
                            parameters=params,
                        ),
                    ],
                    output="screen",
                )
            ])
        ]

return LaunchDescription(
    args + [
        OpaqueFunction(function=lambda context: create_node_action(context, args))
    ]
)

这是Log爆错:
Received signal: 11
Received signal: 6
Stack trace (most recent call last) in thread 701864:
#7 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#6 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb7015edb, in
#5 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb6fad5b7, in
#4 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71e29cb, in
#3 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/libOrbbecSDK.so.2", at 0x7fb031ff27, in
#2 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/libOrbbecSDK.so.2", at 0x7fb0338704, in
#1 Object "linux-vdso.so.1", at 0x7fb75f87af, in
#0 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/liborbbec_camera.so", at 0x7fb0dccc6f, in signalHandler(int)
Stack trace (most recent call last) in thread 701933:
#19 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#18 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb7015edb, in
#17 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb6fad5b7, in
#16 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71e29db, in
#15 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/libOrbbecSDK.so.2", at 0x7fb033e69f, in
#14 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/libOrbbecSDK.so.2", at 0x7fb025bc73, in
#13 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71e2a8b, in std::thread::join()
#12 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71ae6ab, in std::__throw_system_error(int)
#11 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71b2e87, in __cxa_throw
#10 Object "/lib/aarch64-linux-gnu/libgcc_s.so.1", at 0x7fb70ee873, in _Unwind_RaiseException
#9 Object "/lib/aarch64-linux-gnu/libgcc_s.so.1", at 0x7fb70ee47b, in
#8 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71b21bf, in __gxx_personality_v0
#7 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71b1973, in
#6 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71b2b4b, in
#5 Object "/lib/aarch64-linux-gnu/libstdc++.so.6", at 0x7fb71b53cf, in __gnu_cxx::__verbose_terminate_handler()
#4 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb6f5712f, in abort
#3 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb6f6a67b, in raise
#2 Object "/lib/aarch64-linux-gnu/libc.so.6", at 0x7fb6faf1f0, in
#1 Object "linux-vdso.so.1", at 0x7fb75f87af, in
#0 Object "/home/cat/orbbec_ros2_ws/install/orbbec_camera/lib/liborbbec_camera.so", at 0x7fb0dccc6f, in signalHandler(int)

Metadata

Metadata

Assignees

No one assigned

    Labels

    CrashThe program exited execution due to an unknown reasonGemini 435leOrbbec camera model

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions