0
点赞
收藏
分享

微信扫一扫

滤波——近似体素

脱下愤怒的小裤衩 2022-04-13 阅读 32
c++

近似体素下采样

拷贝代码可直接运行

一、 代码

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/filters/approximate_voxel_grid.h>

using namespace std;

pcl::PointCloud<pcl::PointXYZ>::Ptr pcl_filter_a_voxel(pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_in, float leaf_size)
{
    pcl::ApproximateVoxelGrid<pcl::PointXYZ> avox;

    avox.setLeafSize(leaf_size, leaf_size, leaf_size);
    avox.setInputCloud(cloud_in);
    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_out(new pcl::PointCloud<pcl::PointXYZ>);
    avox.filter(*cloud_out);

    return cloud_out;
}


//test------------//
int main(int argc, char** argv)
{
    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
    pcl::io::loadPCDFile(argv[1], *cloud);

    auto cloud_out = pcl_filter_a_voxel(cloud, 1);

    cout << "采样前点数:" << cloud->size() << endl;
    cout << "采样后点数:" << cloud_out->size() << endl;

    system("pause");
    return 0;

}

二、结果

在这里插入图片描述

举报

相关推荐

0 条评论