CN106600671A - 一种网格模型的体素化方法及装置 - Google Patents
一种网格模型的体素化方法及装置 Download PDFInfo
- Publication number
- CN106600671A CN106600671A CN201610919478.3A CN201610919478A CN106600671A CN 106600671 A CN106600671 A CN 106600671A CN 201610919478 A CN201610919478 A CN 201610919478A CN 106600671 A CN106600671 A CN 106600671A
- Authority
- CN
- China
- Prior art keywords
- dough sheet
- voxel
- voxelization
- grid model
- list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种网格模型的体素化方法及装置,所述方法包括如下步骤:获取网格模型;根据预设的体素化参数确定多个体素单元并对网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表;对每一体素单元的预面片列表进行处理,以得到优选面片列表集合,每一体素单元的优选面片列表集合包括至少一个优选面片列表,以表示预面片列表中至少一个面片包含于体素单元的部分;根据每一体素单元的优选面片列表集合获得单一体素格总面片列表;根据多个体素单元各自的单一体素格总面片列表获得总面片列表,总面片列表用于形成所述网格模型体素化后的对应体素。通过本发明提供的技术方案能够精准、高效和鲁棒的在体素化结果中完整保全网格模型的所有细节。
Description
技术领域
本发明涉及计算机图形处理领域,具体地涉及一种网格模型的体素化方法及装置。
背景技术
计算机图形学是通过对现实世界建立数学模型,并基于计算机计算数学模型的光影效果从而在显示设备上显示图像的一门学科。随着计算机技术的高速发展,计算机图形学也越来越多的被应用到诸如影视特效、广告、动画、计算机游戏、军事仿真、医疗影像等领域中,成为展示图像的核心技术。建模是计算机图形学中的一个基本问题,用于研究三维物体的表示方法。
目前,业内比较主流的建模技术是采用体素或者多边形网格来表示三维模型,以应用于三维成像、科学数据与医学视频等领域。其中,体素是体积像素的简称,类似于位图中的像素点概念;体素化可以理解为将物体从几何表示形式转换为最接近于该物体的体素表示形式;多边形网格则是通过多面体形状的顶点与多边形的集合来表示三维物体的外观及内部结构。而在实际应用中,通常会将多边形网格所构成的网格模型通过体素化来转变成为体素,以适应不同用户的操作浏览习惯。
为了在网格模型体素化的过程中尽可能多的保存模型细节,现有比较常用的做法是缩小体素化的粒度,以尽可能多的保留网格模型中的细节内容。这样的技术方案虽然能在一定程度上保证网格模型体素化后的完整度,但是,过细粒度的体素化会大幅增加计算机的计算和存储压力,无法在完整保全网格模型所有细节的基础上对网格模型进行方便、快捷的体素化操作。
发明内容
本发明解决的技术问题是现有技术在对网格模型进行体素化操作时,无法从根本上解决模型细节丢失和过细粒度的体素化可能会增加计算机的计算与存储压力的问题。
为解决上述技术问题,本发明实施例提供一种网格模型的体素化方法,包括如下步骤:获取网格模型,所述网格模型包括多个面片;根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片;对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分;根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表;根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。
可选的,所述预设的体素化参数包括以下至少一项:剖分粒度和剖分间隔。
可选的,对每一体素单元的所述预面片列表进行处理,包括如下步骤:对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分。
可选的,所述网格模型的体素化方法还包括如下步骤:根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示。
本发明实施例还提供一种网格模型的体素化装置,包括:信息获取模块,用于获取网格模型,所述网格模型包括多个面片;第一确定模块,用于根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片;计算处理模块,用于对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分;第一整合显示模块,用于根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表;第二整合显示模块,用于根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。
可选的,所述预设的体素化参数包括以下至少一项:剖分粒度和剖分间隔。
可选的,所述计算处理模块包括:计算处理子模块,对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分。
可选的,所述网格模型的体素化装置还包括:合并模块,用于根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
根据预设的体素化参数确定多个体素单元,通过对所述网格模型包括的多个面片进行二次处理以将所述网格模型体素化为体素。进一步地,对于每一个体素单元,先根据与所述体素单元相交的至少一个面片建立预面片列表,对于每一体素单元,精确确定所述预面片列表中的每一面片包含于所述体素单元的部分并形成优选面片列表集合,合并所述优选面片列表集合以获得所述体素单元对应的单一体素格总面片列表,再根据所述多个体素单元各自的单一体素格总面片列表形成所述网格模型体素化后的对应体素。较之现有的通过细化体素化粒度来完整保存网格模型的全部细节的技术方案,提供了一种完整保全模型细节的网格模型的体素化方法,该方法支持任意的体素化粒度,同时支持表面体素化和实体体素化,能够在任意体素化粒度下实现对网格模型全部细节的完整保全,有利于对网格模型进行方便、快捷的体素化,并且减轻计算机的计算与存储压力,提高体素化效率。
进一步,通过插值算法确保体素化后的体素包括的总面片列表中,每一面片在体素化后的体素中具备的属性与其在体素化前的网格模型中所具备的属性相对应,使得所述网格模型中的所有细节能够在体素化后的体素中得到体现。
附图说明
图1是本发明的第一实施例的一种网格模型的体素化方法的流程图;
图2是本发明的第二实施例的一种网格模型的体素化方法的流程图;
图3是本发明的第三实施例的一种网格模型的体素化装置的结构示意图;
图4是采用本发明实施例对一个球形网格模型进行3×3×3的体素化的示例图;以及
图5是图4中对一个球形网格模型进行3×3×3的体素化后的局部效果图。
具体实施方式
本领域技术人员理解,现有技术在将网格模型体素化为体素时,一般采用简单的相交判断方法来进行。例如,通过确定网格模型中的面片是否与体素中的一个体素单元相交的方式来判断是否需要标记该体素单元,体素中所有被标记的体素单元的集合可以用来表示体素化后的网格模型。如果用户希望精确在体素中精确展示网格模型的细节,就需要将体素单元设置的尽可能小,通过细化体素化粒度的方式确保网格模型的细节部分能够被精确体素化,但是,这样的方案会极大地增加计算机的数据计算量,严重影响了计算机的体素化效率,不利于用户的操作体验。
为了解决上述技术问题,本发明所述技术方案根据预设的体素化参数确定多个体素单元,通过对所述网格模型包括的多个面片进行二次处理以将所述网格模型体素化为体素。进一步地,对于每一个体素单元,先根据与所述体素单元相交的至少一个面片建立预面片列表,对于每一体素单元,精确确定所述预面片列表中的每一面片包含于所述体素单元的部分并形成优选面片列表集合,合并所述优选面片列表集合以获得所述体素单元对应的单一体素格总面片列表,再根据所述多个体素单元各自的单一体素格总面片列表形成所述网格模型体素化后的对应体素。本发明所述技术方案允许用户在任意体素化粒度下实现对网格模型全部细节的完整保全,有利于对网格模型进行方便、快捷的体素化,并且减轻计算机的计算与存储压力,提高体素化效率。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1是本发明的第一实施例的一种网格模型的体素化方法的流程图。其中,所述网格模型是计算机图形学中一种常用的模型表示方法,所述网格模型可以包括多边形网格模型等,所述多边形网格模型通过物体各个面的顶点与多边形的集合来表示多面体形状的物体;所述体素化方法是指将所述网格模型以体素表示的方法,从而实现物体在不同的模型表示方法之间的转换,其中,体素化可以包括表面体素化以及实体体素化。
具体地,在本实施例中,首先执行步骤S101,获取网格模型,所述网格模型包括多个面片。更为具体地,所述面片用于表示所述物体的内表面或者外表面。在一个优选例中,所述网格模型由用户给定,则本发明实施例在获得用户发送的网格模型后,对所述网格模型进行解析,以获得所述网格模型所包括的多个面片。
然后进入步骤S102执行,根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片。具体地,所述预设的体素化参数包括剖分粒度和剖分间隔中的至少一项。更为具体地,根据所述预设的体素化参数可以确定需要将所述网格模型切割成多少个体素单元,多个所述体素单元可以形成所述网格模型体素化后的对应体素。优选地,所述预设的体素化参数还包括需要对所述网格模型进行体素化操作的区域。在一个优选例中,根据所述预设的体素化参数确定需要对所述网格模型的全部进行体素化处理,则同样根据所述预设的体素化参数确定的体素单元数量对将所述网格模型的全部进行切割,并确定所述网格模型与各个体素单元的相交情况,对于每一体素单元,将与所述体素单元相交的所有面片罗列获得所述预面片列表。
接下来执行步骤S103,对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分。在一个优选例中,在所述预面片列表的基础上,对于每一体素单元的所述预面片列表中的至少一个面片,精确确定所述面片包含于所述体素单元的部分,从而确定所述面片与所述体素单元的具体相交位置,并形成所述优选面片列表,在精确确定所述预面片列表中的每一面片与所述体素单元的具体相交位置后,即可获得所述优选面片列表集合。
然后执行步骤S104,根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表。具体地,所述单一体素格总面片列表用于表示所述预面片列表中的每一面片唯一包含于所述体素单元的部分。在一个优选例中,对于每一体素单元,合并所述体素单元的优选面片列表集合,即可获得所述单一体素格总面片列表。
最后执行步骤S105,根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。本领域技术人员理解,本发明实施例在基于所述步骤S102、所述步骤S103以及所述步骤S104对所述网格模型进行体素化操作时,需要将所述网格模型切割成多个体素单元,对所述多个体素单元分别进行体素化操作以获得每一体素单元对应的单一体素格总面片列表,而在向用户展示时,需要将所述每一体素单元对应的单一体素格总面片列表合并为所述总面片列表,从而将所述多个体素单元合并为体素以整体性的向用户展示体素化后的网格模型。
进一步地,所述剖分粒度和剖分间隔可以基于空间直角坐标系表示。例如,所述空间直角坐标系的坐标轴分别以x轴、y轴和z轴表示,则通过所述剖分粒度可以确定切割时需要将所述网格模型分别沿x轴、y轴和z轴的切割次数;通过所述剖分间隔来分别确定在x轴、y轴和z轴上的切割间距,结合所述切割次数和所述切割间距,可以直观的确定所述体素单元的体积,进而确定所述网格模型需要被切割成多少个体素单元。进一步地,所述剖分粒度和剖分间隔也可以基于其他坐标系表示,本领域技术人员可以根据实际需要变化出更多实施例,这并不影响本发明的技术内容。
进一步地,所述网格模型可以为任意形状的多边形网格模型。进一步地,本发明实施例可以对所述多边形网格模型进行表面体素化和实体体素化。
进一步地,本发明实施例在进行体素化操作时,并不以所述空间直角坐标系为转换基准,而是根据所述网格模型的实际展示角度与所述预设的体素化参数所依据的坐标系之间的角度偏差,来直接对所述网格模型根据所述预设的体素化参数进行体素化操作,实现不需事先将用户给定的所述网格模型转换成与所述预设的体素化参数所依据的坐标系对齐的方式即可进行体素化。例如,用户给定的所述网格模型未按照所述空间直角坐标系对齐的方式展现,而所述预设的体素化参数是基于所述空间直角坐标系表示的,则本发明实施例在进行体素化操作时,可以根据所述网络模型当前的展示角度与所述空间直角坐标系之间的角度偏差来进行体素化操作,而不是要求所述网格模型必须以与所述空间直角坐标系对齐的方式进行体素化。节省了计算机的中间处理步骤,有利于提高计算机的体素化效率。进一步地,为了便于用户浏览,本发明实施例可以在完成对所述网格模型的体素化后,将体素化后的对应体素以与所述预设的体素化参数所基于的坐标系对齐的方式进行输出,供用户浏览。
进一步地,通过对所述网格模型的至少一部分进行预处理,以及根据所述预处理的结果进行二次处理最终获得所述总面片列表,可以实现对所述网格模型的部分体素化或者全部体素化。本发明实施例可以根据用户给定的所述预设的体素化参数来判断对所述网格模型进行部分体素化还是全部体素化。
进一步地,列表是一种常用的计算机数据结构,所述预面片列表、所述优选面片列表、所述单一体素格总面片列表以及所述总面片列表均可以是多个面片的集合,以表示所述多个面片分别与所述体素单元之间的关系。例如,所述预面片列表用于表示其所包括的多个面片与所述体素单元相交;所述优选面片列表则用于对所述预面片列表作进一步加工,以剔除所述预面片列表中的一个面片超出了所述体素单元的部分,仅保留所述面片包含于所述体素单元的部分;所述单一体素格总面片列表用于表示所述预面片列表包括的面片中唯一包含于所述体素单元的部分;所述总面片列表则用于将多个所述单一体素格总面片列表汇总成一个列表,以形成所述网格模型体素化后的对应体素。
在一个优选地应用场景中,所述步骤S105之后还包括步骤“通过插值算法,确定所述总面片列表中每一面片具备的属性,所述面片具备的属性与所述面片在所述网格模型中的属性相对应”。例如,所述面片在基于所述网格模型表示时包括至少一种属性,以一种属性为例,所述属性由两个数值组成的属性数列表示,而在体素化之后,所述面片在基于所述体素表示时为了精确展示所述面片在所述体素中多个体素单元的相交位置,所述面片的属性数列可能包括不止两个数值,则需要通过所述插值算法将所述面片在基于所述网格模型表示时的属性数列扩展至与所述面片在基于所述体素表示时的属性数列相一致,以确保所述面片的属性能够在体素化前后保持一致。进一步地,所述属性可以包括几何、纹理、法向等,所述面片可以包括一种或多种属性。进一步地,若所述面片在体素化后其属性对应的属性数列小于所述面片在所述网格模型中包括的属性数列,则还可以基于插值算法将所述面片在体素化后获得的属性数列扩展至与所述面片在所述网格模型中对应的属性数列相一致。本领域技术人员理解,本发明实施例通过适当的插值算法来确定合并后的所述总面片列表中每一面片所须具备的各种属性,从而与所述网格模型的属性保持一致,确保所述网格模型的所有细节均能被完整保留到体素化后对应的体素中,避免了细节丢失的情况发生。
在另一个优选地应用场景中,所述步骤S105之后还包括步骤“根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示”。进一步地,所述预设的合并参数可以包括于所述预设的体素化参数中,由用户预先给定;或者,所述预设的合并参数还可以在本发明实施例完成对所述网格模型的体素化操作之后,由用户在浏览体素化结果时提供。本领域技术人员理解,在本步骤中,所述面片是已经经过所述步骤S104处理过的面片,当计算机基于本发明实施例完成了对所述网格模型的体素化操作并获得所述总面片列表后,优选地将用户最关心的部分(例如,用户对所述网格模型的特定局部区域进行了放大操作)所对应的面片合并形成所述体素,从而在减少计算机的数据处理量的前提下仍能确保用户的操作体验。进一步地,所述预设的合并参数还可以由计算机根据自身数据处理能力来确定产生,以向用户提供最佳的浏览效果。
由上,采用第一实施例的方案,能够在任意的体素化参数和剖分粒度下,完整保全所述网格模型的细节,在不增加计算机的运行及存储压力的基础上,有效解决了现有网格模型的体素化过程中细节容易丢失的问题,并且能够基于用户需要对所述网格模型进行表面体素化、实体体素化、部分体素化或者全部体素化。
图2是本发明的第二实施例的一种网格模型的体素化方法的流程图。具体地,在本实施例中,首先执行步骤S201,获取网格模型,所述网格模型包括多个面片。更为具体地,本领域技术人员可以参考上述图1所示实施例中所述步骤S101,在此不予赘述。
然后进入步骤S202执行,根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片。具体地,所述预设的体素化参数包括剖分粒度和剖分间隔中的至少一项。更为具体地,本领域技术人员可以参考上述图1所示实施例中所述步骤S102,在此不予赘述。
接下来执行步骤S203,对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分。具体地,所述求交为计算机图形学中一种常用的操作手段,用于求解两个或多个物体的交集。更为具体地,通过确定所述面片与所述体素单元的具体相交位置来确定所述面片在所述体素单元中的部分。在一个优选例中,对于每一体素单元,对所述预面片列表中包含的面片依次进行求交处理,确定每一面片在所述体素单元中的具体相交位置,然后基于所述具体相交位置确定所述面片包含于所述体素单元中的部分,将所述预面片列表中每一面片包含于所述体素单元中的部分组成的集合作为所述优选面片列表集合。
然后执行步骤S204,根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表。具体地,本领域技术人员可以参考上述图1所示实施例中所述步骤S104,在此不予赘述。
最后执行步骤S205,根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。具体地,本领域技术人员可以参考上述图1所示实施例中所述步骤S105,在此不予赘述。
进一步地,对于每一体素单元,所述步骤S203还可以对所述预面片列表中包含的多个面片同时进行求交处理,以提高所述体素化的处理速度,减少用户等待时间。
由上,采用第二实施例的方案,通过求交来精确确定所述预面片列表包括的面片在所述体素单元中的部分,使得获得的所述优选面片列表集合只包括所述体素单元以及唯一包括与所述体素单元的面片信息。本领域技术人员理解,本实施例所述步骤S203可以理解为上述图1所示实施例中所述步骤S103的一个具体实施方式,能够准确、高效和鲁棒的确定每一体素单元所唯一包含的所述网格模型的部分及其细节。
图3是本发明的第三实施例的一种网格模型的体素化装置的结构示意图。本领域技术人员理解,本实施例所述网格模型的体素化装置4用于实施上述图1及图2所示实施例中所述的方法技术方案。具体地,在本实施例中,所述网格模型的体素化装置4包括信息获取模块41,用于获取网格模型,所述网格模型包括多个面片;第一确定模块42,用于根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片;计算处理模块43,用于对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分;第一整合显示模块44,用于根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表;以及第二整合显示模块45,用于根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。优选地,所述预设的体素化参数包括剖分粒度和剖分间隔中的至少一项。
进一步地,所述计算处理模块43包括计算处理子模块431,对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分。
进一步地,所述网格模型的体素化装置4还包括合并模块46,用于根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示。
所述网格模型的体素化装置4可以以硬件或者软件形式集成在所述计算机内,以执行本发明实施例所述技术方案。
图4是采用本发明实施例的对一个球形网格模型进行3×3×3的体素化示例图;图5则是图4中对一个球形网格模型进行3×3×3的部分体素化后的效果图。为了便于理解,图4及图5均基于与空间直角坐标系对齐的方式展示所述网格模型及相应的体素化效果,本领域技术人员可以根据实际需要进行变换,这并不影响本发明的技术内容。
在一个典型的应用场景中,用户给定球形网格模型(如图4所示),所述球形网格模型中任意三条两两相交的线段组成的平面可以理解为所述球形网格模型的面片,计算机根据预设的体素化参数(例如,由用户给定的体素化参数)将所述球形网格模型切割为3×3×3共27个体素单元(图4和图5中示出的是空间直角坐标系中任两个坐标轴组成的平面上的3×3切割结果),对于图4和图5所示的3×3共9个体素单元中的每一体素单元,计算机通过确定所述球形网格模型的各个面片与所述体素单元是否相交来形成所述预面片列表,所述预面片列表包括所述体素单元,还包括所述球形网格模型中与所述体素单元相交的至少一个面片,再通过对所述预面片列表中的每一面片求交来确定每一面片包含于所述体素单元的部分以获得所述优选面片列表集合,通过合并所述优选面片列表集合来获得所述单一体素格总面片列表,最终通过合并多个体素单元各自的所述单一体素格总面片列表来获得总面片列表以形成所述球形网格模型体素化后的体素。
例如,计算机根据用户提供的体素化参数确定需要将所述球形网格模型的右侧边界区域体素化,该区域主要位于图5示出的正方形网格1中,所述正方形网格1对应所述3×3共9个体素单元组成的九宫格中间一行右起第一个体素单元,在所述正方形网格1所代表的所述体素单元中,所述球形网格模型中与所述体素单元相交的面片集合由网格2表示,则基于所述网格2可以获得所述预面片列表,计算机进一步对所述预面片列表进行求交处理,确定所述网格2中的面片唯一包含于所述体素单元的部分(在图5中以网格3示出),基于所述网格3可以获得所述优选面片列表集合,通过合并所述网格3中包含的多个面片可以获得所述网格3对应的体素单元的单一体素格总面片列表以及所述网格3对应的总面片列表,进而形成所述球形网格模型右侧边界区域体素化后的对应体素,实现对所述球形网格模型中唯一包含于所述体素单元的那部分球形网格模型的体素化。进一步地,对于所述预面片列表中超出所述正方形网格1的部分,可以基于所述3×3共9个体素单元中除了所述正方形网格1所对应的体素单元之外的体素单元进行体素化,最终实现对所述球形网格模型的右侧边界区域的部分体素化。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于以计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (8)
1.一种网格模型的体素化方法,其特征在于,包括如下步骤:
获取网格模型,所述网格模型包括多个面片;
根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片;
对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分;
根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表;
根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。
2.根据权利要求1所述的网格模型的体素化方法,其特征在于,所述预设的体素化参数包括以下至少一项:剖分粒度和剖分间隔。
3.根据权利要求1或2所述的网格模型的体素化方法,其特征在于,对每一体素单元的所述预面片列表进行处理,包括如下步骤:
对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分。
4.根据权利要求1或2所述的网格模型的体素化方法,其特征在于,还包括如下步骤:
根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示。
5.一种网格模型的体素化装置,其特征在于,包括:
信息获取模块,用于获取网格模型,所述网格模型包括多个面片;
第一确定模块,用于根据预设的体素化参数确定多个体素单元并对所述网格模型的至少一部分进行预处理,以得到各个体素单元的预面片列表,每一体素单元的预面片列表包括与所述体素单元相交的至少一个面片;
计算处理模块,用于对每一体素单元的所述预面片列表进行处理,以得到优选面片列表集合,每一体素单元的所述优选面片列表集合包括至少一个优选面片列表,以表示所述预面片列表中至少一个面片包含于所述体素单元的部分;
第一整合显示模块,用于根据每一体素单元的所述优选面片列表集合获得单一体素格总面片列表;
第二整合显示模块,用于根据所述多个体素单元各自的所述单一体素格总面片列表获得总面片列表,所述总面片列表用于形成所述网格模型体素化后的对应体素。
6.根据权利要求5所述的网格模型的体素化装置,其特征在于,所述预设的体素化参数包括以下至少一项:剖分粒度和剖分间隔。
7.根据权利要求5或6所述的网格模型的体素化装置,其特征在于,所述计算处理模块包括:
计算处理子模块,对于每一体素单元,遍历所述预面片列表,通过求交来确定所述预面片列表包括的每一面片包含于所述体素单元的部分。
8.根据权利要求5或6所述的网格模型的体素化装置,其特征在于,包括:
合并模块,用于根据预设的合并参数,利用所述总面片列表中的至少一部分面片形成所述体素,以向用户展示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610919478.3A CN106600671A (zh) | 2016-10-21 | 2016-10-21 | 一种网格模型的体素化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610919478.3A CN106600671A (zh) | 2016-10-21 | 2016-10-21 | 一种网格模型的体素化方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106600671A true CN106600671A (zh) | 2017-04-26 |
Family
ID=58556159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610919478.3A Pending CN106600671A (zh) | 2016-10-21 | 2016-10-21 | 一种网格模型的体素化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106600671A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443891A (zh) * | 2019-07-22 | 2019-11-12 | 江苏艾佳家居用品有限公司 | 一种3d模型的网格化处理方法及*** |
CN113728360A (zh) * | 2020-03-25 | 2021-11-30 | 香港应用科技研究院有限公司 | 用于3d场景中对象的姿态、尺寸和形状测量的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441780A (zh) * | 2008-11-05 | 2009-05-27 | 武汉大学 | 三维网格模型的剖切方法 |
CN102930602A (zh) * | 2012-10-20 | 2013-02-13 | 西北大学 | 一种基于断层图像的面皮三维表面模型重建方法 |
CN103236079A (zh) * | 2013-04-19 | 2013-08-07 | 浙江理工大学 | 一种基于三维模型体素化的内部球改进构造方法 |
CN105453139A (zh) * | 2013-07-17 | 2016-03-30 | 微软技术许可有限责任公司 | 用于3d表面重建的稀疏gpu体素化 |
-
2016
- 2016-10-21 CN CN201610919478.3A patent/CN106600671A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441780A (zh) * | 2008-11-05 | 2009-05-27 | 武汉大学 | 三维网格模型的剖切方法 |
CN102930602A (zh) * | 2012-10-20 | 2013-02-13 | 西北大学 | 一种基于断层图像的面皮三维表面模型重建方法 |
CN103236079A (zh) * | 2013-04-19 | 2013-08-07 | 浙江理工大学 | 一种基于三维模型体素化的内部球改进构造方法 |
CN105453139A (zh) * | 2013-07-17 | 2016-03-30 | 微软技术许可有限责任公司 | 用于3d表面重建的稀疏gpu体素化 |
Non-Patent Citations (3)
Title |
---|
严海: "数字几何实例建模***的研究与应用", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
柳伟: "三维模型特征提取与检索", 《中国博士学位论文全文数据库 信息科技辑》 * |
解详荣,徐海黎: "三维模型的读取与体素化", 《南通大学学报(自然科学版)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443891A (zh) * | 2019-07-22 | 2019-11-12 | 江苏艾佳家居用品有限公司 | 一种3d模型的网格化处理方法及*** |
CN113728360A (zh) * | 2020-03-25 | 2021-11-30 | 香港应用科技研究院有限公司 | 用于3d场景中对象的姿态、尺寸和形状测量的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108595858B (zh) | 基于bim的轻量化深度处理工作方法 | |
CA2339687C (en) | Three-dimensional cad system and recording medium for three-dimensional cad system | |
JP6721332B2 (ja) | 3dモデル化されたアセンブリ上で境界ボックスを生成すること | |
CN106599493A (zh) | 一种三维大场景中bim模型的可视化实现方法 | |
JP2005038219A (ja) | 境界表現データからボリュームデータを生成する方法及びそのプログラム | |
Zhao | Application of 3D CAD in landscape architecture design and optimization of hierarchical details | |
CN109118588B (zh) | 一种基于块分解的彩色lod模型自动生成方法 | |
CN109461209B (zh) | 一种新型结构网格生成方法 | |
CN116229015B (zh) | 一种基于2N-Tree带附面层的贴体笛卡尔网格生成方法 | |
CN105225272B (zh) | 一种基于多轮廓线三角网重构的三维实体建模方法 | |
Coelho et al. | Intersecting and trimming parametric meshes on finite element shells | |
Loseille et al. | Vizir: High-order mesh and solution visualization using OpenGL 4.0 graphic pipeline | |
JP3650355B2 (ja) | 幾何学モデルのレンダリングを加速するコンピュータ・システム、方法およびコンピュータ・プログラム | |
CN106204748B (zh) | 一种基于特征的cad体网格模型编辑、优化方法 | |
CN102096948B (zh) | 一种适用图形硬件的分格化方法 | |
CN106408665A (zh) | 一种新的渐进网格生成方法 | |
CN108389263A (zh) | 面向边界元方法求解计算的iges面网格快速生成方法 | |
Sun et al. | Adaptive generation and local refinement methods of three-dimensional hexahedral element mesh | |
CN106600671A (zh) | 一种网格模型的体素化方法及装置 | |
CN111737844A (zh) | 一种基于Web3D的编辑三维建筑模型***及工作流程 | |
CN114254238A (zh) | 一种基于数字孪生的三维Web建模平台 | |
Miranda et al. | Surface mesh regeneration considering curvatures | |
Wang et al. | An improving algorithm for generating real sense terrain and parameter analysis based on fractal | |
CN115908733A (zh) | 一种角点网格地质模型的实时切分及三维可视化方法 | |
CN105957142A (zh) | 一种面向TIN构建的Hilbert排序方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190715 Address after: 314400 Area J, Canghai Road, Haining Warp Knitting Industrial Park, Jiaxing City, Zhejiang Province Applicant after: Haining Sinuo Robot Co., Ltd. Address before: 201103 2nd Floor, Yuanzhong Industrial Park Phase IV Building, 2071 Hongmei Road, Xuhui District, Shanghai Applicant before: Shanghai Mdt InfoTech Ltd |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170426 |