点云采样方法及系统技术方案

技术编号:13454798 阅读:64 留言:0更新日期:2016-08-02 18:24
一种点云采样方法,应用于计算装置中,包括:接收点云网格化文件,并从该点云网格化文件中获取点云的信息;根据所获取的点云的信息计算点云的包围盒,把所述包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方体;给每个有效立方体中的每个点随机分配一个参考值;根据每个有效立方体中的所有点的参考值分别对每个有效立方体进行采样获取每个有效立方体的初始采样点,将每个有效立方体的初始采样点合并成所述点云的初始采样点;根据所述点云中点的总数及预设采样比例对所述点云的初始采样点进行处理以完成对所述点云的采样。本发明专利技术还提供一种点云采样系统。本发明专利技术能降低计算复杂度,提高运算效率。

【技术实现步骤摘要】

本专利技术涉及点云处理
,尤其涉及一种点云采样方法及系统
技术介绍
点云精简是点云处理的关键步骤,三维扫描时,一个产品的完整点云通过多幅点云合幷而成,往往数据量很大,因此,对点云进行精简显得格为重要。如果对合幷完的点云进行合适的精简,能有效的提高处理效率。随机采样在对数据精度要求不是非常高的情况下,由于算法复杂度较低,能很好的提高运算效率。
技术实现思路
鉴于以上内容,有必要提供一种点云采样方法及系统,能够降低计算复杂度,提高运算效率。一种点云采样方法,应用于计算装置中,该方法包括:获取步骤,接收点云网格化文件,并从该点云网格化文件中获取点云的信息;计算步骤,根据所获取的点云的信息计算点云的包围盒,把所述包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方体;分配步骤,给每个有效立方体中的每个点随机分配一个参考值;采样步骤一,根据每个有效立方体中的所有点的参考值分别对每个有效立方体进行采样获取每个有效立方体的初始采样点,将每个有效立方体的初始采样点合并成所述点云的初始采样点;采样步骤二,根据所述点云中点的总数及预设采样比例对所述点云的初始采样点进行处理以完成对所述点云的采样。一种点云采样系统,应用于计算装置中,该系统包括:获取模块,用于接收点云网格化文件,并从该点云网格化文件中获取点云的信息;计算模块,用于根据所获取的点云的信息计算点云的包围r>盒,把所述包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方体;分配模块,用于给每个有效立方体中的每个点随机分配一个参考值;采样模块,用于根据每个有效立方体中的所有点的参考值分别对每个有效立方体进行采样获取每个有效立方体的初始采样点,将每个有效立方体的初始采样点合并成所述点云的初始采样点;所述采样模块,还用于根据所述点云中点的总数及预设采样比例对所述点云的初始采样点进行处理以完成对所述点云的采样。相较于现有技术,所述点云采样方法及系统将点云划分为多个立方体,然后对每个立方体随机采样,对每个立方体随机采样后的数据合并处理为所述点云的采样数据,该方法计算复杂度较低,能很好的提高运算效率。附图说明图1是本专利技术点云采样系统较佳实施例的运行环境示意图。图2是本专利技术点云采样系统较佳实施例的功能模块图。图3是本专利技术点云采样方法较佳实施例的流程图。主要元件符号说明计算装置1点云采样系统10存储设备11处理设备12获取模块100计算模块101分配模块102采样模块103如下具体实施方式将结合上述附图进一步说明本专利技术。具体实施方式参阅图1所示,是本专利技术点云采样系统较佳实施例的运行环境示意图。所述点云采样系统10运行于计算装置1中。该计算装置1还包括通过数据总线相连的存储设备11及一个或者多个处理设备12等。所述计算装置1可以是电脑、服务器等。所述的点云采样系统10包括一个或多个由程序代码组成的功能模块(详见图2),各功能模块存储于所述存储设备11中,并由所述处理设备12所执行,以实现如下功能:将点云划分为多个立方体,然后对每个立方体随机采样,对每个立方体随机采样后的数据合并处理为所述点云的采样数据,从而降低计算复杂度,提高运算效率。所述存储设备11用于存储所述点云采样系统10中各个程序段的程序代码。该存储设备11可以为智能媒体卡(smartmediacard)、安全数字卡(securedigitalcard)、快闪存储器卡(flashcard)等储存设备。参阅图2所示,在本实施例中,所述点云采样系统10的功能模块包括:获取模块100、计算模块101、分配模块102及采样模块103。以下将结合图3说明各模块的具体功能。参阅图3所示,是本专利技术点云采样方法较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。步骤S10,获取模块100接收用户上传到计算装置1中的点云网格化文件,并从该点云网格化文件中获取点云的信息。在本实施例中,所述点云的信息包括由网格后的点云所组成的多个三角形,每个三角形的单位法向量、三个顶点及三个顶点的三维坐标。步骤S11,计算模块101根据所获取的点云的信息计算点云的包围盒,并把所述包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方体。在本实施例中,计算模块101先分别计算出点云在X,Y和Z轴上的最大坐标和最小坐标,上述点云在X,Y和Z轴上的的最小坐标分别为pt1Min[x],pt1Min[y],pt1Min[z]及最大坐标分别为pt1Max[x],pt1Max[y],pt1Max[z]。则Δx=pt1Max[x]-pt1Min[x],Δy=pt1Max[y]-pt1Min[y],Δz=pt1Max[z]-pt1Min[z]。然后计算模块101以Δx、Δy和Δz作为边求出所述点云的包围盒。计算模块101把所述包围盒细分为多个立方体,并选取有效立方体的具体过程为:根据预设边长值L,L的取值范围在预设最大值与预设最小值之间。把所述包围盒切分成多个立方体。那么,X、Y、Z轴上的立方体的个数分别为: M = ΔX L , ]]> N = ΔY L , ]]> W = ΔZ L . ]]>在本实施例中,计算模块101计算所述包围盒中所有点之间的距离,再将所计算出的所有距离求和除以点的个数即可得到平均间距,该平均间距作为预设最大值。计算模块101计算出Δx、Δy和Δz间的最小值,并把Δx、Δy和Δz间的最小值作为预设最小值。建立一个链表数组list[M][N][W],将所述多个立方体的信息存储于链表数组。在本实施例中,所述链表数组存储着每个立方体的编号及立方体中所有点的编号,这样就可以将立方体中的点与立方体关联起来。根据每个所述立方体中是否包含至少一个点来判断每个所述立方体是否为有效立方体,在本实施例中,当一个所述立方体中包含至少一个点时,则该立方体为有效立方体;当所述立方体中没有包含一个点时,则该立方体不为有效立方体。依次本文档来自技高网...

【技术保护点】
一种点云采样方法,应用于计算装置中,其特征在于,该方法包括:获取步骤,接收点云网格化文件,并从该点云网格化文件中获取点云的信息;计算步骤,根据所获取的点云的信息计算点云的包围盒,把所述包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方体;分配步骤,给每个有效立方体中的每个点随机分配一个参考值;采样步骤一,根据每个有效立方体中的所有点的参考值分别对每个有效立方体进行采样获取每个有效立方体的初始采样点,将每个有效立方体的初始采样点合并成所述点云的初始采样点;及采样步骤二,根据所述点云中点的总数及预设采样比例对所述点云的初始采样点进行处理以完成对所述点云的采样。

【技术特征摘要】
1.一种点云采样方法,应用于计算装置中,其特征在于,该方法
包括:
获取步骤,接收点云网格化文件,并从该点云网格化文件中获取
点云的信息;
计算步骤,根据所获取的点云的信息计算点云的包围盒,把所述
包围盒切分为多个立方体,并从所切分的多个立方体中选取有效立方
体;
分配步骤,给每个有效立方体中的每个点随机分配一个参考值;
采样步骤一,根据每个有效立方体中的所有点的参考值分别对每
个有效立方体进行采样获取每个有效立方体的初始采样点,将每个有
效立方体的初始采样点合并成所述点云的初始采样点;及
采样步骤二,根据所述点云中点的总数及预设采样比例对所述点
云的初始采样点进行处理以完成对所述点云的采样。
2.如权利要求1所述的点云采样方法,其特征在于,所述计算步
骤中把所述包围盒切分为多个立方体,并从所切分的多个立方体中选
取有效立方体的具体过程为:
根据预设边长值,把所述包围盒切分成多个立方体;
建立一个链表数组,将每个所述立方体的信息存储于所述链表数
组,所述链表数组存储着每个立方体的编号及立方体中所有点的编号;
根据每个所述立方体中是否包含至少一个点来判断每个所述立方
体是否为有效立方体,当一个所述立方体中包含至少一个点时,则该
立方体为有效立方体;当所述立方体中没有包含一个点时,则该立方
体不为有效立方体;及
将所有有效立方体及每个有效立方体所包含的点的信息存储于有
效立方体链表中,所述有效立方体链表数组存储着每个有效立方体的
编号及有效立方体中所有点的编号。
3.如权利要求1所述的点云采样方法,其特征在于,所述每个有
效立方体中的每个点都对应一个状态值。
4.如权利要求3所述的点云采样方法,其特征在于,在所述采样
步骤一中对一个有效立方体进行采样的过程为:
(a1)根据所述有效立方体中的每个点的参考值,把所述有效立
方体中的所有点排序成一个有序序列;
(a2)判断所述有效立方体中点的数量是否小于所述有效立方体
的采样数目n,当所述有效立方体中点的数量小于所述有效立方体的
采样数目n,将选取所述有效立方体中所有点为初始采样点,并将所
述有效立方体中所有点的状态值都标记为1,当所述有效立方体中点
的数量大于所述有效立方体的采样数目n,执行(a3);及
(a3)从所述有序序列中选取排在前面的n个点为初始采样点,
并把所述n个点的状态值标识为1。
5.如权利要求3所述的点云采样方法,其特征在于,所述采样步
骤二中对所述点云的初始采样点进行处理的过程为:
(b1)根据所述点云中点的总数及预设采样比例计算采样点数量
N目标;
(b2)判断所述点云的初始采样点的数量n1是否等于采样点数量
N目标,当所述点云的初始采样点的数量n1等于采样点数量N目标时,所述
点云的初始采样点即为所述点云的最终采样点,完成了对所述点云的
采样,当所述点云的初始采样点的数量n1不等于采样点数量N目标时,
执行(b3);
(b3)判断所述点云的初始采样点的数量n1是否大于采样点数量
N目标,当所述点云的初始采样点的数量n1大于采样点数量N目标,从所述
点云的初始采样点中随机去除(n1-N目标)个初始采样点,完成对所述点
云的采样,当所述点云的初始采样点的数量n1小于采样点数量N目标,
执行(b4);
(b4)判断(N目标-n1)是否大于所有有效立方体的数量N有效立方体;当
(N目标-n1)不大于所有有效立方体的数量N有效立方体,执行(b5);当(N目标-n1)
大于所有有效立方体的数量N有效立方体时,执行(b6);
(b5)当剩余的有效立方体中有某个有效立方体中点的个数不足
(n+1)时,就外扩所述有效立方体,根据外扩后的所述有效立方体

\t中的点的参考值对外扩后的所述有效立方体中的点进行排序成有序序
列,将该有序序列更新为所述有效立方体的有序序列;
再分别从剩余的每个有效立方体的有序序列中再取排序排在第
n+1位的一个点,并把该点的状态值标记为1,将所述点云的初始采
样点和从剩余的每个有效立方体的有序序列中所取的所述第n+1位的
点合并成所述点云的新的初始采样点,返回步骤(b4),直至完成获取
到所述点云的最终采样点;
(b6)当所有有效立方体中有某个有效立方体中点的个数不足
(n+1)时,就外扩所述有效立方体,根据外扩后的所述有效立方体
中的点的参考值对外扩后的所述有效立方体中的点进行排序成有序序
列,将该有序序列更新为所述有效立方体的有序序列;
从所有每个有效立方体中的有序序列中再取排序排在第n+1位的
一个点,将所述点云的初始采样点和从剩余的每个有效立方体的有序
序列中所取的所述第n+1位的点合并成所述点云的新的初始采样点,
返回步骤(b4),直至获取到所述点云的最终采样点。
6.一种点云采...

【专利技术属性】
技术研发人员:张旨光吴新元魏哲睿谢鹏
申请(专利权)人:富泰华工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:广东;44

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

1