点云精简系统及方法技术方案

技术编号:2944084 阅读:266 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种点云精简方法,包括步骤:(a)从一个点云获取装置中接收点云数据;(b)为上述点云建立拓扑结构;(c)选择点云中的一个点;(d)根据拓扑结构,寻找与该点距离最近的若干个点;(e)将该点与所述若干个点进行局部抛物面拟和,得到该抛物面的一般方程式,并根据该一般方程式及曲率计算公式计算该点的曲率;重复步骤(c)到(e),直至点云中所有点的曲率都计算完毕;及(f)根据上述计算出来的曲率,以及用户对该点云设置的精简度参数,对该点云进行精简处理。本发明专利技术还提供一种点云精简系统。利用本发明专利技术所提供的点云精简系统及方法,可快速地对点云数据进行精简及过滤,以便获得一个数据量少、不失真且较均匀的点云。

【技术实现步骤摘要】

本专利技术涉及一种精简系统及方法,尤其是一种。
技术介绍
逆向工程是相对于正向工程而言,所谓正向工程是指已有产品的设计图纸,然后按图纸 加工出产品实物。而逆向工程是由高速三维激光扫描器对已有的实物(样品或模型)进行准 确、高速的扫描,获取实物的点云数据,根据所获点云数据构建三维数字模型,进而利用 CAM系统完成产品的制造。目前,利用三维激光扫描器扫描受测对象后,获得的点云数据一般密度较大,通常有数 十万、上百万、甚至上千万。而目前在逆向工程中,曲面重构算法的时间复杂度大都为n3, 因此,时间耗费是逆向工程软件需要解决的首要问题。进一步的,利用三维激光扫描器扫描受测对象得到的点云数据中,由于各种原因会导致 得到的点云数据有误差,甚至会出现噪声点,这样会导致重构出来的面极不平滑。
技术实现思路
鉴于以上内容,有必要提供一种点云精简系统,其可快速地对点云数据进行精简及过滤 ,以便获得一个数据量少、不失真且较均匀的点云。鉴于以上内容,还有必要提供一种点云精简方法,其可快速地对点云数据进行精简及过 滤,以便获得一个数据量少、不失真且较均匀的点云。一种点云精简系统,包括应用服务器。所述的应用服务器包括点云接收模块,用于从 一个点云获取装置中接收点云数据;拓扑结构建立模块,用于为上述点云建立拓扑结构,即 将点云中的所有点建立起关联;相邻点寻找模块,用于根据上述建立的拓扑结构,为点云中 的点寻找与之距离最近的若干个点;曲率计算模块,用于计算点云中的点的曲率,即将某一 点与距离该点最近的若干个点进行局部抛物面的拟和,得到该局部抛物面的一般方程式,并 根据该一般方程式及曲率计算公式计算出该点的曲率;及点云精简模块,用于根据上述计算 出来的曲率、及用户对该点云设置的精简度参数,对点云进行精简处理,即当某个点的曲率 与距离该点最近的若干个点的曲率平均值的差值在所述的精简度参数范围之内时,精简该点 ,否则,若不在精简度参数范围之内时,保留该点。一种点云精简方法,该方法包括如下步骤(a)从一个点云获取装置中接收点云数据;(b)为上述点云建立拓扑结构,即将点云中的所有的点建立起关联;(c)选择点云中的 一个点;(d)根据上述的拓扑结构,在点云中寻找与该点距离最近的若干个点;(e)将该 点与距离该点最近的若干个点进行局部抛物面拟和,得到该局部抛物面的一般方程式,并根 据该抛物面的一般方程式及曲率计算公式计算出该点的曲率;重复上述步骤(c)到步骤( e),直至点云中的所有的点的曲率都计算完毕;及(f)根据上述计算出来的曲率,以及用 户对该点云设置的精简度参数,对该点云进行精简处理。利用本专利技术,可以对三维激光扫描器扫描得到的点云数据进行精简,利用曲率差表示每 个点相较于该点相邻点的形变程度,对形变较小的平面,只保留必要的点,而精简掉其他冗 余点,对形变程度较大的点曲面,根据精简度要求决定保留的点数,因此可以获得一个数据 量少、不失真且较均匀的点云。附图说明图l是本专利技术点云精简系统系统较佳实施例的硬件架构图。图2是图1中应用服务器的功能模块图。图3是本专利技术点云精简方法较佳实施例的主流程图。图4是图3中步骤S11建立点云之间拓扑结构的具体实施流程图。图5是图3中步骤S13在点云中寻找距离一点最近的若干个点的具体实施流程图。图6是图3中步骤S 14计算一个点的曲率的具体实施流程图。图7是图3中步骤S 16对点云进行精简处理的具体实施流程图。具体实施例方式如图1所示,是本专利技术点云精简系统较佳实施例的硬件架构图。该系统主要包括点云获 取装置l、应用服务器2、网络3及多个使用者端计算机4。其中分布式分布的多个使用者端计算机4利用网络3与应用服务器2相连,网络3可以是一 企业内部网(Intranet),也可以是互联网(Internet)或其它类型的通讯网络。点云获取装置1与应用服务器2相连,用于获取扫描受测对象得到的点云数据。在本较佳 实施方式中,该点云获取装置l可以是一个三维激光扫描器,其通过扫描受测对象获取点云 数据。应用服务器2用于从点云获取装置1中接收点云数据,并对上述点云进行精简处理。 使用者端计算机4提供图形处理界面,该图形处理界面能够生成并显示应用服务器2汇入 的点云数据组成的图像,并可以显示对点云精简后的结果。如图2所示,是本专利技术点云精简系统较佳实施例中应用服务器2的功能模块图。所述应用服务器2主要包括点云接收模块20、拓扑结构建立模块21、点选择模块22、相邻点寻找模 块23、曲率计算模块24、判断模块25、点云精简模块26及点云输出模块27。本专利技术所称的模 块是完成一特定功能的计算机程序段,比程序更适合于描述软件在计算机中的执行过程,因 此在本专利技术以下对软件描述中都以模块描述。其中,所述点云接收模块20用于从点云获取装置1中接收点云数据,并在使用者端计算 机4提供的图形处理界面中生成并且显示上述点云数据形成的图像。所述拓扑结构建立模块21主要用于为上述点云建立拓扑结构,即将点云中的所有的点建 立起关联。该拓扑结构建立模块21按照一个设定的网格间距St印将上述点云所在的立方体区 域以一定的网格数目进行网格化以得到多个网格,并为每个网格设置序号,将每一个网格的 序号与在立方体空间内与该网格相邻的26个网格的序号存储在一个列表中,从而将所有的网 格之间建立起关联。所述的网格间距St印根据实际的情况可以设定不同的值,例如,用户希 望每个网格中的点多,则网格间距St印的值可以设置的大一些,若希望每个网格中的点少, 则网格间距St印的值可以小一些。所述点选择模块22用于在上述点云中任意选择其中一个点(下称该点)。所述相邻点寻找模块23用于根据上述建立的拓扑结构,寻找与该点距离最近的若干个点 。寻找与该点距离最近的若干个点是通过所述相邻点寻找模块23取得该点所在的网格(下称 :该网格)序号,根据上述列表寻找与该网格在立方体空间内相邻的26个网格,计算包括该 网格在内,共27个网格中所有点与该点的距离,得到距离该点最近的若干个点。曲率计算模块24主要用于将该点与距离该点最近的若干个点(本较佳实施例中为24 32 个点)进行局部抛物面的拟和,并根据该抛物面的一般方程式,及曲率的计算公式计算出该 点的曲率。以下以计算点云中一个点的曲率对所述曲率计算模块24的功能进行详细说明首先,建立以该点为原点的局部坐标系,则所述24 32个点在该局部坐标系下的坐标值 分别为将该24 32个点在原坐标系下的坐标值减去该点(原点)在原坐标系下的坐标值。在局部坐标系下,将该点与所述24 32个点进行局部抛物面拟和,得到该局部抛物面的 一般方程式<formula>formula see original document page 8</formula><formula>formula see original document page 9</formula>其中,u, v, h分别代表该点以及与所述24 32个点的x, y, z坐标值;N代表进行抛物面 拟和的点的个数,例如,若所述相邻点寻找模块23寻找到30个与该点距离最近的点,则 N=31。最后,所述曲率计算模块24利用曲率计算公式 Curvature = 本文档来自技高网...

【技术保护点】
一种点云精简系统,包括应用服务器,其特征在于,所述应用服务器包括: 点云接收模块,用于从一个点云获取装置中接收点云数据; 拓扑结构建立模块,用于为上述点云建立拓扑结构,即将点云中的所有点建立起关联; 相邻点寻找模块,用于根据上述建立的拓扑结构,为点云中的点寻找与之距离最近的若干个点; 曲率计算模块,用于计算点云中的点的曲率,即将某一点与距离该点最近的若干个点进行局部抛物面的拟和,得到该局部抛物面的一般方程式,并根据该一般方程式及曲率计算公式计算出该点的曲率;及 点云精简模块,用于根据上述计算出来的曲率、及用户对该点云设置的精简度参数,对点云进行精简处理,即当某个点的曲率与距离该点最近的若干个点的曲率平均值的差值在所述的精简度参数范围之内时,精简该点,否则,若不在精简度参数范围之内时,保留该点。

【技术特征摘要】

【专利技术属性】
技术研发人员:张旨光付山阳吴新元孙小超
申请(专利权)人:鸿富锦精密工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:94[中国|深圳]

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

1
相关领域技术
  • 暂无相关专利