mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-12 07:19:50 +08:00
Update the method of reading intrinsic parameters.
This commit is contained in:
@@ -609,10 +609,8 @@ void OBCameraNode::publishDepthPointCloud(const std::shared_ptr<ob::FrameSet> &f
|
|||||||
depth_cloud_pub_->get_subscription_count() == 0) {
|
depth_cloud_pub_->get_subscription_count() == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!camera_param_ && depth_registration_) {
|
if (!camera_param_) {
|
||||||
camera_param_ = pipeline_->getCameraParam();
|
camera_param_ = pipeline_->getCameraParam();
|
||||||
} else if (!camera_param_) {
|
|
||||||
camera_param_ = getDepthCameraParam();
|
|
||||||
}
|
}
|
||||||
if (!camera_param_) {
|
if (!camera_param_) {
|
||||||
RCLCPP_ERROR_STREAM(logger_, "camera_param_ is null");
|
RCLCPP_ERROR_STREAM(logger_, "camera_param_ is null");
|
||||||
@@ -883,9 +881,7 @@ void OBCameraNode::onNewColorFrameCallback() {
|
|||||||
std::shared_ptr<ob::FrameSet> frameSet = colorFrameQueue_.front();
|
std::shared_ptr<ob::FrameSet> frameSet = colorFrameQueue_.front();
|
||||||
is_color_frame_decoded_ = decodeColorFrameToBuffer(frameSet->colorFrame(), rgb_buffer_);
|
is_color_frame_decoded_ = decodeColorFrameToBuffer(frameSet->colorFrame(), rgb_buffer_);
|
||||||
publishPointCloud(frameSet, true);
|
publishPointCloud(frameSet, true);
|
||||||
if (is_color_frame_decoded_) {
|
onNewFrameCallback(frameSet->colorFrame(), IMAGE_STREAMS.at(2));
|
||||||
onNewFrameCallback(frameSet->colorFrame(), IMAGE_STREAMS.at(2));
|
|
||||||
}
|
|
||||||
colorFrameQueue_.pop();
|
colorFrameQueue_.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1024,12 +1020,8 @@ void OBCameraNode::onNewFrameCallback(const std::shared_ptr<ob::Frame> &frame,
|
|||||||
int height = static_cast<int>(video_frame->height());
|
int height = static_cast<int>(video_frame->height());
|
||||||
|
|
||||||
auto timestamp = frameTimeStampToROSTime(video_frame->systemTimeStamp());
|
auto timestamp = frameTimeStampToROSTime(video_frame->systemTimeStamp());
|
||||||
if (!camera_param_ && depth_registration_) {
|
if(!camera_param_) {
|
||||||
camera_param_ = pipeline_->getCameraParam();
|
camera_param_ = pipeline_->getCameraParam();
|
||||||
} else if (!camera_param_ && stream_index == COLOR) {
|
|
||||||
camera_param_ = getColorCameraParam();
|
|
||||||
} else if (!camera_param_ && (stream_index == DEPTH || stream_index == INFRA0)) {
|
|
||||||
camera_param_ = getDepthCameraParam();
|
|
||||||
}
|
}
|
||||||
auto &intrinsic =
|
auto &intrinsic =
|
||||||
stream_index == COLOR ? camera_param_->rgbIntrinsic : camera_param_->depthIntrinsic;
|
stream_index == COLOR ? camera_param_->rgbIntrinsic : camera_param_->depthIntrinsic;
|
||||||
|
|||||||
Reference in New Issue
Block a user