基于分层聚类和拓扑连接模型的海量点云自适应简化方法技术

技术编号:14478446 阅读:65 留言:0更新日期:2017-01-25 11:08
本发明专利技术公开了一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法,包括以下步骤:通过三维扫描获取海量高密度线扫描点云数据,提出线扫描点云矢量边对衍生算法并采用基于八叉树的分层聚类方法进行初始类划分及K邻域构建并建立拓扑连接模型;基于点云中任意一点P0的局部单位法矢函数构造并计算不等权重因子;通过自定义比例因子γ建立非均匀细分模型,实现对高曲率初始类的非均匀细分。在三维构型软件平台下基于上述点云简化算法可通过二次开发的方式进一步应用。本发明专利技术可在不借助任何拟合曲面的前提下对线扫描点云数据进行采样,具有较高的计算效率,且在点云的自适应曲率感知方面表现突出。

【技术实现步骤摘要】

本专利技术涉及数据处理、计算机图形学和逆向工程领域,尤其是一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法
技术介绍
采样效率和曲率适应性是海量高密度线扫描点云采样的难点。传统的基于网格的算法在保护特征点的基础上,通过几何或拓扑方法去除冗余点,具有较好的算法稳定性,但网格计算的时间复杂度较高,算法效率得不到保证;基于点集的直接采样算法因其显著的效率优势逐渐在工业中得到广泛应用,但仍然面临存储空间优化、曲率适应性和边界保护等诸多挑战。对于海量高密度点云数据,分层聚类算法是最有效的无监督算法,它将给定的数据集逐次分层,直至满足某一特定条件。由于点集合并与细分是无法取消的,因此细分决策至关重要。常见的细分标准有距离、密度、连通性等。作为主流的数据采集方法,激光扫描测量所获得的点云往往是按扫描线类型存储的。通过探寻数据点间的拓扑关系,线扫描数据的这种空间结构特点可以被充分利用到数据采样中。
技术实现思路
本专利技术的目的是为了解决上述问题,针对海量高密度线扫描点云,通过构建线扫描点云数据的拓扑连接模型,提供一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法。本专利技术的一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法,包括以下步骤:步骤一、获取海量高密度线扫描点云数据。步骤二、采用基于八叉树的分层聚类方法进行初始类划分及K邻域构建步骤三、建立拓扑连接模型激光扫描系统获得的点云是按扫描线类型存储的,即在扫描样件时,扫描线上数据点在激光测头移动方向上的坐标值是一致的,并且数据点是有顺序地被存储在计算机中。按照一定的衍生规则依次连接相邻扫描线上的临近点,构成多条矢量边,形成线扫描点云的拓扑连接模型。这里给出矢量边对的衍生算法。假设矢量边对的原点为Qk+1,1,第一条矢量边为A0,则第二条矢量边由Qk+1,1到距离Qk+1,1最近的点形成的矢量决定。由于最近点可能为Qk,2或者Qk+1,2,因此第二条矢量边的生成可能出现同边衍生和异边衍生两种情况:a.异边衍生。Qk,2为最近点。此时,B0为第二条矢量边,A0和B0构成了第一对矢量边对。第二对的第一条矢量边A1继承B0,第二对的第二条矢量边B1为按此规律即可生成全部矢量边对。b.同边衍生。Qk+1,2为最近点。此时,B0为第二条矢量边,A0和B0构成了第一对矢量边对。第二对的第一条矢量边A1为第二对的第二条矢量边B1为按此规律即可生成全部矢量边对。构造点云中任意一点P0的局部单位法矢函数式中m和wi分别为P0的K邻域内数据点的个数和P0点邻域内三角片的法矢量。步骤四、不等权重因子的计算。具体算法如下:Step1:构造以P0点为顶点的四面体最小外接球,将球面上P0的法矢命名为n0,并将其近似看作局部法矢。定义四面体Ta,PK=(xK,yK,zK),K=0,1,2,3为四面体顶点,S=(xc,yc,zc,R)是四面体的最小包容球,即(x-xc)2+(y-yc)2+(z-zc)2=R2。式中C=(xc,yc,zc)为球心,r为半径;Step2:将PK(K=1,2,3)带入上式,得式中K=0,1,2,3为PK到原点的距离;Step3:将S的球心可表示为xc=[(L02-L12)a1+(L02-L22)a2+(L02-L32)a3]/2λ]]>yc=[(L02-L12)b1+(L02-L22)b2+(L02-L32)b3]/2λ]]>zc=[(L02-L12)c1+(L02-L22)c2+(L02-L32)c3]/2λ]]>式中Step4:定义向量τj=[ajbjcj],j=1,2,3,则有式中Ei(i=1,2,3)——分别表示ΔP0P1P2ΔP0P2P3和ΔP0P1P3的面积。Step5:将球面上P0的法矢记为根据三角形三边的几何关系,将step3的公式带入上式,得n0=(ξ12a1+ξ22a2+ξ32a3)/2λ(ξ12b1+ξ22b2+ξ32b3)/2λ(ξ12c1+ξ22c2+ξ32c3)/2λT]]>式中:ξi(i=1,2,3)表示四面体的边长。将此公式与step4公式进行对比,得式中ωi(i=1,2,3)表示不等权因子。Step6:假设P0在扫描线k上,Qj(j=1,2,…,6)是P0的相邻点,Ωk-1是扫描线k-1所在平面。在三角形TA1中,li和li+1是P0的临边,liOP是对边。li-1和li+2是P0邻边的边长,作直线P0Pv⊥Q1Q2,以及P0点在Ωk-1上的投影点PT。Dk表示P0点到Ωk-1的距离,为PvP0与PTP0的夹角。在三角形TA1中,参考n1的加权系数可记为式中,li+2,li-1,liOP为扫描线上数据点间的间距,Dk为相邻平面Ωk和Ωk-1的距离。这些都属于线扫描数据结构参数,随着扫描线生成而唯一确定。综上,P0的局部法矢n0可记为式中为PvP0与PTP0的夹角,m为P0的K邻域内数据点的个数。步骤五、非均匀细分模型的建立。局部法矢变化量反映了点在其K邻域内的弯曲程度,适合作为细分准则。假设八叉树初始分区后的子立方体包含v个点,可根据以下公式求得立方体内v个点的平均法矢变化量ψj=1υΣi=1υ|Σi=1m-1(ni-n0)/m-1|]]>式中n0为点P0的局部法矢,v为初始类划分后的子立方体内包含数据点的个数。δ=γψ‾]]>式中:γ为自定义的比例因子,其值在0.5-1.0之间,为所有子立方体ψj的平均值。通过平均法矢变化量阈值δ来判断每个子数据集是否需要非均匀细分。如果ψj<δ,表明子区域曲率较低,保留子立方体中法矢变化量最接近ψj的点,删除其余点;当ψj>δ时,表明子区域曲率较高,应进一步细分直至新的子立方体中满足ψj<δ。对于ψj值高于δ的子立方体,需要进一步细分。分割后子立方体边长可记为式中L为初始子立方体的边长,L'为细分后新子立方体的边长,θ为初始子立方体的局部法矢变化量,θmax为所给的局部法矢变化量阈值,为向上取整函数。上式表明初始立方体被分成λ个子立方体,θ的不同值对应不同数量的子立方体。直到满足条件ψj<δ或者在子立方体中只有一个点时细分会停止。步骤六、在三维构型软件平台下基于上述点云简化算法进一步应用。本专利技术通过构建线扫描点云数据的拓扑连接模型,提出一种基于递归分层聚类的非均匀简化算法对海量高密度线扫描点云进行自适应采样。该方法通过分析线状点云的空间几何特征,提出了线扫描点云矢量边对衍生算法,在此基础上建立了拓扑连接模型;研究了基于线扫描点云特征参数的局部法矢加权系数计算方法,估算了拓扑结构中任意数据内点的局部法矢;构建了以法矢方差为细分准则的非均匀细分模型,实现了对高曲率初始类的非均匀细分。本专利技术的优点在于:1)本专利技术在不借助任何拟合曲面的前提下对线扫描点云数据进行采样,具有较高的计算效率。2)本专利技术在自适应曲率感知方面表现较为突出。3)本专利技术较好地保留了大曲率部位的特征点,且具有较小的本文档来自技高网...
基于分层聚类和拓扑连接模型的海量点云自适应简化方法

【技术保护点】
一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法,包括以下几个步骤:步骤一、通过三维激光扫描仪获取海量高密度线扫描点云数据;步骤二、采用基于八叉树的分层聚类方法进行初始类划分及K邻域构建;建立点云的最小外接立方体C0并将其划分成八个等大的子立方体,重复进行直到子立方体边长小于给定的最小边长Lmin为止;对于任意数据点P0,在其包围盒内用距离函数搜索距离P0最近的k个点构成该点的K邻域;如果向外扩展了指定层数T后,包围盒内点数仍然少于指定个数,则说明P0包围盒内点都是噪声点,剔除;若以P0为中心向外扩展了S层以后,S<T,所找到的数据点数n仍然小于指定的邻域数据点个数m,则向上一层搜索,直至n≥m或S=T为止;步骤三、建立拓扑连接模型;假设矢量边对的原点为Qk+1,1,第一条矢量边为A0,则第二条矢量边由Qk+1,1到距离Qk+1,1最近的点形成的矢量决定,最近点为Qk,2或者Qk+1,2,则第二条矢量边的生成为同边衍生和异边衍生两种情况:a.异边衍生:Qk,2为最近点,B0为第二条矢量边,A0和B0构成了第一对矢量边对;第二对的第一条矢量边A1继承B0,第二对的第二条矢量边B1为按此规律生成全部矢量边对;b.同边衍生:Qk+1,2为最近点,B0为第二条矢量边,A0和B0构成了第一对矢量边对;第二对的第一条矢量边A1为第二对的第二条矢量边B1为按此规律生成全部矢量边对;构造点云中任意一点P0的局部单位法矢函数式中m和wi分别为P0的K邻域内数据点的个数和P0点邻域内三角片的法矢量;步骤四、计算不等权重因子,具体如下:Step1:构造以为顶点P0的四面体最小外接球,将球面上P0的法矢命名为n0,并将其看作局部法矢,定义四面体Ta,PK=(xK,yK,zK),K=0,1,2,3为四面体顶点,S=(xc,yc,zc,R)是四面体的最小包容球,即(x‑xc)2+(y‑yc)2+(z‑zc)2=R2;式中C=(xc,yc,zc)为球心,r为半径;Step2:将PK带入上式,得式中:为PK到原点的距离;Step3:将S的球心表示为xc=[(L02-L12)a1+(L02-L22)a2+(L02-L32)a3]/2λ]]>yc=[(L02-L12)b1+(L02-L22)b2+(L02-L32)b3]/2λ]]>zc=[(L02-L12)c1+(L02-L22)c2+(L02-L32)c3]/2λ]]>式中:Step4:定义向量τj=[aj bj cj],j=1,2,3,则有式中:Ei分别表示ΔP0P1P2、ΔP0P2P3和ΔP0P1P3的面积,i=1,2,3;Step5:将球面上P0的法矢记为根据三角形三边的几何关系,将step3的公式带入上式,得n0=(ξ12a1+ξ22a2+ξ32a3)/2λ(ξ12b1+ξ22b2+ξ32b3)/2λ(ξ12c1+ξ22c2+ξ32c3)/2λT]]>式中:ξi表示四面体的边长,ωi表示不等权因子;Step6:假设P0在扫描线k上,Qj是P0的相邻点,j=1,2,…,6,Ωk‑1是扫描线k‑1所在平面;在三角形TA1中,li和li+1是P0的临边,liOP是对边;li‑1和li+2是P0邻边的边长,作直线P0Pv⊥Q1Q2,以及P0点在Ωk‑1上的投影点PT;Dk表示P0点到Ωk‑1的距离,为PvP0与PTP0的夹角;在三角形TA1中,根据n1的加权系数为:式中,li+2,li‑1,liOP为扫描线上数据点间的间距,Dk为相邻平面Ωk和Ωk‑1的距离;综上,P0的局部法矢n0记为式中:为PvP0与PTP0的夹角,m为P0的K邻域内数据点的个数;步骤五、建立非均匀细分模型;假设八叉树初始分区后的子立方体包含v个点,根据下式求得立方体内v个点的平均法矢变化量:ψj=1υΣi=1υ|Σi=1m-1(ni-n0)/m-1|]]>式中:n0为点P0的局部法矢,v为初始类划分后的子立方体内包含数据点的个数;δ=γψ‾]]>式中:γ为自定义的比例因子,为所有子立方体ψj的平均值;通过平均法矢变化量阈值δ来判断每个子数据集是否需要非均匀细分;如果ψj<δ,保留子立方体中法矢变化量最接近ψj的点,删除其余点;当ψj>δ时,进一步细分直至新的子立方体中满足ψj<δ;对于ψj值高于δ的子立方体,分割后子立方体边长为式中:L为初始子立方体的边长,L'为细分后新子立方体的边长,θ为初始子立方体的局部法矢变化量,θmax为所给的局...

【技术特征摘要】
2016.07.25 CN 20161059123701.一种基于分层聚类和拓扑连接模型的海量点云自适应简化方法,包括以下几个步骤:步骤一、通过三维激光扫描仪获取海量高密度线扫描点云数据;步骤二、采用基于八叉树的分层聚类方法进行初始类划分及K邻域构建;建立点云的最小外接立方体C0并将其划分成八个等大的子立方体,重复进行直到子立方体边长小于给定的最小边长Lmin为止;对于任意数据点P0,在其包围盒内用距离函数搜索距离P0最近的k个点构成该点的K邻域;如果向外扩展了指定层数T后,包围盒内点数仍然少于指定个数,则说明P0包围盒内点都是噪声点,剔除;若以P0为中心向外扩展了S层以后,S<T,所找到的数据点数n仍然小于指定的邻域数据点个数m,则向上一层搜索,直至n≥m或S=T为止;步骤三、建立拓扑连接模型;假设矢量边对的原点为Qk+1,1,第一条矢量边为A0,则第二条矢量边由Qk+1,1到距离Qk+1,1最近的点形成的矢量决定,最近点为Qk,2或者Qk+1,2,则第二条矢量边的生成为同边衍生和异边衍生两种情况:a.异边衍生:Qk,2为最近点,B0为第二条矢量边,A0和B0构成了第一对矢量边对;第二对的第一条矢量边A1继承B0,第二对的第二条矢量边B1为按此规律生成全部矢量边对;b.同边衍生:Qk+1,2为最近点,B0为第二条矢量边,A0和B0构成了第一对矢量边对;第二对的第一条矢量边A1为第二对的第二条矢量边B1为按此规律生成全部矢量边对;构造点云中任意一点P0的局部单位法矢函数式中m和wi分别为P0的K邻域内数据点的个数和P0点邻域内三角片的法矢量;步骤四、计算不等权重因子,具体如下:Step1:构造以为顶点P0的四面体最小外接球,将球面上P0的法矢命名为n0,并将其看作局部法矢,定义四面体Ta,PK=(xK,yK,zK),K=0,1,2,3为四面体顶点,S=(xc,yc,zc,R)是四面体的最小包容球,即(x-xc)2+(y-yc)2+(z-zc)2=R2;式中C=(xc,yc,zc)为球心,r为半径;Step2:将PK带入上式,得式中:为PK到原点的距离;Step3:将S的球心表示为xc=[(L02-L12)a1+(L02-L22)a2+(L02-L32)a3]/2λ]]>yc=[(L02-L12)b1+(L02-L22)b2+(L02-L32)b3]/2λ]]>zc=[(L02-L12)c1+(L02-L22)c2+(L02-L32)c3]/2λ]]>式中:Step4:定义向量τj=[ajbjcj],j=1,2,3,则有...

【专利技术属性】
技术研发人员:周煜姬芬竹张奇刘勐
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1