mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-12 23:39:50 +08:00
apply setAlignToStreamProfile API
This commit is contained in:
@@ -542,13 +542,13 @@ void OBCameraNode::setupDepthPostProcessFilter() {
|
|||||||
} else if (filter_name == "NoiseRemovalFilter" && enable_noise_removal_filter_) {
|
} else if (filter_name == "NoiseRemovalFilter" && enable_noise_removal_filter_) {
|
||||||
auto noise_removal_filter = filter->as<ob::NoiseRemovalFilter>();
|
auto noise_removal_filter = filter->as<ob::NoiseRemovalFilter>();
|
||||||
OBNoiseRemovalFilterParams params = noise_removal_filter->getFilterParams();
|
OBNoiseRemovalFilterParams params = noise_removal_filter->getFilterParams();
|
||||||
RCLCPP_INFO_STREAM(
|
RCLCPP_INFO_STREAM(logger_, "Default noise removal filter params: "
|
||||||
logger_, "Default noise removal filter params: " << "disp_diff: " << params.disp_diff
|
<< "disp_diff: " << params.disp_diff
|
||||||
<< ", max_size: " << params.max_size);
|
<< ", max_size: " << params.max_size);
|
||||||
params.disp_diff = noise_removal_filter_min_diff_;
|
params.disp_diff = noise_removal_filter_min_diff_;
|
||||||
params.max_size = noise_removal_filter_max_size_;
|
params.max_size = noise_removal_filter_max_size_;
|
||||||
RCLCPP_INFO_STREAM(logger_,
|
RCLCPP_INFO_STREAM(logger_, "Set noise removal filter params: "
|
||||||
"Set noise removal filter params: " << "disp_diff: " << params.disp_diff
|
<< "disp_diff: " << params.disp_diff
|
||||||
<< ", max_size: " << params.max_size);
|
<< ", max_size: " << params.max_size);
|
||||||
if (noise_removal_filter_min_diff_ != -1 && noise_removal_filter_max_size_ != -1) {
|
if (noise_removal_filter_min_diff_ != -1 && noise_removal_filter_max_size_ != -1) {
|
||||||
noise_removal_filter->setFilterParams(params);
|
noise_removal_filter->setFilterParams(params);
|
||||||
@@ -558,8 +558,8 @@ void OBCameraNode::setupDepthPostProcessFilter() {
|
|||||||
hdr_merge_gain_2_ != -1) {
|
hdr_merge_gain_2_ != -1) {
|
||||||
auto hdr_merge_filter = filter->as<ob::HdrMerge>();
|
auto hdr_merge_filter = filter->as<ob::HdrMerge>();
|
||||||
hdr_merge_filter->enable(true);
|
hdr_merge_filter->enable(true);
|
||||||
RCLCPP_INFO_STREAM(
|
RCLCPP_INFO_STREAM(logger_, "Set HDR merge filter params: "
|
||||||
logger_, "Set HDR merge filter params: " << "exposure_1: " << hdr_merge_exposure_1_
|
<< "exposure_1: " << hdr_merge_exposure_1_
|
||||||
<< ", gain_1: " << hdr_merge_gain_1_
|
<< ", gain_1: " << hdr_merge_gain_1_
|
||||||
<< ", exposure_2: " << hdr_merge_exposure_2_
|
<< ", exposure_2: " << hdr_merge_exposure_2_
|
||||||
<< ", gain_2: " << hdr_merge_gain_2_);
|
<< ", gain_2: " << hdr_merge_gain_2_);
|
||||||
@@ -1415,6 +1415,15 @@ void OBCameraNode::setupPipelineConfig() {
|
|||||||
if (enable_stream_[stream_index]) {
|
if (enable_stream_[stream_index]) {
|
||||||
RCLCPP_INFO_STREAM(logger_, "Enable " << stream_name_[stream_index] << " stream");
|
RCLCPP_INFO_STREAM(logger_, "Enable " << stream_name_[stream_index] << " stream");
|
||||||
auto profile = stream_profile_[stream_index]->as<ob::VideoStreamProfile>();
|
auto profile = stream_profile_[stream_index]->as<ob::VideoStreamProfile>();
|
||||||
|
|
||||||
|
if (stream_index == COLOR && enable_stream_[COLOR] && align_filter_) {
|
||||||
|
auto video_profile = profile;
|
||||||
|
std::cout << "color video_profile: " << video_profile->getWidth() << "x"
|
||||||
|
<< video_profile->getHeight() << " " << video_profile->getFps() << "fps "
|
||||||
|
<< magic_enum::enum_name(video_profile->getFormat()) << std::endl;
|
||||||
|
align_filter_->setAlignToStreamProfile(video_profile);
|
||||||
|
}
|
||||||
|
|
||||||
RCLCPP_INFO_STREAM(
|
RCLCPP_INFO_STREAM(
|
||||||
logger_, "Stream " << stream_name_[stream_index] << " width: " << profile->getWidth()
|
logger_, "Stream " << stream_name_[stream_index] << " width: " << profile->getWidth()
|
||||||
<< " height: " << profile->getHeight() << " fps: " << profile->getFps()
|
<< " height: " << profile->getHeight() << " fps: " << profile->getFps()
|
||||||
@@ -1864,7 +1873,7 @@ void OBCameraNode::onNewFrameSetCallback(std::shared_ptr<ob::FrameSet> frame_set
|
|||||||
if (depth_frame) {
|
if (depth_frame) {
|
||||||
frame_set->pushFrame(depth_frame);
|
frame_set->pushFrame(depth_frame);
|
||||||
}
|
}
|
||||||
if (depth_registration_ && align_filter_ && depth_frame && color_frame) {
|
if (depth_registration_ && align_filter_ && depth_frame) {
|
||||||
if (auto new_frame = align_filter_->process(frame_set)) {
|
if (auto new_frame = align_filter_->process(frame_set)) {
|
||||||
auto new_frame_set = new_frame->as<ob::FrameSet>();
|
auto new_frame_set = new_frame->as<ob::FrameSet>();
|
||||||
CHECK_NOTNULL(new_frame_set.get());
|
CHECK_NOTNULL(new_frame_set.get());
|
||||||
|
|||||||
Reference in New Issue
Block a user