以下是基于pcl库计算点云ply文件内的所有点的索引并存入std::vector的C++代码示例:

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

int main() {
    // 读取点云文件
    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
    pcl::io::loadPLYFile<pcl::PointXYZ>("input.ply", *cloud);

    // 存储点索引的向量
    std::vector<int> all;

    // 遍历点云并存储索引
    for (int i = 0; i < cloud->size(); ++i) {
        all.push_back(i);
    }

    // 打印所有点的索引
    for (int i = 0; i < all.size(); ++i) {
        std::cout << "Point index: " << all[i] << std::endl;
    }

    return 0;
}

请替换input.ply为你实际的点云文件路径。代码中使用了pcl::PointCloud<pcl::PointXYZ>作为点云的数据类型,你可以根据实际情况修改为其他点云类型,比如pcl::PointXYZRGB。运行代码后,所有点的索引将会被存储在std::vector<int> all中,并打印出来

基于pcl库计算点云ply文件内的所有点的索引并存入stdvectorintall的c++代码

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

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