基于激光点云全局特征匹配处理的目标跟踪算法 下载: 1624次
1 引言
激光雷达获得的三维数据,即激光点云,可反映目标的基本结构信息。基于二维数据的目标跟踪过程易受光照变化、物体在二维平面内的形状变化等因素的影响。基于三维数据的目标分割[1-2]、目标识别[3]、目标分类[4-5]、目标配准[6]等研究均取得了一定的成果。其中,将三维数据应用于目标跟踪过程可以提高目标跟踪的准确性。基于激光点云的无人驾驶技术是当下研究热点,并已应用于实际的驾驶过程[7]。但车载平台下,目标跟踪的有效作用范围受限于其本身的应用方向与平台。目前,点云目标跟踪方法主要分为两类。第一类方法是对物体进行运动估计,目前卡尔曼滤波[8]、粒子滤波[9]等方法较为成熟。Azim等[10]利用卡尔曼滤波方法,对获得的相邻两帧激光点云基于八叉树的占领栅格地图分析其不一致信息,从而检测动态物体,再使用全局最近邻的方法进行数据关联,最后使用卡尔曼滤波方法跟踪动态物体的中心点。孙水发等[11]利用贝叶斯滤波方法提出变尺寸车辆跟踪算法,可动态更新目标车辆的尺寸、姿态及速度。
第二类方法根据物体的三维形状信息在相邻帧之间进行特征匹配,并返回匹配得到的目标在各帧中的位置,从而实现跟踪。Moosmann等[12]利用局部凸准则[13]生成假设,采用迭代最近点算法[14]将待跟踪物体表面的三维数据与输入完整的三维数据进行匹配以估计待跟踪物体的状态。该算法对初始帧中的初始值设置要求很高。上述研究使用的激光点云数据大多由激光雷达在前视角度下获取,而未来的远距离作战,仍需研究基于激光雷达得到的下视角度下的点云数据处理,如机载平台[15]及弹载平台下获取的激光点云。
激光雷达与目标之间距离连续变化时跟踪激光点云目标,首先仿真下视角度获取的运动场景数据,而后通过帧间对激光点云全局特征的匹配处理跟踪运动目标。为提高整体过程的实时性与准确性,本文提出了三维积分区域(SVR)筛选的预处理方法。
2 基于激光点云SVR筛选的目标识别方法
目标跟踪需要已知目标在初始帧中的位置,可通过人工选定感兴趣的目标或通过基于特征直方图匹配的点云识别方法进行自动定位。基于特征直方图匹配的点云目标识别方法包括线下处理部分和线上处理部分,具体流程如
图 1. 基于SVR筛选的点云目标识别流程
Fig. 1. Point cloud target recognition process based on SVR selection
2.1 线下部分
实际情况中激光雷达扫描目标区域获取激光点云数据时,易受平台的姿态变化及平台与目标之间距离变化的影响。因此,线下部分搭建了多角度及不同平台与目标间距离的模型特征模板库。借助于三维仿真软件Blender进行仿真,调整目标与激光雷达之间的位置关系以及两者间的角度关系得到多角度、多距离下的模型数据。通过特征提取,将得到的数据存储在快速搜索最近邻库(FLANN)[16]中。
2.2 线上部分
2.2.1 数据预处理
数据预处理部分包括地面滤波与非地面点的聚类分割。大部分情况下目标跟踪任务中指定的目标均为非地面点,因此通过地面滤波提取数据中的非地面点可提升整体目标定位的效率及运行速度。选用布料模拟滤波算法[17]实现地面滤波。
布料模拟滤波算法是假设有一块足够柔软的布料置于地面,布料受重力作用与地面贴合,此时布料的形状便是地形的高度模型。该算法首先假设存在一虚拟格网,而后依据下式计算其节点的空间位置,初始时刻的布料并非紧贴地面,仍有一定距离。
式中:m=1表示布料节点的质量;P为某个时刻节点的空间位置;Δt与G分别为时间间隔与重力常数。若已知Δt与初始时刻节点的位置则可得到当前节点的位置。
比较布料节点与地面激光点云之间的高程,将高程值小于或等于地面激光点云的节点移动到与之对应的激光点的位置。根据布料节点是否处于地面激光点云的位置将其区分为可移动点与不可移动点,从而得到近似真实的地形表面。激光点(xl,yl,zl)与其对应的布料节点(xc,yc,zc)间的距离d为
设定距离阈值h,选择不同的阈值实现地面滤波:
通过地面滤波得到的非地面点中包含多种目标,城市背景下可能包含行人、车辆、树木和建筑等物体。这些目标在水平方向上任意两者间都存在互相遮挡的可能性,在垂直方向上,除去树木树冠以及建筑物对目标的遮挡外,目标间互相遮挡的可能性相对较低。因此可以通过对点云进行聚类分割将其分为相互独立的点云簇,有利于后续的全局特征提取与匹配。
基于欧氏距离对点云进行聚类提取,目的是使划分得到的同一簇内的点云具有相似的空间和几何等特征。欧氏距离聚类分割基于非地面点之间的欧氏距离进行判断,设非地面点集合P,任意选中空间一点p10,判断流程如下。
1) 利用K-D树数据结构计算得到与p10距离最近的n个点,分别记为p11,p12,…,p1n。
2) 计算各点与p10之间的欧氏距离
3) 阈值选择,将
4)
5) 集合Q中无法加入新点时,完成搜索。
2.2.2 SVR筛选
实际场景中,不同类别的物体的大小存在差异,因此在同一成像距离分辨率下,激光雷达扫描物体获得的激光点云数据的数据量也存在差异,即聚类后得到的各簇点云的SVR大小不同。若给定三维空间内的立体范围V,对点云P中各点pi(i=1,2,…,n)在这一范围内进行积分:
在线下部分,计算得到常用目标在不同成像距离分辨率时的SVR值并存入FLANN库中。
图 2. 六种目标在两种激光雷达与目标间距离下的SVR值
Fig. 2. SVR values of six objects for two LIDAR-object distances
在线上部分,根据指定目标的SVR的阈值范围(Smin,Smax),若满足Smin≤Sc≤Smax,则保留该点云簇,反之舍弃。对满足阈值条件的点云簇进行特征提取与匹配。
3 基于激光点云全局特征匹配的目标跟踪方法
激光点云可用局部特征或全局特征进行描述。当激光雷达成像分辨率保持一致时,作用距离越远,激光雷达的距离分辨率越低,得到的激光点云包含的数据量越少。为充分反映激光点云的总体结构信息,选用全局特征描述子表征分割后得到的点云簇。
在计算机视觉领域,基于空间几何结构的全局特征描述子主要有视点特征直方图(VFH)[18]、基于聚类的视点特征直方图(CVFH)[19]、基于半径的全局描述子(GRSD)[20]及形状特征集合(ESF)[21]。考虑到各描述子在实际应用中的准确率及运行速度,在基于SVR筛选的点云目标识别方法中使用ESF特征描述子,在基于激光点云全局特征匹配的目标跟踪过程中使用VFH特征描述子。
表 1. 四种全局描述子的对比
Table 1. Comparison of four global feature descriptors
|
由(5)式可以看到,L1值越小,即测试的点云簇与此时所选定的模板越接近,则认为测试点云簇与模板的属性一致。
与目标识别方法中的数据处理步骤一致,基于激光点云全局特征匹配的目标跟踪流程如
将获得的激光雷达点云数据通过数据预处理得到独立的点云簇并进行SVR筛选,根据待跟踪的目标以及平台与目标之间的实时距离设定SVR的阈值大小,对满足筛选条件的点云簇进行特征提取。根据前一帧中得到的目标点云簇进行匹配,计算并比较各点云簇与前一帧目标点云簇之间的L1值,L1值最小的点云簇即为当前帧中待跟踪的目标。
4 实验
4.1 实验环境与实验数据
基于Visual Studio2017中的PCL点云库[23]进行实验。使用两组在下视角度下获取的数据集,其中一组借助于Blender软件仿真实际场景,通过激光雷达成像仿真模型得到平台与目标发生相对运动时,扫描距离从1800 m到300 m连续变化的场景点云数据。激光雷达成像仿真的具体参数如
图 3. 基于全局特征匹配的点云目标跟踪流程图
Fig. 3. Point cloud target tracking flow based on global feature matching
表 2. 场景仿真参数
Table 2. Parameters of the scene simulation
|
实验使用的另一组数据集通过实际测量得到[24],测量平台与目标间的距离不变,数据可视化效果如
4.2 实验结果
4.2.1 目标识别效果实验基于目标静止、平台运动时的激光点云数据,激光雷达与目标间的距离和激光雷达获取数据的视角发生变化时,比较四种全局描述子的识别准确率,利用数据集1验证所提基于三维区域筛选的目标识别方法的识别效果。实验得到四种全局特征描述子[25]在六种激光雷达与目标间的距离下的目标识别准确率,如
表 3. 四种特征描述子目标识别效果对比
Table 3. Recognition rate comparison of four feature descriptors%
|
图 4. 不同数据集可视化效果。(a)数据集1,(b)数据集2
Fig. 4. Visualization of different datasets. (a) Dataset 1; (b) dataset 2
由
由
表 4. 基于SVR筛选的目标识别效果对比
Table 4. Recognition rate comparison with and without SVR selection
|
由
4.2.2 目标跟踪效果
目标跟踪部分实验分别使用数据集1和数据集2进行验证,实验效果如
由
从
图 5. 第N帧目标跟踪结果。(a)(g) N=40;(b)(h) N=80;(c)(i) N=120;(d)(j) N=160;(e)(k) N=200;(f)(l) N=240
Fig. 5. Object tracking results in the N th frame. (a)(g) N=40; (b)(h) N=80; (c)(i) N=120; (d)(j) N=160; (e)(k) N=200; (f)(l) N=240
表 5. 第N帧目标跟踪的跟踪准确率
Table 5. Tracking accuracy of sight line in the Nth frame
|
图 6. 不同数据集的目标跟踪过程各部分运行时间。(a)数据集1;(b)数据集2
Fig. 6. Execution time of each part in object tracking based on different datasets. (a) Dataset 1; (b) dataset 2
除了每帧跟踪的准确率之外,各帧的运行速度也十分关键。因此,研究了SVR筛选的加入对目标跟踪中各部分运行时间的影响。SVR筛选的加入使整体算法的步骤增多,分别为数据预处理、SVR、特征提取与特征匹配。
由
5 结论
针对激光雷达扫描得到的三维数据的目标跟踪问题,提出了初始帧中基于SVR筛选的目标识别方法与基于激光点云全局特征匹配处理的目标跟踪算法。实验结果表明,SVR筛选既充分利用了点云的数据特性,又提高了目标识别跟踪的准确率与算法整体的运行速度。此外,实验对四种全局特征描述子在识别准确率、激光雷达与目标间距离变化稳定性以及运行速度方面的性能进行了比较,得到结论如下:识别准确率由高到低依次为ESF、CVFH、VFH、GRSD;对激光雷达与目标间距离变化的稳定性由高到低依次为VFH、GRSD、CVFH、ESF;运行速度由快到慢依次为VFH、CVFH、GRSD、ESF。
[1] 范小辉, 许国良, 李万林, 等. 基于深度图的三维激光雷达点云目标分割方法[J]. 中国激光, 2019, 46(7): 0710002.
[2] 张坤, 乔世权, 周万珍. 基于三维形状匹配的点云分割[J]. 激光与光电子学进展, 2018, 55(12): 121011.
[3] 陈明猷, 唐昀超, 邹湘军, 等. 复杂环境下异形多目标识别与点云获取算法[J]. 激光与光电子学进展, 2018, 55(11): 111505.
[4] 陈向宇, 云挺, 薛联凤, 等. 基于激光雷达点云数据的树种分类[J]. 激光与光电子学进展, 2019, 56(12): 122801.
[5] 赵中阳, 程英蕾, 释小松, 等. 基于多尺度特征和PointNet的LiDAR点云地物分类方法[J]. 激光与光电子学进展, 2019, 56(5): 052804.
[6] 郭王, 程效军. 基于激光强度分类的机载与地面激光雷达点云配准方法[J]. 激光与光电子学进展, 2018, 55(6): 062803.
[7] 甘志梅, 王春香, 杨明. 基于激光雷达的车辆跟踪与识别方法[J]. 上海交通大学学报, 2009, 43(6): 923-926.
Gan Z M, Wang C X, Yang M. A method for vehicle tracking and recognition based on scanning laser radar[J]. Journal of Shanghai Jiaotong University, 2009, 43(6): 923-926.
[8] Kalman R E. A new approach to linear filtering and prediction problems[J]. Journal of Basic Engineering, 1960, 82(1): 35-45.
[9] 廖逸琪, 任侃, 顾国华, 等. 复杂动态场景下运动目标跟踪的卡尔曼粒子滤波方法[J]. 激光与光电子学进展, 2014, 51(9): 091001.
[10] AzimA, AycardO. Detection, classification and tracking of moving objects in a 3D environment[C]∥2012 IEEE Intelligent Vehicles Symposium, June 3-7, 2012, Alcala de Henares, Madrid, Spain. New York: IEEE, 2012: 802- 807.
[11] 孙水发, 李准, 夏坤, 等. 变尺度点云配准算法[J]. 系统仿真学报, 2018, 30(7): 2465-2474.
Sun S F, Li Z, Xia K, et al. Variable scale point cloud registration algorithm[J]. Journal of System Simulation, 2018, 30(7): 2465-2474.
[12] MoosmannF, StillerC. Joint self-localization and tracking of generic objects in 3D range data[C]∥2013 IEEE International Conference on Robotics and Automation, May 6-10, 2013, Karlsruhe, Germany. New York: IEEE, 2013: 1146- 1152.
[13] MoosmannF, PinkO, StillerC. Segmentation of 3D lidar data in non-flat urban environments using a local convexity criterion[C]∥2009 IEEE Intelligent Vehicles Symposium, June 3-5, 2009, Xi'an, China. New York: IEEE, 2009: 215- 220.
[14] Arun KS, Huang TS, Blostein S D. Least-squares fitting of two 3D point sets[J]. IEEE Transactions on Pattern Analysis and MachineIntelligence, 1987, PAMI-9( 5): 698- 700.
[15] 惠振阳, 鲁铁定, 胡友健, 等. 基于动态阈值的机载LiDAR点云滤波法[J]. 激光与光电子学进展, 2019, 56(6): 062802.
[16] MujaM, Lowe DG. Fast matching of binary features[C]∥2012 Ninth Conference on Computer and Robot Vision, May 28-30, 2012, Toronto, Ontario, Canada. New York: IEEE, 2012: 404- 410.
[17] Zhang W M, Qi J B, Wan P, et al. An easy-to-use airborne LiDAR data filtering method based on cloth simulation[J]. Remote Sensing, 2016, 8(6): 501.
[18] RusuB, BradskiG, ThibauxR, et al. Fast 3D recognition and pose using the viewpoint feature histogram[C]∥2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, October 18-22, 2010, Taipei, Taiwan. New York: IEEE, 2010: 2155- 2162.
[19] AldomaA, VinczeM, BlodowN, et al. CAD-model recognition and 6DOF pose estimation using 3D cues[C]∥2011 IEEE International Conference on Computer Vision Workshops (ICCV Workshops), November 6-13, 2011, Barcelona, Spain. New York: IEEE, 2011: 585- 592.
[20] Marton Z C, Pangercic D, Blodow N, et al. Combined 2D-3D categorization and classification for multimodal perception systems[J]. The International Journal of Robotics Research, 2011, 30(11): 1378-1402.
[21] WohlkingerW, VinczeM. Ensemble of shape functions for 3D object classification[C]∥2011 IEEE International Conference on Robotics and Biomimetics, December 7-11, 2011, Karon Beach, Phuket, Thailand. New York: IEEE, 2011: 2987- 2992.
[22] Tung T, Matsuyama T. Invariant shape descriptor for 3D video encoding[J]. The Visual Computer, 2015, 31(3): 311-324.
[23] Aldoma A, Marton Z C, Tombari F, et al. Tutorial: point cloud library: three-dimensional object recognition and 6 DOF pose estimation[J]. IEEE Robotics & Automation Magazine, 2012, 19(3): 80-91.
[24] Niemeyer J, Rottensteiner F, Soergel U. Contextual classification of lidar data and building object detection in urban areas[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2014, 87: 152-165.
Article Outline
钱其姝, 胡以华, 赵楠翔, 李敏乐, 邵福才. 基于激光点云全局特征匹配处理的目标跟踪算法[J]. 激光与光电子学进展, 2020, 57(6): 061012. Qishu Qian, Yihua Hu, Nanxiang Zhao, Minle Li, Fucai Shao. Object Tracking Algorithm Based on Global Feature Matching Processing of Laser Point Cloud[J]. Laser & Optoelectronics Progress, 2020, 57(6): 061012.