一般都是使用基于C++ PCL(Point Cloud Library)库来处理点云数据。不过,近期工作上的原因,需要在python3上处理点云数据,所以用到了pypcd库。但通过pip下载的pypcd似乎与python3并不兼容,解决方法是下载github上的源码,在本地fetch一个其他用户提供的pull request,再进行安装。本文主要是记录一下安装过程。
pypcd的源码可以在https://github.com/dimatura/pypcd找到。通过下面的指令可以安装。
$ git clone https://github.com/dimatura/pypcd
在这里https://github.com/dimatura/pypcd/pull/9可以看到解决python3兼容问题的一个方案。将它fetch到本地。
$ cd pypcd
$ git fetch origin pull/9/head:python3
$ git checkout python3
运行下列指令在python3上安装pypcd。
$ python3 setup.py install --user
运行pypcd,读取.pcd测试是否安装成工。
$ python3
$ from pypcd import pypcd
$ pc = pypcd.PointCloud.from_path('pointcloud.pcd')
尝试在virtualenv上安装,但是报错了。以后有空再探讨。