一种三维点云中的多平面自动识别方法

文档序号:9327832阅读:1112来源:国知局
一种三维点云中的多平面自动识别方法
【技术领域】
[0001] 本发明涉及计算机视觉的三维感知和机器人导航等领域、特别涉及三维点云中物 体的自动检测与识别。
【背景技术】
[0002] 操作便捷经济实用的深度传感器迅速发展和普及,使得人们可以在日常生产生活 中方便地获得海量的三维数据。但是一个挑战性问题应运而生:如何利用计算机自动高效 地分析蕴含大量信息的三维数据。相比于二维图像,三维数据具有准确的深度信息,能更精 确地描述现实世界的几何属性。从杂乱无序的三维点云中识别平面,获取物体准确的位置 和范围等几何属性,是计算机感知世界以及与环境互动的首要问题。
[0003] 经典的平面检测识别方法为贪婪搜索法,如Hough变换(HuI ik R,Spane 1 Mj Smrz P,et al.Continuous plane detection in point-cloud data based on 3D Hough Transform[J]. Journal of Visual Communication&Image Representati on,2014, 25(1) :86 - 97.)能快速地检测出平面,但检测时需要庞大的参数空间,参数空间 中各个轴的单位尺度严重影响了平面参数估计的准确度。改进的RANSAC算法(Schnabel R, Wahl R, Klein R. Efficient RANSAC for point-cloud shape detection. Computer graphics forum.Blackwell Publishing Ltd, 2007, 26(2) :214-226.)在同时处理多个平 面时,会出现误拟合的问题,常把大量的噪声点拟合成模型。这些方法割裂了内点分类和参 数估计间既相互依赖又彼此矛盾的关系,造成识别效率和准确度低,不能很好地解决多个 模型的识别问题。

【发明内容】

[0004] 为克服现有方法的不足,本发明的目的是提供一种较为实用的、高精度的三维点 云中的多个平面的自动识别方法。
[0005] 为了实现上述目的,本发明提供了一种三维点云中的多平面自动识别方法,包括 步骤如下:
[0006] 1)根据平面模型计算误差能量、平滑能量和标签能量,作为判断点是否属于某平 面的标准,构造能量函数。误差能量衡量单个点属于某平面的可能性,平滑能量根据点与其 邻域点的平滑性来衡量二者是否归属于同一平面,标签能量来约束平面的个数防止因噪声 点和外点的影响而过拟合出过多平面。
[0007] 2)用a-Expansion能量最小化方法将平面的标签标注给点云中的点,使各个平 面的能量和最小,即可得到平面的内点。
[0008] 3)再由得到的平面内点利用最小二乘法分别重新估计对应平面的参数,并把参数 接近的平面对应的内点融合,作为下一次能量优化的前提。
[0009] 通过能量来定义平面识别的标准,某点不符合标准则加大对该点的惩罚认为其不 是平面的内点,同时利用基于条件随机场的图割优化算法,找到能量的最小值并标注出内 点对应的平面标签,即把平面的标签标注给点云中的点,以此迅速准确地得到多平面的内 点,并进而利用平面内点重新估计平面参数改进估计精度。
[0010] 三维点云中的多平面自动识别方法各步的详细说明如下:
[0011] 步骤1:通过三维激光扫描仪、体感传感器等深度传感器扫描待检测场景,将得到 待检测场景的三维点云,=!/V·.·,/U作为输入;
[0012] 步骤2 :对点云进行随机采样,计算出多个初始平面模型的参数;
[0013] 步骤3:计算出多个平面模型的误差能量、平滑能量和标签能量,构造能量函数, 用a-Expansion图割能量优化算法得到能量和的最小值,并标注出平面模型对应的内点;
[0014] 步骤4 :对各个平面的内点进行最小二乘拟合重新估计平面参数改进估计精度, 将平面参数相近的内点融合为一个平面,把内点数目极少的点集标注为外点;
[0015] 步骤5:按照步骤3重新计算精确的平面模型的各个能量项并得到模型内点,按照 步骤4进行参数改进和内点整合,直至能量不再减小,输出各个平面的参数、内点和不属于 任何平面的外点。
[0016] 所述的方法可以综合利用内点分类和参数估计两者间既相互依赖又相互矛盾的 关系,克服了现有贪婪搜索式算法对距离、角度等阈值的依赖,本方法更适合多平面的自动 识别,大大提高了对三维点云的物体识别分析能力。
[0017] 本发明的有益效果是可以对整体点云进行一次处理就可自动识别出多个平面,不 需要像改进的RANSAC方法那样识别出一个平面后将对应点从点云中剔除然后再对剩余点 云重复上述操作识别新的平面。相比于Hough变换和RANSAC算法,各个平面内点分类准确 合理,参数估计更准确,速度更快。
【附图说明】
[0018] 图1是自动识别方法的流程图。
[0019] 图2是能量优化的关键步骤。
【具体实施方式】
[0020] 下面结合附图和实施例对本发明进一步说明,应指出的是,所描述的实例仅旨在 便于对本发明的理解,而对其不起任何限定作用。
[0021] 本发明方法中参数符号和输入、输出等标志以如下方式表不:输入为含有η个点 的点云P =丨/V. ·.,八丨,其中P i (0 < i彡η)代表点云中第i个三维点。输出为点云F中包含 的N个平面参数集合Θ = { Θ . . .,θ N},其中Θ (a bp C],d,)为平面的参数;以三维 点云采集设备坐标系为参考坐标系来描述平面,第j个平面的单位法向量为(a,,b,,C]),其 到坐标系原点的距离d];以及各个平面参数对应的N个平面的标签集合L = {1 u . . .,1N}, 其中(〇 < j < N)代表第j个平面参数的标号,用于标注点云沪中的点;以及各个平面对 应的内点集合为Ψ = {h,...,ΦΝ},其中为平面j的内点集,外点集合
[0022] 按照图1的流程图,各步的具体说明如下:
[0023] 步骤1 :通过微软的Kinect等深度传感器得到待检测场景的彩色图和深度图,将 以上两种同时刻图像对齐得到待检测场景的三维点云!A, ...,A,K乍为输入。
[0024] 对二维点75Γ进行下米样得到精简的二维点75Γ,米样方法为:将二维点75Γ P占据的 三维空间划分为k个微小的立方体集合P = Iv1, ...,vj,一个立方体即是一个体素 V1,其 中包含ik个原始点v:_ =_丨A1,·…只」;计算出体素 vi内所有点的重心P i= {x i,yi,zJ,重心Pi 代表该体素内所有的点;最终得到由体素重心组成的抽样点云P = (P1,...,Pk},点数为k。 根据点云的实际尺寸设置体素的大小,通常体素边长参考范围为0. 005~0. 02m。
[0025] 点云下采样是可逆的,体素\中保存了原始点的坐标,由采样点云P可快速恢复 为原始点云'P。该方法滤除了点云中大量的无效值,减少了冗余的计算量。同时滤波后的点 云既能保证整体点云的几何尺寸,又确保几何基元形状位置的不变。
[0026] 步骤2 :对点云进行随机采样,计算出多个初始平面模型的参数。
[0027] 以三维点云采集设备坐标系为参考坐标系描述平面,利用点法式方程刻画参数为 Θ』=(a」,bj, Cj, (Ij)的平面:
[0028] ajX+bjy+CjZ+dj= 0 (I)其中(x, y, z)为点在采集设备坐标系下的坐标, (a^bpc,)为单位向量表示平面的法方向;(!,为平面到坐标系原点的距离;
[0029] 采用RANSAC式的采样方式从点云中取点,计算出平面方程的系数做为能量优 化的初始值。随机采样N组样本点,每组为三个样本点,求出初始平面模型的参数θ ]=(a^bpc^d,)。平面方程的参数组成初始平面模型集合Θ。= {Θ i,...,ΘΝ},各个平面对 应的标签为L。= {1 i,...,IJ,作为能量优化算法的初始值。
[0030] 步骤3 :定义描述平面模型的能量,并对能量进行正则化,构造多平面识别对应的 能量函数。通过能量正则化和循环迭代的思路,a -Expansion能量优化算法使能量快速最 小化,得到多个平面内点分类的最优划分方案,实现多平面自动识别。误差能量Dp (I (p))为 一元势能,从几何误差的角度来描述点P属于该点被标注的标签I(P)对应的平面θρ的可 能性。Vpq (1 (ρ),I (q))为二元势能,从点ρ的标签1 (ρ)与相邻点q的标签I (q)间的平滑 性,来描述点P与q被标注为I (P)与I (q)的可能性。平面模型集合的能量和如公式(2) 所示:
[0032] 其中各项对应的能量的定义及式(2)优化方法如下:
[0033] a.误差能量
[0034] 误差能量Dp(Up))表示点ρ到标注的标签l(p)对应平面Θ,的几何误差,用点ρ 到标签为I(P)的平面间的距离来描述,如公式(3)所示。若该距离越小优化算法对把点ρ ={xP,yP,zp}划分给平面模型0,的惩罚力度越小,有利于能量最小化和全局标签标注过程 的快速收敛。反之,若距离较大对把点P划分给平面叫的惩罚力度较大,趋向于认为点ρ 不属于平面Θ ,,即认为ρ是外点。
[0035] Dp(Kp)) = I |p-l (p) I I = lajXp+bjyp+CjZp+dj (3)
[0036] b.平滑能量
[0037] 平滑能量Vpq (I (p),I (q))是对相邻点p、q间平滑性的度量。由Potts模型建立点 的邻域关系,点与相邻点间的平滑性作为判断相邻点是否属于同一平面的依据,如公式(4) 所示。当相邻两点被赋予了不同的标签时,则对这对点进行惩罚,距离越近惩罚越大。
[0040] 公式(4)中λ参考取值范围〇· 5~2. 5, ξ参考取值范围3~5。
[0041] c.标签能量
[0042]
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1