代码如下。有几处特殊说明再代码中注明了。
读取的txt文本就是3D点云数据。形式如下:
0.1, 0.3, 0.9
1.0 , 1.3 , 1.1
0.3, 0.4, 0.6
上面的数据计算由LSD中公式得来。已知图像坐标,点的逆深度值,求其3D
坐标公式如下:
// D * (u,v,1)*K逆 = 1/(1/D)* (u*fx_inv + cx_inv, v*fy_inv + cy_inv, 1)
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL)
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>
#include <pcl/segmentation/region_growing.h>
#include <pcl/features/normal_3d.h>
#include <pcl/kdtree/kdtree.h>
#include <pcl/filters/statistical_outlier_removal.h>
#include <iostream>
#include <vector>
#include<ctime>
#include<cstdlib>
#include <pcl/filters/voxel_grid.h>
#include <pcl/visualization/pcl_visua