三维点云中基于随机采样一致性的特征线检测方法

文档序号:6338162阅读:718来源:国知局
专利名称:三维点云中基于随机采样一致性的特征线检测方法
技术领域
本发明涉及三维点云数据中的特征提取方法,特别是在点云数据具有较大的噪声 及较多外点时有效地提取特征线的方法。
背景技术
随着三维激光扫描仪在逆向工程、城市建模、文物保护、地质勘测、数字娱乐等各 个领域的迅速普及与应用,三维点云数据(Point Cloud)逐渐成为三维几何模型常用的表 示方式之一。
点云,顾名思义,即由大量无组织、无结构的三维点(一般为坐标位置,也可以包 含法向量、颜色等其他属性)来表示三维物体的空间分布和表面特性,点与点之间不存在 拓扑关系,这与传统的基于网格(三角形网格或多边形网格)的模型表示方法中存在已知 的点连接关系有着根本的不同。因此,点云数据具有更为简单的数据结构,但这同时也决定 了点云的数据量通常比网格大得多。
尽管三维扫描仪可以不依赖于外界光照条件直接精确地获取三维点云,由于扫 描仪中传感器本身固有的物理特性限制,得到的点云不可避免地会包含噪声(Noise);同 时,扫描数据的规格化处理以及扫描过程中扫描仪和被扫描物体之间的相对移动都会加剧 噪声。其次,扫描中激光的多次反射则会导致最终得到的点云中包含相当一部分的外点 (Outlier),即远离被扫描物体表面的点。最后,由于扫描场景中多个物体以及单个物体本 身存在的遮挡,物体本身的透明特性,或者扫描过程中的路线或位置限制(如建筑物的顶 部),最终得到的点云通常会包含有许多空洞。因此,高效、鲁棒的点云数据处理方法是当前 学术界和工业界共同关注的热点之一。
在众多方法之中,基于特征线的方法由于具有较高的鲁棒性,近些年受到了普遍 关注。点云的特征线可以看作是由扫描物体上尖锐特征(Siarp Feature)或高曲率部分采 样得到的点构建的线段或曲线。相对于点云的无组织特性,从中提取的特征线由于反映了 较高层次的数据点分布模式,从而更能刻画三维物体的几何特征。点云特征线在点云处理 中具有重要的应用,目前已用于对称性检测,表面重建及点云/图像注册等。当前已有的特 征线检测方法可以大体上分为三类
1.基于局部平面性分析的方法
Gumhold等人于2001年提出了基于局部平面性分析的方法,其主要思想是对点 云P中每个点Pi,查询出该点的k个最近的相邻点Ni,然后对Ni中的点进行协方差分析 (CovarianceAnalysis),得到由Ni中的点构造的协方差矩阵的三个特征值,根据三个特征 值的相对大小来确定Pi成为特征点的可能性,以此作为Pi的权值&。而后依据每个点的 权值建立整个点云的最小生成图(Minimum Spanning Graph),最小生成图中的点则构成 了特征线的候选点,通过裁减之后再使用样条函数对这些候选点进行拟合得到最终的特征 线。Pauly等人于2003年将协方差分析部分扩展为多尺度实现,并采用活动轮廓线(Active Contour)取代样条函数,从而可以更有效地处理噪声。这类方法的缺点是无法处理点云中的外点。
2.基于点云分割的方法
Demarsin等人于2006年提出了点云中封闭特征线的检测方法。该方法首先为每 个点Pi计算法向量η”然后根据Iii之间的相似性(即夹角大小),采用区域增长的方法将整 个点云分割为多个簇(Cluster),而位于特征线上的点由于其相邻点的法向量变化较大,形 成的簇较小。将具有较小簇的点作为候选,构建最小生成树(Minimum Spanning Tree),最 后将最小生成树中的边进行裁剪、平滑处理得到特征线。为了有效处理较大的噪声以及外 点,DanielsII等人在2007年采用鲁棒的最小二乘方法(Robust Moving Least Squares) 对每个Pi的局部邻域进行分类,局部邻域可以划分为两个及两个以上的Pi经投影后被选中 作为特征线的候选点,而后对这些点进行主元素分析(Principal Component Analysis), 将各个点连接为特征线。随后他们在2008年采用样条函数对候选点进行拟合得到更为光 滑的特征线。这种方法的缺陷是计算开销较大,而且主要依赖于点云的局部分析而没有考 虑全局特性。
3.基于滑动性分析的方法
在基于特征线进行对称性检测的工作中,Bokeloh等人于2009年提出了基于滑动 性(Slippage,用于刻画点在物体表面的运动约束)分析的特征线检测方法。与前面的两类 方法不同,这种方法首先借助于滑动性分析,为每个点Pi计算出最可能的刚性运动(Rigid) 的运动方向,并得到平移向量;然后选择出只可沿一个特定方向运动的点,并借助于类似于 移动最小二乘(Moving Least Squares)投影(Projection)机制将这些点投影到邻近的曲 率最大的位置。而后将这些点相互连接形成最后的特征线。为了减小时间开销,此方法在 投影之前对原有点云进行了下采样(Down-sampling)。此方法可以同时得到每个点的曲率, 并具有较高的稳定性。由于此方法在计算过程中由于借助了局部区域的曲率计算,因而无 法适用于具有较大噪声和较多外点的复杂点云。
根据专利文献检索,目前只有一个申请号为20100034422的美国专利介绍了点云 模型中线性特征(直线和平面)的检测方法,其主要目的是根据检测出的这些线性特征进 行对象跟踪,如无人驾驶环境中的障碍物跟踪。专利中所陈述的方法与Demarsin等人的根 据法向量进行聚类的方法类似,并通过根据数据的局部性(Locality)确定最优邻域来处 理稀疏的点云数据。因此,此专利的方法同样受限于噪声和外点干扰较大时的应用场景。
总之,尽管已有的点云特征线检测算法已经能够得到较好的结果,但在有效处理 较大噪声、较多的外点、较大的数据缺失以及时间开销等方面存在一定的局限性。发明内容
本发明要解决的技术问题是提供一种鲁棒的三维点云中特征线检测方法,此方法 可以有效应对点云数据中不可避免的噪声、外点和数据缺失,并具有较低的时间开销,从而 为各种基于特征线的点云处理方法提供良好的初始输入。
本发明基于随机采样一致性(RANdom SAmpling Consensus,RANSAC),实现了一种 点云特征线提取方法。本发明首先通过基于随机采样一致性在点云中检测出多个平面,然 后将每个平面参数化域的边界点作为候选,在这些候选点上再应用随机采样一致性得到最 终的特征线,从而有效降低噪声、外点和数据缺失的影响,大大增强特征线检测的鲁棒性,并提高了时间效率。
本发明技术方案如下
第一步,基于随机采样一致性(RANdom SAmpling Consensus, RANSAC)的平面检 测。
本步骤采用的是点云中基于RANSAC的基元检测方法。其方法是在点云中随机选 取三个点确定一个平面,然后根据点云中其余点到平面的距离以及法向量的偏差选择出一 个最优平面,即能够被此平面拟合的点的数目最大,其过程如下
1. 1从点云中随机选择三个点K,K};
1. 2根据选择的三个点的位置构造一个估计平面,即根据三个点{A',/4,的位置构造一个平面Lt ;
1. 3根据三个点的法向量以及估计平面的法向量判断平面是否有效;
1. 4计算点云中其余点到估计平面的距离以及与法向量的夹角,将满足阈值的点 的个数作为当前估计平面的分数,更新最优平面的分数及参数;
1. 5判断是否达到最大采样次数,如果未达到,则执行步骤1. 1 1. 4,否则继续;
1. 6将选择出的最优平面记录并将被此最优平面拟合的点从点云中移除;
1. 7判断剩余的点是否可以形成或可以拟合某个特定数目点的平面,如果可以,则 执行步骤1. 1 1. 6,否则执行结束,返回数据。
此外,基于RANSAC的基元检测方法中还可采取局部采样策略和评价函数估计来 提高RANSAC的效率,并借助连通性检查确保每个平面所包含的点都是相互连通的。
第二步,特征线候选点提取。完成平面检测之后,将每个平面L所能拟合的点(即 计入分数的点)投影到L上,并将投影区域的边界点作为构成特征线的候选点,过程如 下
2. 1计算点/到平面L的投影,具体流程是
2. 1. 1计算火与平面L上一点Lp之间的差向量Z = P丨-Lp ;
2. 1 · 2计算乂在平面L上的<坐标彳=γ^ * Ldu ;
2. 1. 3计算ρ,在平面L上的<坐标< LDV ;
其中Ldu和Ldv为平面L上两个相互正交的方向,它们与L的法向量Ln共同构成了 一个局部坐标系。
2. 2构建平面上投影点的位图,具体流程是
2.2. 1遍历L上的每个投影点(乂,ν,Λ),计算出最小长方形包围盒B,其中B的边与Ldu和Ldv平行;
2. 2. 2按照分辨率κ (预先设定的阈值,可以依赖于整个点云模型的大小)将B划 分为均勻的二维网格,每个格子的初始值为0 ;
2. 2. 3再次遍历L上的每个投影点(U11', ν'),如果有某个点落入划分后的某一个格 子中,则将格子的值设为1;
2. 2. 4同时计算出每个投影点落入的格子索引。
2. 3在位图中检测边界点,此处按照先行后列的顺序遍历2. 2中构建的位图,并按 照8邻域(上、下、左、右、左上、右上、左下、右下)检测出存在值为0的邻居的格子。具体流程是
2. 3. 1遍历位图第一行,如果某个格子的值为1,则记为边界点;
2. 3. 2遍历位图中第二行至倒数第二行,对第一个格子和最后一个格子,如果其值 为1,则记为边界点;对于中间的格子,则统计其8邻域中值为1的邻居,如果值为1的邻居 的数目小于δ (预先设定的阈值,一般为6),则记为边界点;
2. 3. 3遍历位图的最后一行,如果某个格子的值为1,则记为边界点;
2. 4将在位图中检测出的边界点对应的投影点作为候选点输出。由于在2. 2. 4中 已经记录了每个投影点落入的格子索引,此处可以快速实现。
第三步,基于随机采样一致性的特征线检测。在得到特征线的候选点之后,接下来 将在这些候选点中检测出特征线,这与第一步的框架类似,流程如下
3. 1基于随机采样一致性的直线检测,记第二步中检测出的候选点集合为Q = {q」},流程如下
3. 1. 1从候选点中随机选择两个点;
3. 1. 2根据选择的两个点的位置构造一条估计直线;
3. 1. 3计算候选点中其余点到估计直线的距离,将满足阈值的点的个数作为当前 估计直线的分数,更新最优直线的分数及参数;
3. 1.4判断是否达到最大采样次数,如果未达到,则执行步骤3. 1. 1 3. 1.3,否则 继续;
3. 1. 5将选择出的最优直线记录并将被此最优直线拟合的点从候选点中移除;
3. 1.6判断剩余的点是否可以形成至少可以拟合某个特定数目点的直线,如果可 以,则执行步骤1,否则执行结束,返回数据。
3. 2全局一致性约束,与khnabel等人的方法不同的一点是,为了增强方法的鲁 棒性,本发明不再假设特征线上的点是相互连通的,因此可以更大限度地消除噪声的影响, 使得到的特征线的方向更为精确。
第四步,基于主成分分析(Principal Component Analysis)的线段参数计算。由 第三步确定特征线的方向和位置之后,需要将位于特征线上的点按照其相邻关系划分为不 同的区域,并为每个区域计算出一条线段,流程如下
4. 1对于每条特征线,将满足距离约束的点按照距离阈值λ划分为多个区域,即 如果两个边界点的之间的距离小于λ,则认为它们处于同一条线段中;
4. 2对于每个区域中的所有点,计算其重心位置,并构造协方差矩阵,而后对此矩 阵进行特征值分解,选取最大特征值对应的特征向量作为线段的方向;
4. 3为区域内的所有点构造与轴方向平行的最小长方体包围盒,并将包围盒的中 心投影到4. 2得到的直线上作为线段的中点;
4.4由中点按照直线的正反方向移动包围盒长度的一半,将得到的两个点作为最 终特征线段的两个端点。
采用本发明可以达到以下技术效果
(1)有效降低噪声、外点和数据缺失的干扰;RANSAC本身与生俱来的特性保证了 本发明可以有效处理数据中的各种缺陷;
(2)得到更为准确的特征线;在检测特征线时不考虑连通性,而使用全局性约束得到精确的特征线方向;
(3)时间开销较低,可以处理大规模点云,这对应对日益增长的点云数据规模来说至关重要;
(4)特别适用于城市建模中由具有规则结构的建筑物扫描得到的点云数据。


图1是本发明的总流程图。
图2是基于RANSAC的平面检测流程图。
图3是点到平面的投影示例。
图4是平面上根据投影点构造位图的示例。
图5是位图中边界点的检测示例。
图6是基于RANSAC的特征线检测流程图。
具体实施方式
图1所示是本发明的总流程图。主要流程是
步骤1,基于随机采样一致性的平面检测。
步骤2,特征线候选点提取,将检测出的平面所能拟合的点投影到平面上,构造位 图并选择出边界点作为候选点。
步骤3,在候选点上应用随机采样一致性检测出特征线所在的直线。
步骤4,基于主成分分析(!Principal Component Analysis)的线段参数计算,将每 条直线所能拟合的点划分为多个相互连通的区域,为每个区域计算线段的起点和终点。
图2是基于RANSAC的平面检测流程图。主要流程是
步骤1,在点云P中随机选择三个点;
步骤2,根据{ρ ,Κ,的位置构造一个平面Lt ;
步骤3,计算L的法向量Iit与{巧',乂乂}的法向量{ ,心的夹角,如果存在一个夹角过大,则舍弃Lt并转1. 1 ;否则继续;
步骤4,计算P中其余点Pi到Lt的距离Cli以及与Iit的夹角σ 并统计(Ii小于阈 值ε以及ο i小于阈值α的点的个数作为Lt的分数& ;
步骤5,重复步骤1 4Τ次,选择出得分最高的平面广;其中T由以下公式确定「 η T log(l - Φ)
T=~-J-
式中τ为位于Lt*之外的点所占比例的估计值,Φ为经过T次采样之后最优平面 被选中的概率,此公式由统计学规律得出;
步骤6,记录Lt*并在点云P中移除计入& 的点;
步骤7,判断剩余的点是否可以形成或可以拟合某个特定数目点的平面,如果可 以,则执行步骤1 6,否则执行结束,返回数据。
图3是点到平面的投影示例。对于在某个平面L能拟合的点,首先计算乂与平面 L上一点Lp之间的向量差Z = P' -Lp,然后计算乂在平面L上的 < 坐标< =r!‘* LlJXRp';8在平面L上的<坐标< =/' * Lnv ; Ldu和Ldv为平面L上两个相互正交的方向,它们与L的法 向量Ln共同构成了一个局部坐标系。
图4是平面上根据投影点构造位图的示例。遍历L上的每个投影点(U1; , ν';),计算 出最小长方形包围盒B,其中B的边与Ldu和Ldv相平行;按照分辨率κ将B划分为均勻的 二维网格,如果有某个点落入划分后的某一个格子中,则将格子的值设为1(图中带有栅格 的格子)。
图5是位图中边界点的检测示例。按照先行后列的顺序遍历位图并按照8邻域 (上、下、左、右、左上、右上、左下、右下)检测出存在值为0的邻居的格子。图中带有对角线 纹理的格子即为边界点。需要注意的是,由于将阈值δ设为6,位图的中间也检测出两个边 界点,但此类边界点通常只占较小的比例,在基于RANSAC的直线检测时一般会被忽略掉。
图6是基于RANSAC的特征线检测流程图。记检测出的候选点集合为Q = IqjI主 要流程是
步骤1,在Q中随机选择{<,《'}两个点;
步骤2,根据{<,《"}的位置构造一条直线Im ;
步骤3,计算Q中其余点Qj到Im的距离Clj,并统计Clj小于阈值ξ的点的个数作为 Im的分数‘
步骤4,重复步骤1 3Μ次,选择出得分最高的直线Γ* ;其中M由以下公式确定
权利要求
1.三维点云中基于随机采样一致性的特征线检测方法,通过基于随机采样一致性在点 云中检测出多个平面,然后将每个平面参数化域的边界点作为候选检测特征线,其特征在 于该方法的具体步骤为步骤1,基于随机采样一致性的平面检测。步骤2,特征线候选点提取,将检测出的平面所能拟合的点投影到平面上,构造位图并 选择出边界点作为候选点。步骤3,在候选点上应用随机采样一致性检测出特征线所在的直线。 步骤4,基于主成分分析(Principal Component Analysis)的线段参数计算,将每条直 线所能拟合的点划分为多个相互连通的区域,为每个区域计算线段的起点和终点。
2.根据权利要求1所述的三维点云中基于随机采样一致性的特征线检测方法,其特征 在于基于随机采样一致性RANSAC的平面检测,采用的是点云中基于RANSAC的基元检测方 法,该方法是在点云中随机选取三个点确定一个平面,然后根据点云中其余点到平面的距 离以及法向量的偏差选择出一个最优平面,即能够被此平面拟合的点的数目最大,其过程 如下步骤1、从点云中随机选择三个点{外‘,乂,淖;步骤2、根据选择的三个点的位置构造一个估计平面,即根据三个点的位置 构造一个平面Lt ;步骤3、根据三个点的法向量以及估计平面的法向量判断平面是否有效; 步骤4、计算点云中其余点到估计平面的距离以及与法向量的夹角,将满足阈值的点的 个数作为当前估计平面的分数,更新最优平面的分数及参数;步骤5、判断是否达到最大采样次数,如果未达到,则执行步骤1 4,否则继续; 步骤6、将选择出的最优平面记录并将被此最优平面拟合的点从点云中移除; 步骤7、判断剩余的点是否可以形成或可以拟合某个特定数目点的平面,如果可以,则 执行步骤1 6,否则执行结束,返回数据。
3.根据权利要求1所述的三维点云中基于随机采样一致性的特征线检测方法,其特征 在于特征线候选点提取,将每个平面L所能拟合的点,即计入分数的点{ρ,投影到L上,并 将投影区域的边界点作为构成特征线的候选点,过程如下步骤1、计算点乂到平面L的投影; 步骤2、构建平面上投影点的位图;步骤3、在位图中检测边界点,此处按照先行后列的顺序遍历步骤2中构建的位图,并 按照8邻域,上、下、左、右、左上、右上、左下、右下,检测出存在值为0的邻居的格子; 步骤4、将在位图中检测出的边界点对应的投影点作为候选点输出。
4.根据权利要求1所述的三维点云中基于随机采样一致性的特征线检测方法,其特征 在于在得到特征线的候选点之后,接下来将在这些候选点中检测出特征线,主要流程是步骤1,从候选点中随机选择两个点;步骤2,根据选择的两个点的位置构造一条估计直线;步骤3,计算候选点中其余点到估计直线的距离,将满足阈值的点的个数作为当前估计 直线的分数,更新最优直线的分数及参数;步骤4,判断是否达到最大采样次数,如果未达到,则执行步骤1,否则继续; 步骤5,将选择出的最优直线记录并将被此最优直线拟合的点从候选点中移除; 步骤6,判断剩余的点是否可以形成至少可以拟合某个特定数目点的直线,如果可以, 则执行步骤1,否则执行结束,返回数据。
5.根据权利要求1所述的三维点云中基于随机采样一致性的特征线检测方法,其特征 在于基于主成分分析(Principal Component Analysis)的线段参数计算的步骤如下步骤1、对于每条特征线,将满足距离约束的点按照距离阈值λ划分为多个区域,SP如 果两个边界点的之间的距离小于λ,则认为它们处于同一条线段中;步骤2、对于每个区域中的所有点,计算其重心位置,并构造协方差矩阵,而后对此矩阵 进行特征值分解,选取最大特征值对应的特征向量作为线段的方向;步骤3、为区域内的所有点构造与轴方向平行的最小长方体包围盒,并将包围盒的中心 投影到步骤2得到的直线上作为线段的中点;步骤4、由中点按照直线的正反方向移动包围盒长度的一半,将得到的两个点作为最终 特征线段的两个端点。
全文摘要
本发明公开了一种三维点云中基于随机采样一致性的特征线检测方法。该方法通过基于随机采样一致性在点云中检测出多个平面,然后将每个平面参数化域的边界点作为候选,在这些候选点上再应用随机采样一致性得到最终的特征线,从而有效降低噪声、外点和数据缺失的影响,大大增强特征线检测的鲁棒性,并提高了时间效率。
文档编号G06K9/46GK102034104SQ20101058128
公开日2011年4月27日 申请日期2010年12月10日 优先权日2010年12月10日
发明者党岗, 周竞文, 姜巍, 方皓, 李俊, 李宏华, 李宝, 林帅, 田艳花, 程志全, 金士尧, 陈寅 申请人:中国人民解放军国防科学技术大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1