Developer

[Ubuntu 20.04] Point Cloud Library (PCL) 설치 (4) PCL-python package 설치

South Korea life 2022. 4. 21. 15:28
728x90
반응형

이전 글들에서 Point Cloud Library(PCL) 설치를 위한 내용들을 설명드렸습니다.

2022.04.19 - [Developer] - [Ubuntu 20.04] Point Cloud Library (PCL) 설치 (1) CMake 설치

2022.04.19 - [Developer] - [Ubuntu 20.04] Point Cloud Library (PCL) 설치 (2) 필수 패키지들 설치 (Boost, Eigen, FLANN, VTK)

2022.04.19 - [Developer] - [Ubuntu 20.04] Point Cloud Library (PCL) 설치 (3) PCL 설치

 

PCL을 CMake를 활용해서 설치했는데, 제가 원하는대로 python 환경에서 해당 라이브러리를 가져와서 사용하는 것이 되지가 않았습니다. 그래서, 여러 googling 후에 python3-pcl란 package를 설치하면 제가 원하는대로 사용이 가능할 것 같아서 테스트해봤습니다. 해당 부분 설치에 대해서는 아래 글을 많이 참고하였습니다.

https://pcl.gitbook.io/tutorial/part-0/part00-chapter02

 

chapter02 : PCL 설치 (100%) - Tutorial

앞에서 살펴 보았듯이 현재 PCL, PCL-python, Open3D, cilantro, pyPCD, Laspy, PCLpy 등 포인트 클라우드를 처리를 위한 많은 라이브러리 들이 있습니다. 개발 환경과 특성에 맞는 것을 골라 설치 하면 됩니다.

pcl.gitbook.io

저의 경우 해당 글에서 PCL-python 설치 부분을 참고하였습니다.

# root 로그인한 경우
add-app-repository ppa:sweptlaser/python3-pcl
apt update
apt install python3-pcl


# root 로그인 하지 않은 경우
sudo add-app-repository ppa:sweptlaser/python3-pcl
sudo apt update
sudo apt install python3-pcl

 

repository 추가를 위해 add-app-respository 커맨드를 입력하니, 다음과 같은 메세지가 출력되었습니다.

add-apt-repository: command not found

이럴 경우, software-properties-common package를 설치해주면 됩니다.

# root 로그인 한 경우
apt-get install software-properties-common

# root 로그인 하지 않았을 경우
sudo apt-get install software-properties-common

 

해당 패키지를 설치 후, 간단하게 velodyne data를 가져오는 코드를 테스트 해보았습니다. 파일 실행 시 필요한, pcl_helper파일은 https://github.com/udacity/RoboND-Perception-Exercises 에서 받을 수 있습니다.

import rospy
from sensor_msgs.msg import PointCloud2
import sensor_msgs.point_cloud2 as pc2
import pcl
import pcl_helper

def callback(input_ros_msg):
    cloud = pcl_helper.ros_to_pcl(input_ros_msg)
    print(cloud)
    
if __name__ == "__main__":
    rospy.init_node('tutorial', anonymous=True)
    rospy.Subscriber('/velodyne_points', PointCloud2, callback)
    rospy.spin()

 

728x90
반응형