5

PCL库中是否有任何功能可以将pcl::PointCloud<pcl::PointXYZRGB> 点云保存为可以用Meshlab打开的XYZRGB格式?

似乎pcl::io::savePCDFileASCII (filename, cloud);以某种特定方式存储 RGB 值。

4

2 回答 2

8

对我来说,如果我将它存储为二进制格式的 PLY 文件,它就可以工作。Meshlab 似乎偶尔会在处理 ASCII 文件时遇到一些问题。这对我有用。

pcl::PointCloud<pcl::PointXYZRGB>::Ptr sceneCloud(new pcl::PointCloud<pcl::PointXYZRGB>);
//Fill cloud somehow...

std::string writePath = "your/path";
pcl::io::savePLYFileBinary(writePath, *sceneCloudPtr);
于 2017-05-22T12:47:34.707 回答
0

您可以转换为 .ply、.obj 或任何其他支持的格式。看看pcd2plyPCL 中的演示,或者根据您的需要使用pcl::PLYWriter设置参数:

 pcl::PLYWriter writer;
 writer.write (filename, cloud, Eigen::Vector4f::Zero (),
               Eigen::Quaternionf::Identity (), binary, use_camera);
于 2016-06-10T06:56:38.280 回答