最近工作里用到PCL库,处理点云数据。点云抽稀能极大的减少点云数据。
通过python-pcl调用C++的PCL库。windows下运行ok,linux下部署踩了很多坑,试了多种办法,包括源码安装,都没成功,最终通过安装成功的Docker镜像解决。
根据python-pcl官方文档介绍: 建议在ubuntu、macos、windows上使用python-pcl。
官方文档:https://python-pcl-fork.readthedocs.io/en/rc_patches4/
可以在 https://github.com/strawlab/python-pcl/issues 看到为什么ubuntu18.04难以安装成功python-pcl;
测试得出:
1. windows安装:windows10+pcl1.8+python-pcl(pip安装)亲测可行
2. ubuntu安装:pcl1.8,python-pcl(pip安装) 会寻找pcl1.7*.so 文件各种找不到,即使把.so全部复制过去也会报错
importerror: libpcl_keypoints.so.1.7: cannot open shared object file: No such file or directory
3. centos7.6安装:pcl1.7,python-pcl(pip安装)配置/etc/profile后,所有的.so都能找得到,升级了glibc, 导入pcl 还是会报错;
最终解决:寻找仓库里的Docker镜像,功夫不负有心人,找到了俩个已成功安装python-pcl的镜像; Docker化部署打包python程序为 二进制文件,跨平台部署。
下边是俩个亲测成功的镜像:
推荐使用:docker.io docker.io/mawall/python-pcl 4个G,更小一些;