54 深度图像数据与点云数据的格式对比

0 引言

三维深度学习配准框架3DMatch解决的是三维数据的配准问题。其中,训练集采用的是RGB-D数据,而我项目中只有.pcd格式的点云数据。为了制作RGB-D格式的数据集,满足框架的输入格式要求,必须对这两种数据格式进行对比。

1 pcl中对这两种数据的描述

(1)pcl::RangeImage

  // =====PROTECTED MEMBER VARIABLES=====
Eigen::Affine3f to_range_image_system_; /**< Inverse of to_world_system_ */ 从世界坐标系转换到深度坐标系的转换矩阵 4*4 Eigen::Affine3f to_world_system_; /**< Inverse of to_range_image_system_ */ 从深度坐标系转换到世界坐标系的转换矩阵 4*4 float angular_resolution_x_;
/**< Angular resolution of the range image in x direction in radians per pixel */ x方向的角分辨率,单位是弧度/像素
float angular_resolution_y_;
/**< Angular resolution of the range image in y direction in radians per pixel */ y方向的角分辨率,单位是弧度/像素
  float angular_resolution_x_reciprocal_; /**< 1.0/angular_resolution_x_ - provided for better performace of * multiplication compared to division */ 
float angular_resolution_y_reciprocal_; /**< 1.0/angular_resolution_y_ - provided for better performace of * multiplication compared to division */
int image_offset_x_, image_offset_y_; /**< Position of the top left corner of the range image compared to * an image of full size (360x180 degrees) */
PointWithRange unobserved_point; /**< This point is used to be able to return * a reference to a non-existing point */

 // =====STATIC PROTECTED=====
 static const int lookup_table_size;
 static std::vector<float> asin_lookup_table;
 static std::vector<float> atan_lookup_table;
 static std::vector<float> cos_lookup_table;
 /** Create lookup tables for trigonometric functions */

(2)pcl::PointCloud<pcl::PointXYZ>

      PointCloud (uint32_t width_, uint32_t height_, const PointT& value_ = PointT ())
        : header ()
        , points (width_ * height_, value_)
        , width (width_)
        , height (height_)
        , is_dense (true)
        , sensor_origin_ (Eigen::Vector4f::Zero ())
        , sensor_orientation_ (Eigen::Quaternionf::Identity ())
        , mapping_ ()
      {}

猜你喜欢

转载自www.cnblogs.com/ghjnwk/p/10520063.html
54