mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-05 04:27:46 +08:00
add hdr and laser interleave params
This commit is contained in:
@@ -633,6 +633,30 @@ class OBCameraNode {
|
|||||||
bool interleave_frame_enable_ = false;
|
bool interleave_frame_enable_ = false;
|
||||||
bool interleave_skip_enable_ = false;
|
bool interleave_skip_enable_ = false;
|
||||||
int interleave_skip_index_ = 1;
|
int interleave_skip_index_ = 1;
|
||||||
|
|
||||||
|
// hdr and laser interleave params
|
||||||
|
int hdr_index1_laser_control_ = 1;
|
||||||
|
int hdr_index1_depth_exposure_ = 1;
|
||||||
|
int hdr_index1_depth_gain_ = 16;
|
||||||
|
int hdr_index1_ir_brightness_ = 20;
|
||||||
|
int hdr_index1_ir_ae_max_exposure_ = 2000;
|
||||||
|
int hdr_index0_laser_control_ = 1;
|
||||||
|
int hdr_index0_depth_exposure_ = 7500;
|
||||||
|
int hdr_index0_depth_gain_ = 16;
|
||||||
|
int hdr_index0_ir_brightness_ = 60;
|
||||||
|
int hdr_index0_ir_ae_max_exposure_ = 10000;
|
||||||
|
|
||||||
|
int laser_index1_laser_control_ = 0;
|
||||||
|
int laser_index1_depth_exposure_ = 3000;
|
||||||
|
int laser_index1_depth_gain_ = 16;
|
||||||
|
int laser_index1_ir_brightness_ = 60;
|
||||||
|
int laser_index1_ir_ae_max_exposure_ = 7000;
|
||||||
|
int laser_index0_laser_control_ = 1;
|
||||||
|
int laser_index0_depth_exposure_ = 3000;
|
||||||
|
int laser_index0_depth_gain_ = 16;
|
||||||
|
int laser_index0_ir_brightness_ = 60;
|
||||||
|
int laser_index0_ir_ae_max_exposure_ = 17000;
|
||||||
|
|
||||||
int interleave_skip_color_index_ = 1;
|
int interleave_skip_color_index_ = 1;
|
||||||
int interleave_skip_depth_index_ = 1;
|
int interleave_skip_depth_index_ = 1;
|
||||||
|
|
||||||
|
|||||||
@@ -186,6 +186,29 @@ def generate_launch_description():
|
|||||||
DeclareLaunchArgument('interleave_frame_enable', default_value='true'),
|
DeclareLaunchArgument('interleave_frame_enable', default_value='true'),
|
||||||
DeclareLaunchArgument('interleave_skip_enable', default_value='true'),
|
DeclareLaunchArgument('interleave_skip_enable', default_value='true'),
|
||||||
DeclareLaunchArgument('interleave_skip_index', default_value='0'), # 0:skip pattern ir 1: skip flood ir
|
DeclareLaunchArgument('interleave_skip_index', default_value='0'), # 0:skip pattern ir 1: skip flood ir
|
||||||
|
|
||||||
|
DeclareLaunchArgument('hdr_index1_laser_control', default_value='1'),
|
||||||
|
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'),
|
||||||
|
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='7000'),
|
||||||
|
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='17000'),
|
||||||
|
|
||||||
DeclareLaunchArgument('use_intra_process_comms', default_value='false'),
|
DeclareLaunchArgument('use_intra_process_comms', default_value='false'),
|
||||||
DeclareLaunchArgument('attach_to_shared_component_container', default_value='false'),
|
DeclareLaunchArgument('attach_to_shared_component_container', default_value='false'),
|
||||||
DeclareLaunchArgument('component_container_name', default_value='shared_orbbec_container'),
|
DeclareLaunchArgument('component_container_name', default_value='shared_orbbec_container'),
|
||||||
|
|||||||
@@ -792,37 +792,37 @@ void OBCameraNode::updateImageConfig(const stream_index_pair &stream_index) {
|
|||||||
|
|
||||||
int OBCameraNode::init_interleave_hdr_param() {
|
int OBCameraNode::init_interleave_hdr_param() {
|
||||||
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 1);
|
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 1);
|
||||||
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, 1);
|
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, hdr_index1_laser_control_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, 1);
|
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, hdr_index1_depth_exposure_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, 16);
|
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, hdr_index1_depth_gain_);
|
||||||
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, 20);
|
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, hdr_index1_ir_brightness_);
|
||||||
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, 2000);
|
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, hdr_index1_ir_ae_max_exposure_);
|
||||||
|
|
||||||
// set interleaveae
|
// set interleaveae
|
||||||
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 0);
|
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 0);
|
||||||
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, 1);
|
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, hdr_index0_laser_control_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, 7500);
|
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, hdr_index0_depth_exposure_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, 16);
|
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, hdr_index0_depth_gain_);
|
||||||
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, 60);
|
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, hdr_index0_ir_brightness_);
|
||||||
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, 10000);
|
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, hdr_index0_ir_ae_max_exposure_);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int OBCameraNode::init_interleave_laser_param() {
|
int OBCameraNode::init_interleave_laser_param() {
|
||||||
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 1);
|
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 1);
|
||||||
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, 0);
|
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, laser_index1_laser_control_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, 3000);
|
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, laser_index1_depth_exposure_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, 16);
|
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, laser_index1_depth_gain_);
|
||||||
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, 60);
|
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, laser_index1_ir_brightness_);
|
||||||
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, 7000);
|
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, laser_index1_ir_ae_max_exposure_);
|
||||||
|
|
||||||
// set interleaveae
|
// set interleaveae
|
||||||
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 0);
|
device_->setIntProperty(OB_PROP_FRAME_INTERLEAVE_CONFIG_INDEX_INT, 0);
|
||||||
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, 1);
|
device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, laser_index0_laser_control_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, 3000);
|
device_->setIntProperty(OB_PROP_DEPTH_EXPOSURE_INT, laser_index0_depth_exposure_);
|
||||||
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, 16);
|
device_->setIntProperty(OB_PROP_DEPTH_GAIN_INT, laser_index0_depth_gain_);
|
||||||
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, 60);
|
device_->setIntProperty(OB_PROP_IR_BRIGHTNESS_INT, laser_index0_ir_brightness_);
|
||||||
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, 17000);
|
device_->setIntProperty(OB_PROP_IR_AE_MAX_EXPOSURE_INT, laser_index0_ir_ae_max_exposure_);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1298,6 +1298,61 @@ void OBCameraNode::getParameters() {
|
|||||||
setAndGetNodeParameter<bool>(interleave_skip_enable_, "interleave_skip_enable", false);
|
setAndGetNodeParameter<bool>(interleave_skip_enable_, "interleave_skip_enable", false);
|
||||||
setAndGetNodeParameter<int>(interleave_skip_index_, "interleave_skip_index", 1);
|
setAndGetNodeParameter<int>(interleave_skip_index_, "interleave_skip_index", 1);
|
||||||
|
|
||||||
|
// hdr and laser interleave params
|
||||||
|
setAndGetNodeParameter<int>(hdr_index1_laser_control_, "hdr_index1_laser_control", 1);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index1_depth_exposure_, "hdr_index1_depth_exposure", 1);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index1_depth_gain_, "hdr_index1_depth_gain", 16);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index1_ir_brightness_, "hdr_index1_ir_brightness", 20);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index1_ir_ae_max_exposure_, "hdr_index1_ir_ae_max_exposure",
|
||||||
|
2000);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index0_laser_control_, "hdr_index0_laser_control", 1);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index0_depth_exposure_, "hdr_index0_depth_exposure", 7500);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index0_depth_gain_, "hdr_index0_depth_gain", 16);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index0_ir_brightness_, "hdr_index0_ir_brightness", 60);
|
||||||
|
setAndGetNodeParameter<int>(hdr_index0_ir_ae_max_exposure_, "hdr_index0_ir_ae_max_exposure",
|
||||||
|
10000);
|
||||||
|
|
||||||
|
RCLCPP_INFO_STREAM(logger_, "hdr_index1_laser_control_ "
|
||||||
|
<< hdr_index1_laser_control_ << " hdr_index1_depth_exposure_ "
|
||||||
|
<< hdr_index1_depth_exposure_ << " hdr_index1_depth_gain_ "
|
||||||
|
<< hdr_index1_depth_gain_ << " hdr_index1_ir_brightness_ "
|
||||||
|
<< hdr_index1_ir_brightness_ << " hdr_index1_ir_ae_max_exposure_ "
|
||||||
|
<< hdr_index1_ir_ae_max_exposure_ << "\n");
|
||||||
|
RCLCPP_INFO_STREAM(logger_, "hdr_index0_laser_control_ "
|
||||||
|
<< hdr_index0_laser_control_ << " hdr_index0_depth_exposure_ "
|
||||||
|
<< hdr_index0_depth_exposure_ << " hdr_index0_depth_gain_ "
|
||||||
|
<< hdr_index0_depth_gain_ << " hdr_index0_ir_brightness_ "
|
||||||
|
<< hdr_index0_ir_brightness_ << " hdr_index0_ir_ae_max_exposure_ "
|
||||||
|
<< hdr_index0_ir_ae_max_exposure_ << "\n");
|
||||||
|
|
||||||
|
setAndGetNodeParameter<int>(laser_index1_laser_control_, "laser_index1_laser_control", 0);
|
||||||
|
setAndGetNodeParameter<int>(laser_index1_depth_exposure_, "laser_index1_depth_exposure", 3000);
|
||||||
|
setAndGetNodeParameter<int>(laser_index1_depth_gain_, "laser_index1_depth_gain", 16);
|
||||||
|
setAndGetNodeParameter<int>(laser_index1_ir_brightness_, "laser_index1_ir_brightness", 60);
|
||||||
|
setAndGetNodeParameter<int>(laser_index1_ir_ae_max_exposure_, "laser_index1_ir_ae_max_exposure",
|
||||||
|
7000);
|
||||||
|
setAndGetNodeParameter<int>(laser_index0_laser_control_, "laser_index0_laser_control", 1);
|
||||||
|
setAndGetNodeParameter<int>(laser_index0_depth_exposure_, "laser_index0_depth_exposure", 3000);
|
||||||
|
setAndGetNodeParameter<int>(laser_index0_depth_gain_, "laser_index0_depth_gain", 16);
|
||||||
|
setAndGetNodeParameter<int>(laser_index0_ir_brightness_, "laser_index0_ir_brightness", 60);
|
||||||
|
setAndGetNodeParameter<int>(laser_index0_ir_ae_max_exposure_, "laser_index0_ir_ae_max_exposure",
|
||||||
|
17000);
|
||||||
|
|
||||||
|
RCLCPP_INFO_STREAM(logger_, "laser_index1_laser_control_ "
|
||||||
|
<< laser_index1_laser_control_ << " laser_index1_depth_exposure_ "
|
||||||
|
<< laser_index1_depth_exposure_ << " laser_index1_depth_gain_ "
|
||||||
|
<< laser_index1_depth_gain_ << " laser_index1_ir_brightness_ "
|
||||||
|
<< laser_index1_ir_brightness_
|
||||||
|
<< " laser_index1_ir_ae_max_exposure_ "
|
||||||
|
<< laser_index1_ir_ae_max_exposure_ << "\n");
|
||||||
|
RCLCPP_INFO_STREAM(logger_, "laser_index0_laser_control_ "
|
||||||
|
<< laser_index0_laser_control_ << " laser_index0_depth_exposure_ "
|
||||||
|
<< laser_index0_depth_exposure_ << " laser_index0_depth_gain_ "
|
||||||
|
<< laser_index0_depth_gain_ << " laser_index0_ir_brightness_ "
|
||||||
|
<< laser_index0_ir_brightness_
|
||||||
|
<< " laser_index0_ir_ae_max_exposure_ "
|
||||||
|
<< laser_index0_ir_ae_max_exposure_ << "\n");
|
||||||
|
|
||||||
setAndGetNodeParameter<double>(delta_duration_us_, "delta_duration_us", 5000.0);
|
setAndGetNodeParameter<double>(delta_duration_us_, "delta_duration_us", 5000.0);
|
||||||
setAndGetNodeParameter<int>(delta_fps_, "delta_fps", 2);
|
setAndGetNodeParameter<int>(delta_fps_, "delta_fps", 2);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user