本发明专利技术适用于图像处理技术领域,提供了一种基于面数据的空洞填补方法,所述方法包括:识别并提取三维数据模型的空洞边缘;单独提取每个空洞边缘;将所述每个空洞边缘进行三角化填补。优选的,本发明专利技术还可以删除所述空洞异常的边缘边。此外,本发明专利技术还相应的提供一种基于面数据的空洞填补系统。借此,本发明专利技术能够针对任意多个空洞,及具有任何复杂空洞边缘的空洞进行填补。
【技术实现步骤摘要】
本专利技术涉及图像处理
,尤其涉及一种基于面数据的空洞填补方法及系统。
技术介绍
面重建技术被广泛应用于三维数字影像分析处理、CAD建模、电影动画制作、游戏开发等方面。但是,在成像过程中或者物体点云扫描过程中,可能造成数据的缺失,又或者是因为面重建技术本身的缺陷,从而产生带有空洞的不完整的面数据,这种带空洞的数据不仅可能不符合实际中的物体几何特征,更可能对以后面数据的处理(平滑,细化等)产生不良影响。现有的一些商用软件如Maya、3dMax等都集成有三维模型空洞填补功能,能够自·动识别空洞并进行空洞填补。但是在三维空间中空洞的边缘过于复杂,可能存在多个空洞边缘共用一个点的情况,并且对于很多面数据,因为原来的数据质量问题或者是本身面重建技术的缺陷问题,很可能有异常的片元。现有的空洞填补方案或者不能排除掉异常片元,或者不能从多个空洞边缘中单独提取每个空洞,最终导致空洞填补出错;在三维空间中,空洞的边缘可能呈现复杂的拓扑结构,空洞的边缘可能并非处于一个相对平坦的曲面上,现有的空洞填补方案对于这种复杂的边缘填补可能产生异常的填补面,填补面会可能自相交甚至导致执行程序崩溃。综上可知,现有的空洞填补方法,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
技术实现思路
针对上述的缺陷,本专利技术的目的在于提供一种基于面数据的空洞填补方法及系统,能有效的填补三维数据模型的空洞。为了实现上述目的,本专利技术提供一种基于面数据的空洞填补方法,所述方法包括识别并提取三维数据模型的空洞边缘;单独提取每个空洞边缘;将所述每个空洞边缘进行三角化填补。根据本专利技术的基于面数据的空洞填补方法,所述识别并提取三维数据模型的空洞边缘步骤包括扫描三维数据模型的面数据的点及其片元数据,获取所述空洞边缘的点和边数据。根据本专利技术的基于面数据的空洞填补方法,所述方法还包括删除所述空洞异常的边缘边。根据本专利技术的基于面数据的空洞填补方法,所述删除所述空洞异常的边缘边步骤包括搜索空洞的边缘点;删除只被一条边缘边使用的边缘点,同时将使用所述边缘点的边缘边删除。根据本专利技术的基于面数据的空洞填补方法,所述将所述每个空洞边缘进行三角化填补的步骤包括设置权重函数,并根据所述权重函数连接所述空洞的边缘点产生三角面片。根据本专利技术的基于面数据的空洞填补方法,所述权重函数的权重为三角面片的面积大小;或者 所述三角面片的面积大小加上三角面片与其它所构造的三角面片的二面角大小;或者所述三角面片的面积大小加上三角面片与其它所构造的三角面片的二面角大小再加上所形成的三角面片的最大的最小内角。本专利技术还提供一种基于面数据的空洞填补系统,包括识别模块,用于识别并提取三维数据模型的空洞边缘;提取模块,用于单独提取每个空洞边缘;填补模块,用于将所述每个空洞边缘进行三角化填补。本专利技术还提供一种基于面数据的空洞填补系统,所述识别模块包括扫描子模块,用于扫描三维数据模型的面数据的点及其片元数据,获取所述空洞边缘的点和边数据。本专利技术还提供一种基于面数据的空洞填补系统,所述系统还包括删除模块,用于删除所述空洞异常的边缘边。本专利技术还提供一种基于面数据的空洞填补系统,所述删除模块包括搜索子模块,用于搜索空洞的边缘点;删除子模块,用于删除只被一条边缘边使用的边缘点,同时将使用所述边缘点的边缘边删除。本专利技术通过扫描三维数据模型的面数据的点及其片元数据,获取所述空洞边缘的点和边数据,识别和提取到空洞边缘,然后单独提取出每个空洞边缘,对每个所述每个空洞边缘进行三角化填补,使之成为封闭的面数据模型。更好的是,本专利技术还可以删除空洞异常的边缘边。借此,本专利技术能够针对任意多个空洞,及具有任何复杂空洞边缘的空洞进行填补。附图说明图I是本专利技术一实施例的空洞填补系统的结构示意图;图2是本专利技术另一实施例的空洞填补系统的结构示意图;图3A是本专利技术一实施例的具有空洞的三维数据模型的结构示意图;图3B是本专利技术另一实施例的具有空洞的三维数据模型的结构示意图;图4是本专利技术边缘边提取后的结构示意图;图5是本专利技术单独提取边缘边后的结构示意图;图6A是图3A所示实施例的三维数据模型填补后的结构示意图;图6B是图3B所示实施例的三维数据模型填补后的结构示意图7是本专利技术一实施例的空洞填补方法的流程图。具体实施例方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。为便于理解本专利技术,在此将部分术语作如下说明。一个面数据是由一系列的三维顶点和由这些点构成的一系列片元所组成,片元是指一个小的三角形或四边形等多边形,这些片元是按一定顺序的边连接面数据中的某三个或四个或者多个顶点所组成的。共用一条边的两个片元成为相邻片元,而在面数据中,如果一条边只被一个片元所使用,那么这种边称为边缘边,边缘点就是指构成边缘边的两个端点。面数据中,空洞是由一系列的边缘边首尾相连构成的一个封闭的圈,这种封闭的圈在三维空间中可能任意的复杂。 参见图I和图2,本专利技术提供了一种基于面数据的空洞填补系统,其可以对三维数据模块的空洞进行填补。该空洞填补系统100包括识别模块10、提取模块20、填补模块30及删除模块40,具体的识别模块10用于识别并提取三维数据模型的空洞边缘。实际应用中的三维数据模型可能包括有若干空洞,识别模块10具有一扫描子模块11。结合图3A 图4,识别模块10通过其扫描子模块11扫描三维数据模型的面数据点和其片元数据,获取到边缘边的点数据和边数据,借此将所有的空洞边缘都提取出来。提取模块20用于单独提取每个空洞边缘。具体的,识别模块10获取的面数据空洞有任意多个,处理时还需要分别提取构造一个独立空洞的边缘边。另外,在面重建过程中,可能产生一些异常的片元,这些片元的边也产生边缘边。故在该处理过程中,本专利技术通过删除模块40消除异常边缘边,并通过提取模块20单独提取每个空洞边缘信息,如图5所示。前述已经说明,空洞是由一系列的边缘边首尾相连构成的一个封闭的圈。在一个封闭的圈中,任意一个边缘点都被两个以上的边缘边使用,也即是说在前述提取的边缘边中,边缘点只被一条边缘边使用的点为异常的边缘边,需要被删除。本专利技术实施例中具体的删除过程如下搜索子模块41搜索提取出的边缘点;删除子模块42删除只被一条边缘边使用的边缘点,并且将该边缘边也删除。然后搜索子模块41继续在剩余的边缘点和边缘边中搜索,删除只被一条边缘边使用的边缘点和使用该点的边缘边,重复以上操作,直到所有的边缘点都被两条及两条以上的边缘边使用。借此使剩下的边缘边都构成了一个或多个空洞边缘(首尾相连的封闭圈)。实际应用中,面数据的空洞边缘可能相互连接,一个空洞的边缘可能与另外一个甚至多个空洞边缘共用一个边缘点,从而两个甚至多个空洞边缘相交在一起,因此,本专利技术在空洞填补前将每个空洞边缘分离提取出来,单独处理。具体的,在经删除模块40处理后获得的空洞边缘边和点数据中,从任意一个边缘点作为起始点开始,沿其中一条使用该边缘点的边缘边往下搜索下一个边缘点,在记录中顺次记录搜索过的边缘点,并且标记搜索过的边缘边,一直搜索到一个边缘点,如果该边缘点已经被记录搜索过,则在记录中从该边缘点开始到记录末尾,中间被记录本文档来自技高网...
【技术保护点】
一种基于面数据的空洞填补方法,其特征在于,所述方法包括:识别并提取三维数据模型的空洞边缘;单独提取每个空洞边缘;将所述每个空洞边缘进行三角化填补。
【技术特征摘要】
【专利技术属性】
技术研发人员:叶建平,张吉帅,李恒,涂云霞,
申请(专利权)人:深圳市旭东数字医学影像技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。