以下是基于 PCL 库输出已知点云 PLY 文件的所有点的三维坐标的 C++ 代码示例:

#include <iostream>
#include <pcl/io/ply_io.h>
#include <pcl/point_types.h>

int main()
{
    // 加载 PLY 文件
    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
    pcl::io::loadPLYFile<pcl::PointXYZ>('input.ply', *cloud);

    // 遍历所有点云,并输出坐标
    for (size_t i = 0; i < cloud->size(); ++i)
    {
        pcl::PointXYZ point = cloud->at(i);
        std::cout << 'Point ' << i << ': (' << point.x << ', ' << point.y << ', ' << point.z << ')' << std::endl;
    }

    return 0;
}

在上述代码中,我们首先使用 pcl::PointCloud<pcl::PointXYZ>::Ptr 定义了一个点云指针 cloud,然后使用 pcl::io::loadPLYFile 函数加载 PLY 文件到该点云中。接下来,使用一个循环遍历所有点云,并输出每个点的三维坐标。最后,我们返回 0 作为程序的退出状态码。

请注意,这里假设输入的 PLY 文件中的点云类型为 pcl::PointXYZ。如果你的 PLY 文件中的点云类型不同,请根据实际情况进行修改。

C++ 代码示例:使用 PCL 库输出已知点云 PLY 文件的所有点坐标

原文地址: https://www.cveoy.top/t/topic/prHO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录