TroubleShooting

AttributeError: module 'pcl' has no attribute 'PointCloud'

JackSmith 2024. 8. 3.

위 문제는 자율주행차량을 돌리기 위해 ros의 rviz상에서 rosbag녹화딴거를 재생하는 시점에서 3차원데이터를 가공하기 위해 pcl라이브러리를 사용하기 위해 설치를 진행했으나, 계속해서 설치오류가 발생하여 이에 대해 기록한 부분이다.

 

분명 아래 절차를 통해 설치를 진행했다.

sudo apt update
sudo apt install python3-pcl

이렇게 설치가 완료된 후, PCL을 사용하여 포인트 클라우드 데이터의 처리를 진행했다.

하지만 기존 오류가 계속 떠서 다른 방식으로 접근해보았다.

 

1. 소스 코드 다운로드

`pcl.PointCloud` 메소드를 사용하기 위해서는 `v2.0` 버전의 pcl이 필요하다는 것을 알았다. 그래서 pip로 직접 해당 버전을 받는 것이 아닌, github에서 라이브러리의 소스코드를 직접 받았다.(좀 귀찮긴 하지만 이렇게 받아서 나중에 빌드하면 그만이니ㅇㅇ)

wget https://github.com/strawlab/python-pcl/archive/refs/tags/v0.2.0.tar.gz

2. 압축해제

다운로드한 gz파일의 압축을 풀었다.

tar -xvzf v0.2.0.tar.gz
cd python-pcl-0.2.0

 

3. 의존성 설치

이제 python-pcl 패키지를 빌드해서 쓰기 전에, 무조건 그 밑에 받쳐져야 하는 의존성 패키지들이 있어서 이거를 먼저 설치해주어야 한다.

sudo apt-get update
sudo apt-get install -y build-essential git cmake libeigen3-dev libboost-all-dev
sudo apt-get install -y libflann-dev libvtk6-dev libqhull-dev libusb-1.0-0-dev libgtest-dev
sudo apt-get install -y libpng-dev libpcap-dev libproj-dev libtiff5-dev libopenni-dev libopenni2-dev
sudo apt-get install -y libpcl-dev python3-dev python3-pip
pip3 install cython numpy

4. `python-pcl` 설치

python3 setup.py build
sudo python3 setup.py install

5. 설치 확인

 

 

 

 

pip uninstall pcl

 

댓글