#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>
#include <pcl/features/integral_image_normal.h>
#include <pcl/visualization/cloud_viewer.h>
#pragma comment(lib,"User32.lib")
#pragma comment(lib, "gdi32.lib")
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL
);
int
main()
{
pcl
::PointCloud
<pcl
::PointXYZ
>::Ptr
cloud(new pcl
::PointCloud
<pcl
::PointXYZ
>);
pcl
::io
::loadPCDFile("table_scene_mug_stereo_textured.pcd", *cloud
);
pcl
::PointCloud
<pcl
::Normal
>::Ptr
normals(new pcl
::PointCloud
<pcl
::Normal
>);
pcl
::IntegralImageNormalEstimation
<pcl
::PointXYZ
, pcl
::Normal
> ne
;
ne
.setNormalEstimationMethod(ne
.AVERAGE_3D_GRADIENT
);
ne
.setMaxDepthChangeFactor(0.02f);
ne
.setNormalSmoothingSize(10.0f);
ne
.setInputCloud(cloud
);
ne
.compute(*normals
);
pcl
::visualization
::PCLVisualizer
viewer("PCL Viewer");
viewer
.setBackgroundColor(0.0, 0.0, 0.5);
viewer
.addPointCloudNormals
<pcl
::PointXYZ
, pcl
::Normal
>(cloud
, normals
);
while (!viewer
.wasStopped())
{
viewer
.spinOnce();
}
return 0;
}
转载请注明原文地址: https://mac.8miu.com/read-492233.html