PCL :实现多线程快速双边滤波
下面是一个使用PCL库实现多线程快速双边滤波的示例代码:
#include <pcl/point_types.h>
#include <pcl/io/pcd_io.h>
#include <pcl/filters/fast_bilateral.h>
#include <pcl/common/time.h>
#include <pcl/common/threads.h>
void bilateralFilterThread(pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud,
pcl::PointCloud<pcl::PointXYZRGB>::Ptr filteredCloud,
float sigmaS, float sigmaR, int start, int end)
{
pcl::FastBilateralFilter<pcl::PointXYZRGB> bilateralFilter;
bilateralFilter.setInputCloud(cloud);
for (int i = start; i < end; ++i)
{
pcl::PointXYZRGB point = cloud->at(i);
pcl::PointXYZRGB filteredPoint;
bilateralFilter.computePoint(point, filteredPoint, sigmaS, sigma