Conversión de archivos en pcl

1. Convierta el archivo pcd en pcl a archivo ply

int PCDtoPLYconvertor(string & pcdFileName = "./pcdFileName.pcd" ,string& plyFileName = "./polyFileName.ply")
{
    pcl::PCLPointCloud2 cloud;
    if (loadPCDFile(pcdFileName , cloud) < 0)
    {
        cout << "Error: cannot load the PCD file!!!"<< endl;
        return -1;
    }
    PLYWriter writer;
    writer.write(plyFileName, cloud, Eigen::Vector4f::Zero(),
                Eigen::Quaternionf::Identity(),true,true);
    return 0;

}

2. Convierta archivos de capas en pcl a archivos vtk

typedef pcl::PointXYZRGB PointT;
typedef pcl::PointCloud<PointT> PointCloudT;

int ply2vtk(std::string polyFileName = "./plyFileName.ply",std::string vtkFileName = "./vtkFileName.vtk")
{
    PointCloudT::Ptr pc(new PointCloudT);
    if (pcl::io::loadPLYFile(plyFileName, *pc) == -1) {
        PCL_ERROR("Error reading point cloud %s\n", filename.c_str());
        return -1;
    }
    pcl::PCLPointCloud2 cloud2;
    pcl::toPCLPointCloud2(*pc, cloud2);
    pcl::io::saveVTKFile(vtkFileName, cloud2);
    
    return 0;
}

 

Supongo que te gusta

Origin blog.csdn.net/sunlin972913894/article/details/103042572
Recomendado
Clasificación