当前位置: 首页 > 专利查询>东南大学专利>正文

一种基于八叉树的散乱点云压缩方法技术

技术编号:15641363 阅读:172 留言:0更新日期:2017-06-16 11:42
本发明专利技术公开了一种基于八叉树的散乱点云压缩方法,该方法针对无任何预知信息下的三维点云数据;本发明专利技术的方法改进了八叉树分割的停止条件,可以在适当的深度停止分割并确保体素大小合适;在分割的基础上建立k邻域,利用简单有效的统计方法去除原始点云的离群点;而在数据结构上,对每个节点分配位掩码,通过操纵位掩码,在遍历时对数据查询和操作,并优化随后的点位置编码。该方法有效的移除了离群点和表面杂点,并在区间编码提高了点云压缩效率。

【技术实现步骤摘要】
一种基于八叉树的散乱点云压缩方法
:本专利技术属于计算机辅助设计和点云处理领域,尤其是涉及一种针对散乱点云的压缩方法。
技术介绍
:随着点云处理技术、现代光学技术、激光扫描等技术飞速发展,点云数据已经在计算机辅助设计和图形学领域有了广泛应用。而随着扫描仪器精度的提高,获取的点云级数越来越大,存储和传输点云的速度变慢,为了处理这类问题,点云数据的压缩变得愈加重要。并且在实际操作中,利用三维系统获取点云时,由于设备精度、操作者经验、环境因素等带来的影响以及被测物体表面变化和数据拼接配准操作过程的影响,点云数据将出现一些噪声点,在实际测量中,除了测量随机误差产生的噪声点之外,受到外界干扰如视线遮挡、障碍物等因素的影响,点云数据往往存在一些离主体点云即被测物体点云较远的离散点,即离群点。不同的获取设备点云噪声结构也有不同(利用光栅系统获取点云时,在光栅无法投影的区域以及在点云重建阶段的计算误差会引发产生噪声点)。由于原始点云中离群点的干扰,会使得点云的处理变得困难。目前,离群点移除受到了国内外很多研究人员的重视,提出了基于局部点云特征移除方案,针对采样点处法向量或曲率变化率做运算,运算很复杂,很有可能导致错误的数值,反过来引发点云后期处理的失败。本文针对每个点的邻域做分析,采用统计的方法修剪掉那些不符合一定标准的点。
技术实现思路
本专利技术所要解决的技术问题在于克服现有技术的不足,本专利技术提出了一种基于八叉树的散乱点云压缩方法。本专利技术采用的技术方案如下:一种基于八叉树的散乱点云压缩方法,基于离散无序点云,具体步骤如下:步骤1:八叉树分割:根据读入点云数据划分包围盒,依照划分停止公式进行八叉树划分;步骤2:离群点移除:在步骤1分割的基础上建立k邻域,在八叉树最深处叶子节点分配位掩码,根据点的邻域的统计分析和位操作移除离群点,其中,该稀疏离群点移除方法基于在输入数据中对点到邻近点的距离分布的计算;步骤3:点位置细节编码;对于每个体素所占有的点做处理;在执行序列化的同时,利用广度优先遍历查询和编码点的局部细节,对含有超过一个点的体素,计算点和体素中心间的拓扑关系,产生与各自体素中心相关的位置细节参数流并存储,在解码时还原拓扑关系;步骤4:区间编码,将处理后的点云压缩数据写至一个文件中或者直接由数据流进行传输。进一步的,步骤1具体步骤如下:1.1:在读入点云数据之时,记录X,Y,Z三个维度的最值xmin,xmax,ymin,ymax,zmin,zmax;1.2:根据步骤1.1中得到的最值坐标,根据式(1)构造出包围盒Cube;其中(x=(xmax-xmin),y=(ymax-ymin),z=(zmax-zmin));Vcube为包围盒体积,edge为包围盒的边长;1.3:以构造的包围盒Cube为划分对象,根据分割停止标准划分最小包围盒Cubemin,其中分割停止标准建立基于叶子节点/点云比率、八叉树分辨率λ、层数之间的关系,计算点云总数和非空节点之间的差值与点云总数的比值,即为在划分过程中所产生的一定精度损失率t;P表示在当前层次深度中最小包围盒的数量,M为点云中点的数量,λ为八叉树分辨率,λ1为扫描仪精度,t为精度损失率,n为层数,当调节分辨率λ的时候,确保t在(0,0.1]之间;1.4:判断步骤1.3中得到最小包围盒Cubemin的个数是否均满足精度损失率t要求,如果满足,则卦限不需要继续细分并跳至步骤1.5;否则继续将该卦限进行八等分,直到所有卦限内最小包围盒Cubemin个数均满足精度损失率t的要求;1.5:对步骤1.4中获取的所有细分卦限,判断每个卦限内点云数量是否均不小于1;如果是,则点云模型空间划分结束。进一步的,步骤2具体包括以下步骤:2.1:在完成逐层划分之后,对数据编码,通过八叉树对每个数据搜索其邻域点,找到最近的k个点作为k邻域;2.2:在步骤2.1的基础上,对每个点的k邻域进行一个统计分析;稀疏离群点移除方法基于在输入数据中对点到邻近点的距离分布的计算;对每个点,计算它到域中所有邻近点的均值μ和标准差σ,去除超出u±a·σ的点,a的值取决于被分析k邻域的尺寸;2.3:设节点N的位掩码表示为SN,遍历查询的离群点K的位掩码表示为SK,SN的长度为8,设给定节点SN=1表示节点包围盒至少有一个点,SN=0表示包围盒为空,设Nn为新八叉树Sn的根部,当判断Sn没有遍历至底端时,Nn赋值为有遍历顺序Sn的非空节点,如果Sn的节点Nn满足NK一样的离群点条件则SK=bitewiseAND(SK,0),否则初始化一个Sn的新的节点N并把其当作当前区域新的根部位掩码其中bitewiseAND为按位与操作。进一步的,步骤4具体包括以下步骤:4.1:形成频率表:区间长度为s,设有一整数区间i∈[L,H),其中:L为区间下沿,H为区间上沿,区间范围R=H-L+1;T为符号S的总计频率,fs为符号S的频率,令Fs为符号S的累计频率,该累计频率是符号小于S的其他符号的频率总和4.2:设Ai是信息中的第i个想要编码的字母,1≤i≤k,根据步骤4.1的频率表选择s大小的区间长度编码A1,留下R1的区间长度编码A2,留下R2的区间长度编码A3,依次类推。进一步的,所述步骤2.1中,对于非空叶子节点查询其立方体的数据点和周围26个叶子节点立方体中的数据点并找到最近的k个点作为k邻域,如果邻域内点的个数不足k个,则扩大搜索范围至124个叶子节点立方体中的数据点查找,最终完成k邻域的建立。进一步的,所述步骤2还包括根据八叉树的编码特点,点云坐标P(x,y,z)和树中节点(a,b,c)相对应且树中任一个节点都与一个最小包围盒Cubemin一一对应;节点的编码为M=mn-1…m2m1m0,mn-1为结点在n层的节点序号;利用空间坐标计算出节点索引值,其中,λ为八叉树分辨率,其编码可用二进制表示:节点序号mi和ai,bi,ci之间的关系可表示为:mi=ai+bi·2+ci·4(5)或ai=(mimod2),bi=[(mi/2)mod2],ci=[(mi/4)mod2](6)其中:mod为取模运算符,利用公式5、6可以由点包围盒邻接的立方体得出节点在树中的编码,即可从根节点沿路径检测出节点,按此规则,在A搜索出距离最近的k个点,得到点A的k邻域N|A|。进一步的,所述步骤4.1中区间长度的计算公式为,其中:T为符号S的总计频率,fs为符号S的频率,Fs为符号S的累计频率;如果在区间长度s上的完整范围是[Bk,Bk+Rk),当Rk小于一定阈值的时候,从[Bk,Bk+Rk)中提取一个数值来表示整个压缩数据,其中,Bj是区间下沿的计算公式,Ri是区间长度的计算公式,Bk,Rk表示当满足一定阈值要求时的区间下沿和区间长度。有益效果:本专利技术公开了一种针对散乱点云的压缩方法,所述方法针对无任何预知信息下的三维点云数据。本专利技术的方法改进了八叉树分割的停止条件,可以在适当的深度停止分割并确保体素大小合适;在分割的基础上建立k邻域,利用简单有效的统计方法去除原始点云的离群点;而在数据结构上,对每个节点分配位掩码,通过操纵位掩码,在遍历时对数据查询和操作,并优化随后的点位置编码。该方法有效的移除了离群点和表面杂点,并在区间编码提高了点云压缩效率。附图说明本文档来自技高网...
一种基于八叉树的散乱点云压缩方法

【技术保护点】
一种基于八叉树的散乱点云压缩方法,基于离散无序点云,其特征在于:具体步骤如下:步骤1:八叉树分割:根据读入点云数据划分包围盒,依照划分停止公式进行八叉树划分;步骤2:离群点移除:在步骤1分割的基础上建立k邻域,在八叉树最深处叶子节点分配位掩码,根据点的邻域的统计分析和位操作移除离群点,其中,该稀疏离群点移除方法基于在输入数据中对点到邻近点的距离分布的计算;步骤3:点位置细节编码;对于每个体素所占有的点做处理;在执行序列化的同时,利用广度优先遍历查询和编码点的局部细节,对含有超过一个点的体素,计算点和体素中心间的拓扑关系,产生与各自体素中心相关的位置细节参数流并存储,在解码时还原拓扑关系;步骤4:区间编码,将处理后的点云压缩数据写至一个文件中或者直接由数据流进行传输。

【技术特征摘要】
1.一种基于八叉树的散乱点云压缩方法,基于离散无序点云,其特征在于:具体步骤如下:步骤1:八叉树分割:根据读入点云数据划分包围盒,依照划分停止公式进行八叉树划分;步骤2:离群点移除:在步骤1分割的基础上建立k邻域,在八叉树最深处叶子节点分配位掩码,根据点的邻域的统计分析和位操作移除离群点,其中,该稀疏离群点移除方法基于在输入数据中对点到邻近点的距离分布的计算;步骤3:点位置细节编码;对于每个体素所占有的点做处理;在执行序列化的同时,利用广度优先遍历查询和编码点的局部细节,对含有超过一个点的体素,计算点和体素中心间的拓扑关系,产生与各自体素中心相关的位置细节参数流并存储,在解码时还原拓扑关系;步骤4:区间编码,将处理后的点云压缩数据写至一个文件中或者直接由数据流进行传输。2.根据权利要求1所述的一种基于八叉树的散乱点云压缩方法,其特征在于:步骤1具体步骤如下:1.1:在读入点云数据之时,记录X,Y,Z三个维度的最值xmin,xmax,ymin,ymax,zmin,zmax;1.2:根据步骤1.1中得到的最值坐标,根据式(1)构造出包围盒Cube;其中(x=(xmax-xmin),y=(ymax-ymin),z=(zmax-zmin));Vcube为包围盒体积,edge为包围盒的边长;1.3:以构造的包围盒Cube为划分对象,根据分割停止标准划分最小包围盒Cubemin,其中分割停止标准建立基于叶子节点/点云比率、八叉树分辨率λ、层数之间的关系,计算点云总数和非空节点之间的差值与点云总数的比值,即为在划分过程中所产生的一定精度损失率t;P表示在当前层次深度中最小包围盒的数量,M为点云中点的数量,λ为八叉树分辨率,λ1为扫描仪精度,t为精度损失率,n为层数,当调节分辨率λ的时候,确保t在(0,0.1]之间;1.4:判断步骤1.3中得到最小包围盒Cubemin的个数是否均满足精度损失率t要求,如果满足,则卦限不需要继续细分并跳至步骤1.5;否则继续将该卦限进行八等分,直到所有卦限内最小包围盒Cubemin个数均满足精度损失率t的要求;1.5:对步骤1.4中获取的所有细分卦限,判断每个卦限内点云数量是否均不小于1;如果是,则点云模型空间划分结束。3.根据权利要求1或2所述的一种基于八叉树的散乱点云压缩方法,其特征在于:步骤2具体包括以下步骤:2.1:在完成逐层划分之后,对数据编码,通过八叉树对每个数据搜索其邻域点,找到最近的k个点作为k邻域;2.2:在步骤2.1的基础上,对每个点的k邻域进行一个统计分析;稀疏离群点移除方法基于在输入数据中对点到邻近点的距离分布的计算;对每个点,计算它到域中所有邻近点的均值μ和标准差σ,去除超出u±a·σ的点,a的值取决于被分析k邻域的尺寸;2.3:设节点N的位掩码表示为SN,遍历查询...

【专利技术属性】
技术研发人员:达飞鹏唐林黄源
申请(专利权)人:东南大学
类型:发明
国别省市:江苏,32

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

1