pcl::PointCloud<pcl::PointXYZRGB>
点云保存为XYZRGB格式,可以用Meshlab打开?似乎
pcl::io::savePCDFileASCII (filename, cloud);
以某种特定的方式存储RGB值。
pcl::PointCloud<pcl::PointXYZRGB>::Ptr sceneCloud(new pcl::PointCloud<pcl::PointXYZRGB>);
//Fill cloud somehow...
std::string writePath = "your/path";
pcl::io::savePLYFileBinary(writePath, *sceneCloudPtr);
pcd2ply
,或者仅使用pcl::PLYWriter 根据您的需要设置参数:
pcl::PLYWriter writer;
writer.write (filename, cloud, Eigen::Vector4f::Zero (),
Eigen::Quaternionf::Identity (), binary, use_camera);
此外,数据可能不符合预期的顺序,例如法线可能出现在 RGB 颜色之后或之前。
我发现 PCL 不能很好地处理这个问题。我改用了 VCG 库。 如果您仍然需要使用 PCL,则包含这两个库,但使用 VCG Lib 读入并填充 PCL 数据结构。