三维扫描原始数据转化为低面数3D模型的方法与流程

文档序号:13513954阅读:3085来源:国知局

本发明涉及计算机图形领域,特别涉及一种三维扫描原始数据转化为低面数3d模型的方法,用于动画、游戏、影视、ar、vr等的开发制作。



背景技术:

三维扫描是集光、机、电和计算机技术于一体的一项技术,以往主要应用于工矿企业。三维扫描对物体空间外形和结构进行扫描,以获得物体表面的空间坐标,从而将实物的立体信息转换为计算机能直接处理的数字信息,为实物的数字化打下了基础。

三维扫描技术目前已经开始应用在计算机影像艺术的创作领域,例如雕塑的扫描和室内外场景、物件的扫描、人物和动物的扫描等等。通常扫描后得到的数据是由大量的三维坐标点组成,这些数据点通常被称为点云。根据扫描议的性质、扫描参数和被扫描物体的大小的不同,这些扫描得到的电脑模型往往包含几百万到几亿个不等的点云数据。

由于扫描仪器所生成的点云分布上具有随机性,而计算机图形的处理尤其是动画创作等艺术上的处理通常需要三维模型的点云按照一定的规则分布,并要求模型的布线均匀、有序、平滑。因此这些扫描数据所形成的多边形模型无法直接用于计算机艺术创作上。目前,主流的方法是由人工凭借经验以扫描的高面模型为参考,重新手工创建符合动画创作等艺术需求的模型。



技术实现要素:

为了克服以上缺陷,本发明提供了一种能将高精度的三维扫描原始数据转化为数据量少且布线合理,从而易于在动画、vr等三维场景使用的模型的方法。

本发明提供一种三维扫描原始数据转化为低面数3d模型的方法,包括:

使用三维扫描设备对物体进行扫描,得到精细多边形模型数据,所述精细多边形模型数据的每1立方厘米的空间内含有200~2000个顶点;

处理器读取所述精细多边形模型,并将所述精细多边形模型作为输入模型;

在输入模型上设置基准多边形循环,所述设置基准多边形循环为沿着输入模型的曲面设置;

处理器根据输入模型、基准多边形循环和预设的方法,得出输出模型上每一个点的位置,从而得出完整的模型拓扑结构。

优选的,所述处理器根据输入模型、基准多边形循环和预设的方法,得出输出模型上每一个点的位置,包括:

处理器将输入模型上的顶点按照连接关系和基准多边形循环分成k组,每组顶点的集合为m1、m2...mi...mk,且每组集合的顶点之间彼此不重合,其中k为期望的输出模型的顶点数量;

对每组顶点的集合,处理器计算出集合内顶点坐标的算数平均数为pmi(xi,yi,zi);

将pmi(xi,yi,zi)作为输出模型上的顶点坐标,即输出模型上每一个点的位置。

优选的,所述处理器将输入模型上的顶点按照连接关系和基准多边形循环分成k组,包括:

指定输入模型上的基准多边形循环上的顶点o1、o2...oi...oj,j为一选取的正整数;

处理器所述顶点oi为中心,沿着输入模型的表面连接选取相邻的(n/k)个顶点形成一组,且对不同的顶点oi,选取的顶点之间彼此不重合,其中n为输入模型的顶点数;

处理器以基准多边形循环向外辐射j个扇面对输入模型的顶点进行覆盖,每个扇面每次覆盖(n/k)个顶点即构成一个新的组,当某个扇面覆盖的点无法达到(n/k)时,该扇面覆盖的点也构成一个新的组。

优选的,所述在输入模型上设置基准多边形循环,为人工选取基准多边形循环。

优选的,所述在输入模型上设置基准多边形循环,由以下步骤设置:

步骤1、将输入模型上的顶点按照连接关系分成k组,每组的顶点数量之差小于预设的值;

步骤2、对每一组顶点,计算其拟合平面,并取距离该拟合平面距离最大的点为关键点,关键点与拟合平面的距离为h;

步骤3、建立以每个关键点为球心,r(h)为半径的球,当存在多于一列球能围成圆时,按比例缩小r(h)直到仅存在一列球能围成圆;当不存在一列球能围成圆时,按比例扩大r(h)直到存在一列球能围成圆;当仅存在一列球能围成圆时,连接能围成圆的球所对应的关键点,作为基准多边形循环,其中,

其中,α、β为预设的参数,其值均为正值。

本发明提供的方法,能将高精度的三维扫描原始数据转化为数据量少且布线合理,从而易于在动画、vr等三维场景使用的模型。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例中一种三维扫描原始数据转化为低面数3d模型的方法的流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

本发明实施例提供了一种三维扫描原始数据转化为低面数3d模型的方法,如图1所示,包括:

使用三维扫描设备对物体进行扫描,得到精细多边形模型数据,所述精细多边形模型数据的每1立方厘米的空间内含有200~2000个顶点;

处理器读取所述精细多边形模型,并将所述精细多边形模型作为输入模型;

在输入模型上设置基准多边形循环,所述设置基准多边形循环为沿着输入模型的曲面设置;

处理器根据输入模型、基准多边形循环和预设的方法,得出输出模型上每一个点的位置,从而得出完整的模型拓扑结构。

本发明提供的方法,通过对精细多边形模型数据进行分区处理,减少了模型的数据量,同时通过设置基准多边形循环,使输出模型的顶点分布更合理,从而更易于在动画、vr等三维场景使用。

在本发明的一个实施例中,所述处理器根据输入模型、基准多边形循环和预设的方法,得出输出模型上每一个点的位置,包括:

处理器将输入模型上的顶点按照连接关系和基准多边形循环分成k组,每组顶点的集合为m1、m2...mi...mk,且每组集合的顶点之间彼此不重合,其中k为期望的输出模型的顶点数量;

对每组顶点的集合,处理器计算出集合内顶点坐标的算数平均数为pmi(xi,yi,zi);

将pmi(xi,yi,zi)作为输出模型上的顶点坐标,即输出模型上每一个点的位置。

本发明提供的方法,能够使精细多边形模型更加均匀的减少数据,通过平均一个区域的点的坐标,减少了随机性的影响,从而使顶点的坐标数据更加均匀,分布更合理,从而更易于在动画、vr等三维场景使用。

在本发明的一个实施例中,所述处理器将输入模型上的顶点按照连接关系和基准多边形循环分成k组,包括:

指定输入模型上的基准多边形循环上的顶点o1、o2...oi...oj,j为一选取的正整数;

处理器所述顶点oi为中心,沿着输入模型的表面连接选取相邻的(n/k)个顶点形成一组,且对不同的顶点oi,选取的顶点之间彼此不重合,其中n为输入模型的顶点数;

处理器以基准多边形循环向外辐射j个扇面对输入模型的顶点进行覆盖,每个扇面每次覆盖(n/k)个顶点即构成一个新的组,当某个扇面覆盖的点无法达到(n/k)时,该扇面覆盖的点也构成一个新的组。

本发明提供的方法,通过设置k值和j值,可以改变输出模型的平滑程度。

在本发明的一个实施例中,所述在输入模型上设置基准多边形循环,为人工选取基准多边形循环。通过人工选取的方式,能准确的根据被扫描物体的特征进行设置。

在本发明的一个实施例中,所述在输入模型上设置基准多边形循环,由以下步骤设置:

步骤1、将输入模型上的顶点按照连接关系分成k组,每组的顶点数量之差小于预设的值;

步骤2、对每一组顶点,计算其拟合平面,并取距离该拟合平面距离最大的点为关键点,关键点与拟合平面的距离为h;

步骤3、建立以每个关键点为球心,r(h)为半径的球,当存在多于一列球能围成圆时,按比例缩小r(h)直到仅存在一列球能围成圆;当不存在一列球能围成圆时,按比例扩大r(h)直到存在一列球能围成圆;当仅存在一列球能围成圆时,连接能围成圆的球所对应的关键点,作为基准多边形循环,其中,

其中,α、β为预设的参数,其值均为正值。

依据本发明提供的方法,在需要处理较多的输入模型时,能够由计算机辅助设置基准多边形循环,且在设置的过程中考虑了顶点分组的弯曲程度,更容易找到符合实际物体特征的基准多边形循环减少了人工处理的时间,提高了对三维扫描数据的处理速度。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1