對於在空間分布有一定空間特徵的點雲資料,比如使用線結構光掃瞄的方式採集點雲,沿z向分布較廣,但x,y向的分布處於有限範圍內。此時可使用直通濾波器,確定點雲在x或y方向上的範圍,可較快剪除離群點,達到第一步粗處理的目的。
#include #include #include int
main(int argc, char** argv)
std::cerr << "cloud before filtering: " << std::endl;
for (size_t i = 0; i < cloud->points.size(); ++i)
std::cerr << " " << cloud->points[i].x << " "
<< cloud->points[i].y << " "
<< cloud->points[i].z << std::endl;
// create the filtering object
pcl::passthroughpass;
pass.setinputcloud(cloud);
pass.setfilterfieldname("z");
pass.setfilterlimits(100.0, 400.0);
(true);
pass.filter(*cloud_filtered);
std::cerr << "cloud after filtering: " << std::endl;
for (size_t i = 0; i < cloud_filtered->points.size(); ++i)
std::cerr << " " << cloud_filtered->points[i].x << " "
<< cloud_filtered->points[i].y << " "
<< cloud_filtered->points[i].z << std::endl;
system("pause");
return (0);
}
PCL 濾波 直通濾波
在獲取點雲資料時 由於裝置精度,操作者經驗環境因素帶來的影響,以及電磁波的衍射特性,被測物體表面性質變化和資料拼接配準操作過程的影響,點雲資料中講不可避免的出現一些雜訊。在點雲處理流程中濾波處理作為預處理的第一步,對後續的影響比較大,只有在濾波預處理中將雜訊點 離群點,孔洞,資料壓縮等按照後續處理定...
點雲濾波 直通濾波
最簡單的例子 按高度篩選點雲 pcl passthrough pointxyz pass pass.setinputcloud pointcloud raw pass.setfilterfieldname z 設定過濾時所需要點雲型別的z欄位 pass.setfilterlimits 0.1,10 ...
PCL點雲濾波(直通濾波器與統計濾波器)
利用pcl中的直通濾波器和統計濾波器對原始點雲資料進行濾波處理。通過直通濾波器將z軸方向上範圍之外的點濾除 在背景與前景有一定距離的情況下,可以除掉背景 再利用統計濾波器去除離群點 雜訊點 濾波效果視資料和濾波引數而定。include include include include include ...