카테고리 없음

python PCL 사용하기( Windows 10 with PIP)

Wood Pecker 2021. 10. 19. 00:34

1. 개요
Point Cloud Library(PCL)는 point cloud 데이터를 처리하는 open-source library이다. 윈도우즈 환경에서 파이썬을 이용하여 PCL 라이브러리를 pip로 설치하고 사용한다.
https://pointclouds.org/

   

2. OpenNI 설치
        Point Cloud Library(PCL) 에서 사용하는 OpenNI를 먼저 설치 해본다.

3. PCL  설치

  다음은 PCL SDK의 설치이다. ( https://github.com/strawlab/python-pcl )


4.  python package 설치

python_pcl-0.3-cp36-cp36m-win_amd64.whl 를 아래에서 다운로드 받는다.
https://drive.google.com/u/0/uc?id=1gxSTP4gwtWmsztO4N4TquNhUMufNunWn&export=download  
> pip install python_pcl-0.3-cp36-cp36m-win_amd64.whl   

프로그램을 실행하면 에러가 난다.
import pcl <== Error ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.
==> 해결책은 OpenNI2.dll 파일을 (venv) Scripts 폴더에 복사를 한다.
import pcl.pcl_visualization <-- ignore requirement 옵션설정


5. pcd data fle 얻기 (bin file format)

 bin 파일을 pcd 파일로 변경한다. (예, 000000.bin ==> 000000.pcd)   이는 다음 포스트에서 다루기로 한다.

 

6. 파이썬 PCL을 이용하여 visualize 하여 보자.

import pcl
import numpy as np
import pcl.pcl_visualization

def main():
    cloud = pcl.load("000000.pcd")

    # Centred the data
    centred = cloud - np.mean(cloud, 0)
    ptcloud_centred = pcl.PointCloud()
    ptcloud_centred.from_array(centred)

    visual = pcl.pcl_visualization.CloudViewing()

    # PointXYZ
    visual.ShowMonochromeCloud(ptcloud_centred, b'cloud')
    v = True
    while v:
        v = not(visual.WasStopped())

if __name__ == "__main__":
    main()
    pass
반응형