PCL,从vector <fpfhsignature33>创建PointCloud <fpfhsignature33>?

时间:2017-10-08 09:44:26

标签: c++ point-cloud-library

我正在更新我的PCL FPFH功能代码以使用gpu模块。除了返回类型之外,这一切都按计划进行。

原始cpu版本:

pcl::FPFHEstimation<PointXYZ, Normal, FPFHSignature33> fpfh_est;

compute函数a:

返回

PointCloud<FPFHSignature33>

当我从gpu函数下载返回的数据时,它是:

int stub;
    vector<FPFHSignature33> downloaded;
    fpfhs_gpu.download(downloaded, stub);

如何将此vector<FPFHSignature33>转换为我应用程序其余部分所需的PointCloud<FPFHSignature33>

谢谢。

1 个答案:

答案 0 :(得分:0)

这有效:

fpfhs_gpu.download(downloaded, stub);

    for (int i = 0; i < downloaded.size(); i++)
    {
        fpfhs_src.push_back(downloaded[i]);
    }

但它很慢,因为它遍历向量中的每个值。有更快的方法吗?