[Ubuntu 20.04] Point Cloud Library (PCL) 설치 (4) PCL-python package 설치
이전 글들에서 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) 설치 (3) PCL 설치
PCL을 CMake를 활용해서 설치했는데, 제가 원하는대로 python 환경에서 해당 라이브러리를 가져와서 사용하는 것이 되지가 않았습니다. 그래서, 여러 googling 후에 python3-pcl란 package를 설치하면 제가 원하는대로 사용이 가능할 것 같아서 테스트해봤습니다. 해당 부분 설치에 대해서는 아래 글을 많이 참고하였습니다.
https://pcl.gitbook.io/tutorial/part-0/part00-chapter02
저의 경우 해당 글에서 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 커맨드를 입력하니, 다음과 같은 메세지가 출력되었습니다.
이럴 경우, 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()