티스토리 뷰
Point cloud :: passthrough, statistical outlier filter 돌려보기
미니멀공대생 2021. 1. 7. 15:25PCL의 기초인 passthrough filter랑, statistical outlier filter를 돌려봤다.
이전 글인 Point cloud 얉은 지식 1편에서(ropiens.tistory.com/59) 언급했던 필터들이다.
오리지널 이미지는 이렇게 생겼다. 이미지를 보면 경사면 부분에 노이즈가 많고, 윗부분에 노이즈가 있는 걸 알 수 있다.
이렇게 일반적인 포인트 클라우드 영역에서 벗어난 포인트들은 passthrough filter로 지워줄 수 있다.
passthrough filter를 거치면 벗어난 포인트들이 사라진다. 이미지 처리에서 ROI랑 같은 원리다.
각 point.x , y, z 값에서 한 영역을 정하여 pass range 를 설정해주면 된다.
이 이미지는 statistical outlier filter를 거친 형태이다. gif가 너무 빠르지만, 앞에서 봤던 오리지널 포인트 클라우드에서 보였던 경사 부분 노이즈 점들이 많이 사라진 걸 볼 수 있다. 이때 mean 과 std_dev 값을 조절해서 filter를 설정할 수 있다.
반대로 outlier가 아닌 inlier를 볼 수도 있다.
이렇게 inliter만 볼 수도 있다.
코드는 python_pcl 을 참고하자 (github.com/strawlab/python-pcl)
근데 요즘도 pointcloud 많이 쓰나 싶다. (SLAM말고)
opencv랑은 다르게 자료가 잘 없다. 많이 찾아본 건 아니지만 심각하게 없다.
특히 C++로 설명해둔 사람은 조금 있는 반면에 python코드는 python_pcl 깃허브가 있는데도 설명해둔 코드 거의 없다.
사실 환경세팅만 성공하면 python opencv 급으로 쉬워져서 설명이 필요없을지도 모르겠다..
'미니멀공대생 > Point Cloud' 카테고리의 다른 글
PointCloud :: "Invalid (NaN, Inf) point coordinates given to nearestKSearch!" 에러 (2) | 2021.04.04 |
---|---|
Point cloud :: numpy를 pcd , pcd를 ply로 바꾸기 (2) | 2021.01.15 |
Point cloud :: Surface Normal estimation에 대해서 (2) | 2021.01.09 |
Point cloud :: PCL 설치 & viewer로 확인(Ubuntu 20.04) (5) | 2020.12.31 |
얕은 Point cloud 지식 - 1 (5) | 2020.12.11 |