点云库PCL——点云转换为深度图

  1. 设置深度图像的宽度/高度 /光心坐标/焦距等,将从一个视点获取的点云转换为深度图。
void createFromPointCloudWithFixedSize (const PointCloudType &point_cloud, int di_width, int di_height, float di_center_x, float di_center_y, float di_focal_length_x, float di_focal_length_y, const Eigen::Affine3f &sensor_pose, CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f)
从已存在的点云中创建图像,其中, point_cloud 为指向创建深度图像所需点云的对象引用, di_width 是视差图像的宽度, di_height 是视差图像的高度, di_center_ x是照相机投影中心的 x 坐标, di _ center_y 是照相机投影中心的 y 坐标 , di_focal_length_x 是照相机水平方向上的焦距, di_ fo cal_ length_ y 是照相机垂直方向上的焦距, sensor_pose 为模拟深度照相机的位姿, coordinate_frame 为点云所使用的坐标系统, noise_level 为传感器的噪声水平,用于 z缓冲区求取深度时,如果噪声越大,查询点周围的点深度就会影响查询点的深度,如果无噪声,则直接取查询点 z 缓冲区中最小的距离为深度, min_range 为可见点的最小深度,小于该距离的点视为盲区,即不可见点。

猜你喜欢

转载自blog.csdn.net/zzh_AI/article/details/92835760