realsense d435i获取与rgb图像对应的深度值

设置 realsense-ros 的rs_camera.launch文件


就能得到与图像对应的深度图;
比如rgb对应的深度图会在一个独立的ros topic中输出
具体查看方法

rostopic echo /camera/aligned_depth_to_color/image_raw
void DepthCallback(const sensor_msgs::ImageConstPtr& depth_img) {
  ROS_WARN("%s", depth_img->encoding.c_str());
  cv::Mat data;

  data =
      cv_bridge::toCvCopy(depth_img, sensor_msgs::image_encodings::TYPE_32FC1)
          ->image;
  std::cout << "image data: " << data.at<uint16_t>(240, 320) << std::endl;//表示获取图像坐标为240,320的深度值,单位是毫米
}

int main(int argc, char** argv) {
  ros::init(argc, argv, "test_depth");
  ros::NodeHandle node;
  ros::Subscriber depth_sub;
  depth_sub = node.subscribe<sensor_msgs::Image>(
      "/camera/aligned_depth_to_color/image_raw", 10, DepthCallback);
  ros::spin();
  return 0;
}

你可能感兴趣的:(传感器)