PCL库中是否有任何功能可以将pcl::PointCloud<pcl::PointXYZRGB>
点云保存为可以用Meshlab打开的XYZRGB格式?
似乎pcl::io::savePCDFileASCII (filename, cloud);
以某种特定方式存储 RGB 值。
PCL库中是否有任何功能可以将pcl::PointCloud<pcl::PointXYZRGB>
点云保存为可以用Meshlab打开的XYZRGB格式?
似乎pcl::io::savePCDFileASCII (filename, cloud);
以某种特定方式存储 RGB 值。
对我来说,如果我将它存储为二进制格式的 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);
您可以转换为 .ply、.obj 或任何其他支持的格式。看看pcd2ply
PCL 中的演示,或者根据您的需要使用pcl::PLYWriter设置参数:
pcl::PLYWriter writer;
writer.write (filename, cloud, Eigen::Vector4f::Zero (),
Eigen::Quaternionf::Identity (), binary, use_camera);