写在前面

第一次接触到lidar点云数据,是课题组购入了robosense的激光雷达,通过其附带的RSVIEW实现可视,实时记录保存为pcap和csv文件。
但是使用编程处理lidar点云数据,还是一窍不通,因此一开始就本着开源库和数据入手。
在网上,划水之后,看到了PCL库,里面有开源官方文档。但是本人并没有c++基础,在一番搜寻之后,看到git上有用python封装部分PCL的python-pcl,但是配置环境、使用编译器,出现了许多错误。
我经过一番探索之后,对网上的两个文档进行了整合,终于装好了。
链接: Win10下python-pcl库的安装配置.
链接: Win10环境下配置pycharm+python_pcl环境配置教程.
步骤如下
一、先把配置和文件该下载的下载好

-1.1 准备好anaconda

我是下载安装最新的(建议下载Anaconda3)【这里也可以直接看上文第二个链接】

-1.2 配置python环境

安装好以后,去anaconda prompt

首先新建一个env。刚进来是默认的base,建议不要在base上直接操作,后续用到别的可能会很乱。

python打开点云数据 点云 python_python


新建一个env,名字为py36,选择的python版本为python3.6()

conda create -n py36 python=3.6

-1.3 激活环境

activate py36

-1.4 在环境里安装需要的依赖

pip install cython
pip install numpy

ps:这里,我当时只装了这两个,后来在完成python setup.py install时,还有一些库需要下载安装,并且电脑卡的要死(我安装了一个晚上,一动不动),我就用pip先下载安装了,我的是卡在filelock了,看大家安装情况。
-1.5 下载python_pcl源码,

  • 链接: python_pcl源码.
    PS:这里有博主建议直接在命令行有git下载,而我是用zip下载的,对比了两者,下载的文件一样。
    -1.6 下载Windows Gtk+并解压[我在这个里面没有替换],而是自行下载文件解压缩,或执行python-pcl/pkg-config/Install-GTKPlus.ps1。将下载后的bin文件里内容复制到pkg-config文件夹下。[这里,我参考的是:] 链接
    .
    步骤是:
    下载的Python-pcl文件夹内寻找Install-GTKPlus.ps1

    运行情况如下图所示,然后就等待下载完成为止:

python打开点云数据 点云 python_python_02

下载完成 此目录下D:\GitHub\python-pcl\pkg-config会多一些文件夹,如下图所示:

python打开点云数据 点云 python_点云_03

  • 链接: Gtk下载的地方.
  • python打开点云数据 点云 python_python打开点云数据_04

  • 二、安装PCL及配置环境
  • 第一种方法
    在VS2017里面编译,需要下载、安装VS2017和PCL ,配置PCL1.9.0环境,
    链接: 具体见.
  • 第二种方法(我采用的是第二种)
    使用安装Visual Studio 2017 C++编译工具。这个可以在官网下载到,这里贴一个图和链接。版本一定看好是2017的!!!
    链接: 具体见.
  • python打开点云数据 点云 python_python打开点云数据_05

  • PS:下载速度是真的慢,大家下载的时候想办法提提速
    第二种的配置环境方法[前文第二个链接]
    设置环境变量。emm,在我的电脑——高级系统设置——环境变量里面。需要设置下面几个,具体参考自己的文件安装位置。
PCL:ROOT=D:\Program Files\PCL 1.9.1
PKG_CONFIG_PATH=
D:\Program Files\PCL 1.9.1\lib\pkgconfig
D:\Program Files\PCL1.9.1\3rdParty\FLANN\lib\pkgconfig
D:\Program Files\PCL 1.9.1\3rdParty\Eigen\lib\pkgconfig

(我的里面没有第三个,我就新建了一个,-----害----)

OPENNI2_INCLUDE64=D:\Program Files\OpenNI2\Include\
OPENNI2_LIB64=D:\Program Files\OpenNI2\Lib\
OPENNI2_REDIST64=D:\Program Files\OpenNI2\Redist\
path=
D:\Program Files\PCL 1.9.1\3rdParty\Qhull\bin
D:\Program Files\PCL 1.9.1\3rdParty\FLANN\bin
D:\Program Files\OpenNI2\Samples\Bin
D:\Program Files\OpenNI2\Redist
D:\Program Files\OpenNI2\Tools
D:\Program Files\PCL 1.9.1\3rdParty\VTK\bin
D:\Program Files\PCL 1.9.1\3rdParty\Boost\lib
D:\Program Files\PCL 1.9.1\bin

三、编辑及安装
回到py36环境里,输入下面的代码:

上面的这些有些在安装时就已经存在,如果没有存在的话大家一定要手动输进去,要不后面会报错,不报错可能会少dll文件。。
C还是D就是具体看大家装的,还有1.9.1还是1.9.0具体看大家下载的
在网上找到了,初步处理雷达数据绘制点云的

conda activate py36
python setup.py build_ext -i
python setup.py install

四、看效果(代码网上找的,数据也是找的)

import pcl
import pcl.pcl_visualization
fileName='C:/Users/wangyuchen/Desktop/110/test_pcd.pcd'
cloud=pcl.load_XYZRGB(fileName)
visual = pcl.pcl_visualization.CloudViewing()

print(cloud[1])
visual.ShowColorCloud(cloud, b'cloud')
v = True
while v:
    v = not (visual.WasStopped())

效果:黑漆漆的椅子,但是还是成功了!

python打开点云数据 点云 python_github_06


写在最后:

本人是刚刚接触点云数据的小菜鸟一枚,安装的步骤都是参考各位大佬,并根据实际安装情况对应更改的,如果有问题,可以交流,但是也可以去大佬的原文下学习,希望大家安装顺利!