CN116310226B - 三维对象层级模型生成方法、装置、设备和存储介质 - Google Patents
三维对象层级模型生成方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN116310226B CN116310226B CN202310549081.XA CN202310549081A CN116310226B CN 116310226 B CN116310226 B CN 116310226B CN 202310549081 A CN202310549081 A CN 202310549081A CN 116310226 B CN116310226 B CN 116310226B
- Authority
- CN
- China
- Prior art keywords
- planes
- detail
- plane
- main body
- dimensional object
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000004044 response Effects 0.000 claims abstract description 18
- 238000004590 computer program Methods 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Graphics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请涉及一种三维对象层级模型生成方法、装置、设备和存储介质。方法包括:获取针对目标对象创建的具有多个面的三维对象模型;提取三维对象模型中的平面,得到平面集合;对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合;对细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构;响应于细节结构选定操作,生成目标对象的细节层级模型;细节层级模型包括由主体平面的集合构建的主体结构、以及由细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在主体结构上的细节结构。采用本方法能够提高生成目标对象的细节层级模型的灵活性。
Description
技术领域
本申请涉及三维重建技术领域,特别是涉及一种三维对象层级模型生成方法、装置、设备和存储介质。
背景技术
随着计算机技术的发展,出现了LOD(level of detail,细节层级)重建技术。LOD重建技术是指根据三维对象的三维对象模型重建三维对象的细节层级模型的技术。利用LOD重建技术重建细节层级模型时,通常是根据用户视点到细节层级模型中心点的距离,显示不同精细程度的细节层级模型。
然而,传统的LOD重建技术中,只能根据用户视点到细节层级模型中心点的距离展示特定精细程度的细节结构,无法满足不同的用户需求,不够灵活。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高灵活性的三维对象层级模型生成方法、装置、计算机设备和计算机可读存储介质。
第一方面,本申请提供了一种三维对象层级模型生成方法,方法包括:
获取针对目标对象创建的具有多个面的三维对象模型;
提取三维对象模型中的平面,得到平面集合;
对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合;
对细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构;
响应于细节结构选定操作,生成目标对象的细节层级模型;细节层级模型包括由主体平面的集合构建的主体结构、以及由细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在主体结构上的细节结构。
在一些实施例中,对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合,包括:
将三维对象模型的包围盒进行划分,得到多个多面体;
确定各多面体与三维对象模型的位置关系;位置关系包括多面***于三维对象模型内部或位于三维对象模型外部;
针对具有相同位置关系的相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖;二维轮廓是将三维对象模型各个平面的点投影到三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;在公共面未被二维轮廓覆盖的情况下,删除公共面以将相邻的多面体进行合并,得到多个连通分量;
根据多个连通分量,确定主体平面的集合和细节结构平面的集合。
在一些实施例中,根据多个连通分量,确定主体平面的集合和细节结构平面的集合,包括:
根据位置关系对多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量;
根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合;
根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合。
在一些实施例中,根据位置关系对多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量,包括:
根据位置关系,将多个连通分量中的、且位于三维对象模型内部的最大连通分量确定为主体内部连通分量,并将多个连通分量中的、且位于三维对象模型外部的最大连通分量确定为主体外部连通分量;
根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合,包括:
将多个连通分量中除主体内部连通分量之外的、且位于三维对象模型内部的离散的连通分量,确定为细节内部连通分量;
将多个连通分量中除主体外部连通分量之外的、且位于三维对象模型外部的离散的连通分量,确定为细节外部连通分量;
将细节内部连通分量和细节外部连通分量所对应的平面,确定为细节结构平面,得到细节结构平面的集合。
在一些实施例中,方法还包括:
根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合;其中,属于同一组的各子集合各自对应的细节结构平面皆嵌入于同一主体平面,且属于同一组的各子集合各自构成的细节结构之间满足预设的比例相似条件;
响应于细节结构选定操作,生成目标对象的细节层级模型,包括:
响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构平面组合;
基于主体平面的集合构建主体结构,并分别基于指定的细节结构平面组合中各子集合构建相应的细节结构,以生成目标对象的细节层级模型。
在一些实施例中,方法还包括:
针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,在主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持平行;
在主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持正交;
在主体平面的集合中存在任意两个平行的主体平面、且两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整平行的主体平面的平面参数,以使得两个平行的主体平面保持共面。
在一些实施例中,方法还包括:
针对细节层级模型中的细节结构做正则化检测,在细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构。
第二方面,本申请还提供了一种三维对象层级模型生成装置,装置包括:
获取模块,用于获取针对目标对象创建的具有多个面的三维对象模型; 提取三维对象模型中的平面,得到平面集合;
分类模块,用于对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合;对细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构;
生成模块,用于响应于细节结构选定操作,生成目标对象的细节层级模型;细节层级模型包括由主体平面的集合构建的主体结构、以及由细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在主体结构上的细节结构。
第三方面,本申请还提供了一种计算机设备。该计算机设备包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。该计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
上述三维对象层级模型生成方法、装置、计算机设备、存储介质和计算机程序产品,通过对目标对象的三维对象模型中的平面进行提取,得到平面集合,并将平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合,以及将细节结构平面的集合中的细节结构平面进行聚类,得到组成至少一个细节结构的细节结构平面的子集合,响应于针对细节结构的选定操作,将选定的细节结构嵌入到由主体平面的集合构建的主体结构上,得到目标对象的细节层级模型,通过针对细节结构的选定操作,可以灵活选择细节层级模型所显示的细节结构,从而提高了生成目标对象的细节层级模型的灵活性。
附图说明
图1为一个实施例中三维对象层级模型生成方法的流程示意图;
图2为一个实施例中对平面集合进行平面分类的示意图;
图3为另一个实施例中三维对象层级模型生成方法的流程示意图;
图4为一个实施例中三维对象层级模型生成装置的结构框图;
图5为一个实施例中分类模块的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,随着三维重建技术的进步,例如摄影测量技术和激光雷达扫描技术的进步,使得重建更加精细的三维对象模型变得更加容易,因此在很多场景中都会使用到三维重建技术,例如城市景观、三维地图导航、地理信息***等。然而,利用三维重建技术重建细节层级模型时,通常是根据用户视点到细节层级模型中心点的距离显示特定精细程度的细节结构,导致重建得到的细节层级结构选择不够灵活,无法满足不同用户的需求。
在一些实施例中,如图1所示,提供了一种三维对象层级模型生成方法,以该方法应用于计算机设备为例进行说明,具体包括以下步骤:
步骤101、获取针对目标对象创建的具有多个面的三维对象模型。
其中,三维对象模型是目标对象的表面上一系列空间采样点构成的模型,包括三维点云模型或三角网格模型。
在一些实施例中,当三维对象模型为三角网格模型时,三维对象模型的多个面是指组成三维对象模型的多个三角网格。当三维对象模型为多边形网格模型时,三维对象模型的多个面是指组成三维对象模型的多个多边形网格。而三维对象模型的平面是指三维对象模型的三维平面。也就是说,三维对象模型的面和三维对象模型的平面是两个完全不同的概念。
步骤102、提取三维对象模型中的平面,得到平面集合。
其中,平面集合是指三维对象模型的三维平面组成的集合。可以理解,由于目标对象由主体结构和细节结构组成,因此目标对象的三维对象模型也有主体结构和细节结构,则提取得到的平面集合中包括构建主体结构的主体平面和构建细节结构的细节结构平面。
主体结构是组成目标对象中的结构中,起到主要承重及传力的结构,因此主体结构是不嵌入任何结构中的结构。相应地,主体结构的主体平面就是不嵌入任何结构中的平面。
细节结构是指嵌入于主体结构之上的结构。
为了便于理解,以目标对象是城市景观中的建筑实体为例,主体结构是指建筑实体的结构构造,包括屋顶、墙体和地基等。细节结构是指除主体结构以外的结构,包括窗户、烟囱、门和楼梯等。
示例性地,计算机设备对三维对象模型进行平面提取处理,以提取三维对象模型中的每个平面,得到三维对象模型中的多个平面组成的平面集合,即得到构建主体结构的主体平面和构建细节结构的细节结构平面所组成的平面集合。
在一些实施例中,三维对象模型中的平面是通过使用默认参数(距离阈值=0.3,角度阈值=40,最小区域大小=25)的区域增长算法提取得到的。
步骤103、对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合。
其中,主体平面的集合是构建主体结构的主体平面的集合。
细节结构平面的集合是构建细节结构的细节结构平面的集合。
可以理解,为了便于灵活选择细节层级模型所显示的细节结构,需要对平面集合进行平面分类,以得到构建主体结构的主体平面的集合和构建细节结构的细节结构平面的集合,从而才能根据主体平面的集合构建主体结构,根据细节结构平面的集合构建细节结构。
示例性地,计算机设备基于对三维对象模型的包围盒进行划分得到的多个多面体,与三维对象模型的位置关系,将平面集合中的主体平面分为一类,得到主体平面的集合;将平面集合中的细节结构平面分为一类,得到细节结构平面的集合。
步骤104、对细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构。
其中,子集合是构成同一细节结构的细节结构平面的集合。例如,构成同一个窗户的细节结构平面是一个子集合。
示例性地,计算机设备对细节结构平面的集合中的细节结构平面进行聚类,将构成同一细节结构的细节结构平面聚为一类,得到至少一个子集合,即得到构成至少一个同一细节结构的细节结构平面的集合。
步骤105、响应于细节结构选定操作,生成目标对象的细节层级模型;细节层级模型包括由主体平面的集合构建的主体结构、以及由细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在主体结构上的细节结构。
其中,选定操作是用于选定添加到主体结构上的细节结构的操作,即用于选定哪些细节结构添加到主体结构上。
示例性地,在进行细节结构选定操作之前,计算机设备根据主体平面的集合构建主体结构,并提供细节结构供用户对象进行选择,在用户对象选定添加到主体结构上的细节结构时,计算机设备响应于细节结构选定操作,将选定的细节结构嵌入到主体结构上,从而生成目标对象的细节层级模型。
可以理解,不同的用户对象对于目标对象的细节层级模型所展示的细节结构的需求是不同的。因此通过与用户对象进行交互,提供细节结构供用户对象进行选择,使得用户对象可以自主选择细节层级模型所显示的细节结构,并将选定的细节结构嵌入到主体结构上,得到满足用户需求的细节层级模型,从而提高了生成目标对象的细节层级模型的灵活性。
在一些实施例中,细节结构选定操作选定的是一组嵌入于同一主体平面、且满足预设的比例相似条件的细节结构组合。响应于细节结构选定操作,生成目标对象的细节层级模型的步骤,包括:响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构组合,并将细节结构组合中的各细节结构嵌入到同一主体平面中,得到目标对象的细节层级模型。
上述三维对象层级模型生成方法中,通过对目标对象的三维对象模型中的平面进行提取,得到平面集合,并将平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合,以及将细节结构平面的集合中的细节结构平面进行聚类,得到组成至少一个细节结构的细节结构平面的子集合,响应于针对目标细节结构的选定操作,将目标细节结构嵌入到由主体平面的集合构建的主体结构上,得到目标对象的细节层级模型,通过针对目标细节结构的选定操作,可以灵活选择细节层级模型所显示的细节结构,从而提高了生成目标对象的细节层级模型的灵活性。
在一些实施例中,对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合,包括:将三维对象模型的包围盒进行划分,得到多个多面体;确定各多面体与三维对象模型的位置关系;位置关系包括多面***于三维对象模型内部或位于三维对象模型外部;针对具有相同位置关系的相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖;二维轮廓是将三维对象模型各个平面的点投影到三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;在公共面未被二维轮廓覆盖的情况下,删除公共面以将相邻的多面体进行合并,得到多个连通分量;根据多个连通分量,确定主体平面的集合和细节结构平面的集合。
其中,三维对象模型的包围盒是包含三维对象模型的几何体。可以理解,三维对象模型由主体结构和细节结构构成,而主体结构通常只有一个,而细节结构至少包括一个,很显然,主体结构和细节结构是由多个多面体组成,因此对三维对象模型的包围盒进行划分时,会得到多个多面体,即主体结构由主体多面体组成,细节结构由细节多面体组成。相应地,位于主体多面体上的平面就是主体平面,位于细节多面体上的平面就是细节结构平面。
在一些实施例中,三维对象模型上所提取的平面的二维轮廓是使用α-shape算法(滚球算法)对平面投影点进行边界点提取时得到的。α-shape算法是一种提取边界点的算法,通过适当设置α的值,就能保持三维对象模型上的平面的二维轮廓和因为细节结构嵌入到主体结构所形成的孔洞之间的平衡,即提取得到的二维轮廓接近三维对象模型上的平面的实际轮廓,主体平面轮廓不受嵌入其上的细节结构的影响,且能通过二维轮廓确定主体结构和细节结构。
示例性地,计算机设备将三维对象模型的包围盒进行划分,得到多个多面体;确定各多面体与三维对象模型的位置关系,即确定各多面***于三维对象模型内部还是位于三维对象模型外部。针对具有相同位置关系的相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖,也就是说,针对均位于三维对象模型内部、且相邻的多面体,或者是针对均位于三维对象模型外部、且相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖,以判断相邻的多面体是否属于同一个连通分量。在公共面未被二维轮廓覆盖的情况下,表明相邻的多面体属于同一个连通分量,则删除公共面以将相邻的多面体进行合并,得到相邻的多面体所构成的连通分量。根据多个连通分量和位置关系,即根据相邻的多面体所构成的连通分量,以及由单个多面体所构成的连通分量,确定主体平面的集合和细节结构平面的集合。
需要说明的是,当某个多面体与多个多面体相邻,且该多面体与其相邻的多面体的公共面均未被二维轮廓覆盖,则该多面体与相邻的多个多面体属于同一个连通分量。例如多面体A与多面体B、多面体A与多面体C均相邻,且多面体A与多面体B的公共面以及多面体A与多面体C的公共面均未被二维轮廓覆盖,则多面体A与多面体B、多面体C属于同一个连通分量,并删除多面体A与多面体B的公共面、以及多面体A与多面体C的公共面以将多面体A、B、C进行合并,得到一个连通分量。
在一些实施例中,在公共面被二维轮廓覆盖的情况下,表明相邻的多面体不属于同一个连通分量,即相邻的两个多面体各自构成一个连通分量。可以理解,未与任何多面体连通的多面体,单独构成一个连通分量。
上述实施例中,通过将三维对象模型的包围盒进行划分,得到多个多面体,根据各多面体与确定各多面体与三维对象模型的位置关系,根据三维对象模型的二维轮廓判断具有相同位置关系的相邻的多面体是否属于同一个连通分量,得到多个连通分量,并根据多个连通分量,得到了主体平面的集合和细节结构平面的集合,实现了对平面集合中的平面的准确分类,确保基于主体平面的集合构建的主体结构和基于细节结构平面的集合构建的细节结构的准确性。
在一些实施例中,根据多个连通分量,确定主体平面的集合和细节结构平面的集合,包括:根据位置关系对多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量;根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合;根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合。
其中,主体内部连通分量是位于三维对象模型内部的最大的连通分量。主体外部连通分量是位于三维对象模型外部的最大的连通分量。
可以理解,由于连通分量是由单个多面体,或者是由删除公共面后的相邻的多面体合并得到的,因此连通分量的位置关系与单个多面体或删除公共面后的相邻的多面体的位置关系是相同的。
示例性地,计算机设备根据位置关系对多个连通分量进行分类,即根据连通分量的位置关系对多个连通分量进行分类,得到位于三维对象模型内部的主体内部连通分量,以及位于三维对象模型外部的主体外部连通分量。根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合。由于主体结构的主体平面是不嵌入任何结构中的平面,细节结构通常嵌入在主体结构之上,因此被主体内部连通分量和主体外部连通分量共有的一组平面就是主体平面的集合。根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合。
上述实施例中,根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合,实现了对平面集合中的平面的准确分类,确保基于主体平面的集合构建的主体结构和基于细节结构平面的集合构建的细节结构的准确性。
在一些实施例中,根据位置关系对多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量,包括:根据位置关系,将多个连通分量中的、且位于三维对象模型内部的最大连通分量确定为主体内部连通分量,并将多个连通分量中的、且位于三维对象模型外部的最大连通分量确定为主体外部连通分量;根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合,包括:将多个连通分量中除主体内部连通分量之外的、且位于三维对象模型内部的离散的连通分量,确定为细节内部连通分量;将多个连通分量中除主体外部连通分量之外的、且位于三维对象模型外部的离散的连通分量,确定为细节外部连通分量;将细节内部连通分量和细节外部连通分量所对应的平面,确定为细节结构平面,得到细节结构平面的集合。
上述实施例中,根据位置关系对多个连通分量进行划分,得到主体外部连通分量、主体内部连通分量、细节内部连通分量和细节外部连通分量,实现了对连通分量的准确划分,并基于细节内部连通分量和细节外部连通分量确定细节结构平面的集合,确保基于细节结构平面的集合构建的细节结构的准确性。
在一些实施例中,如图2所示,提供了一种对平面集合进行平面分类的示意图,以目标对象是建筑物为例进行说明,其中:
20是三维对象模型上提取的平面及其二维轮廓示意图,21是将三维对象模型的包围盒划分为多个多面体的示意图。根据三维对象模型的二维轮廓将多个多面体分隔成主体内部连通分量23、主体外部连通分量24、细节内部连通分量22和细节外部连通分量25。
其中,主体内部连通分量23是位于三维对象模型内部的最大连通分量。
主体外部连通分量24是位于三维对象模型外部的最大连通分量。
细节内部连通分量22是位于三维对象模型内部的离散的连通分量。
细节外部连通分量25是位于三维对象模型外部的离散的连通分量。
可以理解,主体内部连通分量23和主体外部连通分量24对应的平面集合之间的交集,为主体平面的集合26。
在一些实施例中,方法还包括:根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合;其中,属于同一组的各子集合各自对应的细节结构平面皆嵌入于同一主体平面,且属于同一组的各子集合各自构成的细节结构之间满足预设的比例相似条件。
其中,比例相似性用以表征两细节结构是否属于相似体。
预设的比例相似条件是指预设的各细节结构相似的条件。预设的比例相似条件包括细节结构的形状相同或细节结构的体积在预设体积范围内。可以理解,细节结构的体积在预设体积范围内是指针对不同类别的细节结构,设置不同的预设体积范围,属于同一类别的细节结构的体积在同一预设体积范围内。
嵌入关系用以表征细节结构所嵌入的主体结构的主体平面,即通过嵌入关系可以确定细节结构嵌入在主体结构的哪个主体平面。
示例性地,计算机设备确定各子集合所构成的细节结构之间的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合,即将各子集合所构成的细节结构中满足预设的比例相似条件、且嵌入于同一主体平面的细节结构分为一组,以对各子集合进行分组,得到各细节结构平面组合。
在一些实施例中,预设的比例相似条件包括细节结构的形状相同;根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合的步骤包括:根据各子集合所构成的细节结构的比例相似性,即将各子集合所构成的细节结构中形状相同的、且嵌入于同一主体平面的细节结构分为一组,得到各细节结构平面组合。
在一些实施例中,预设的比例相似条件包括细节结构的体积在预设体积范围内;根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合的步骤包括:根据各子集合所构成的细节结构的比例相似性,即将嵌入于同一主体平面、且体积在同一预设体积范围内的细节结构分为一组,得到各细节结构平面组合。
在一些实施例中,响应于细节结构选定操作,生成目标对象的细节层级模型的步骤,包括:响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构平面组合;基于主体平面的集合构建主体结构,并分别基于指定的细节结构平面组合中各子集合构建相应的细节结构,以生成目标对象的细节层级模型。
示例性地,计算机设备响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构平面组合,基于主体平面的集合构建主体结构,并分别基于指定的细节结构平面组合中各子集合构建相应的细节结构,并将各构建的细节结构嵌入到主体结构的同一主体平面上,以生成目标对象的细节层级模型。可以理解,基于同一细节结构平面组合中各子集合构建的细节结构是满足预设比例相似条件、且嵌入于同一主体平面,因此当细节选定操作选定细节结构平面组合时,可以将基于细节结构平面组合构建的各细节结构嵌入到主体结构的同一主体平面上。
上述实施例中,由于细节结构平面组合是通过细节结构选定操作确定的,将细节结构平面组合中嵌入于同一主体平面、且满足预设的比例相似条件的各细节结构添加到主体结构上,能提高生成目标对象的细节层级模型的灵活性,满足不同的用户需求。
此外,相较于传统方法中根据用户视点到细节层级模型中心点的距离展示特定精细程度的细节结构,本申请还能避免生成的细节层级模型中出现大量无意义的中间状态的细节结构。
在一些实施例中,方法还包括:针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,在主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持平行;在主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持正交;在主体平面的集合中存在任意两个平行的主体平面、且两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整平行的主体平面的平面参数,以使得两个平行的主体平面保持共面。
其中,第一预设角度范围用以判断两个主体平面是否近似平行,即当两个主体平面之间的平面夹角位于第一预设角度范围,则表明这两个主体平面近似平行。
第二预设角度范围用以判断两个主体平面是否近似正交,即当两个主体平面之间的平面夹角位于第一预设角度范围,则表明这两个主体平面近似正交。
预设距离阈值用以判断两个平行的主体平面是否共面,即当两个平行的主体平面之间的平面距离小于预设距离阈值时,表明这两个平行的主体平面近似共面。
可以理解,为了提高细节层级模型的质量,需要对主体平面的集合中的主体平面做正则化检测,以确定需保持平行、正交或共面的任意两个主体平面相应地保持平行、正交或共面。
示例性地,计算机设备针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,即检测主体平面的集合中是否存在平面夹角位于第一预设角度范围、平面夹角位于第二预设角度范围或平面距离小于预设距离阈值的任意两个主体平面;在主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,即主体平面的集合中存在近似平行的任意两个主体平面,则调整两个主体平面中的任意一个的平面参数,使得两个主体平面保持平行。在主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,即主体平面的集合中存在近似正交的任意两个主体平面,则调整两个主体平面中的任意一个的平面参数,使得两个主体平面保持正交。在主体平面的集合中存在任意两个平行的主体平面、且两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,表明这两个平行的主体平面近似共面,则调整平行的主体平面的平面参数,即则调整两个主体平面中的任意一个的平面参数,以使得两个平行的主体平面保持共面。
上述实施例中,通过对细节层级模型的主体平面的集合中的主体平面做正则化检测,在主体平面的集合中平面夹角位于第一预设角度范围、平面夹角位于第二预设角度范围或平面距离小于预设距离阈值的任意两个主体平面的情况下,调整主体平面的平面参数,使得需保持平行、正交或共面的任意两个主体平面相应地保持平行、正交或共面,从而提高了细节层级模型的质量。
在一些实施例中,方法还包括:针对细节层级模型中的细节结构做正则化检测,在细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构。
其中,模板网格是标准的细节结构。可以理解,由于采集三维对象模型的采集设备的性能有限,三维对象模型中的细节结构的质量通常比主体结构差,因此为了提高细节层级模型的质量,需要对细节层级模型中的细节结构做正则化检测,以确定细节结构中是否存在至少一个嵌入于主体结构的立面的目标细节结构。在细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构,从而提高细节层级模型的质量。
在一些实施例中,针对细节层级模型中的细节结构做正则化检测,在细节结构中存在至少两个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构。可以理解,当细节结构中存在至少两个目标细节结构时,由于采集三维对象模型的采集设备的性能有限,三维对象模型中的细节结构的质量通常比主体结构差,因此将至少两个目标细节结构用模板网格替换,以细节结构的质量,进而提高了细节层级模型的质量。
在一些实施例中,如图3所示,提供了另一种三维对象层级模型生成方法的流程示意图,以该方法应用于计算机设备为例进行说明,具体包括以下步骤:
步骤301、获取针对目标对象创建的具有多个面的三维对象模型。
步骤302、提取三维对象模型中的平面,得到平面集合。
步骤303、将三维对象模型的包围盒进行划分,得到多个多面体。
步骤304、确定各多面体与三维对象模型的位置关系;位置关系包括多面***于三维对象模型内部或位于三维对象模型外部。
步骤305、针对具有相同位置关系的相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖;二维轮廓是将三维对象模型各个平面的点投影到三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;在公共面未被二维轮廓覆盖的情况下,删除公共面以将相邻的多面体进行合并,得到多个连通分量。
步骤306、根据位置关系,将多个连通分量中的、且位于三维对象模型内部的最大连通分量确定为主体内部连通分量,并将多个连通分量中的、且位于三维对象模型外部的最大连通分量确定为主体外部连通分量;根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合。
步骤307、将多个连通分量中除主体内部连通分量之外的、且位于三维对象模型内部的离散的连通分量,确定为细节内部连通分量;将多个连通分量中除主体外部连通分量之外的、且位于三维对象模型外部的离散的连通分量,确定为细节外部连通分量;将细节内部连通分量和细节外部连通分量所对应的平面,确定为细节结构平面,得到细节结构平面的集合。
步骤308、响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构平面组合;基于主体平面的集合构建主体结构,并分别基于指定的细节结构平面组合中各子集合构建相应的细节结构,以生成目标对象的细节层级模型。
在一些实施例中,得到各细节结构平面组合的步骤包括:根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合;其中,属于同一组的各子集合各自对应的细节结构平面皆嵌入于同一主体平面,且属于同一组的各子集合各自构成的细节结构之间满足预设的比例相似条件。
步骤309、针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,以使得需保持平行、正交或共面的任意两个主体平面保持平行、正交或共面。
具体地,针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,在主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持平行;在主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持正交;在主体平面的集合中存在任意两个平行的主体平面、且两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整平行的主体平面的平面参数,以使得两个平行的主体平面保持共面。
步骤310、针对细节层级模型中的细节结构做正则化检测,在细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构。
上述三维对象层级模型生成方法中,通过对目标对象的三维对象模型中的平面进行提取,得到平面集合,并将平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合,以及将细节结构平面的集合中的细节结构平面进行聚类,得到组成至少一个细节结构的细节结构平平面的子集合,响应于针对细节结构的选定操作,将细节结构嵌入到由主体平面的集合构建的主体结构上,得到目标对象的细节层级模型,通过针对细节结构的选定操作,可以灵活选择细节层级模型所显示的细节结构,从而提高了生成目标对象的细节层级模型的灵活性。
此外,通过对细节层级模型做正则化检测,使得需保持平行、正交或共面的任意两个主体平面保持平行、正交或共面;在选定的细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构,从而提升了细节层级模型的质量。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的三维对象层级模型生成方法的三维对象层级模型生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个三维对象层级模型生成装置实施例中的具体限定可以参见上文中对于三维对象层级模型生成方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种三维对象层级模型生成装置,包括:获取模块401、分类模块402和生成模块403。
获取模块401,用于获取针对目标对象创建的具有多个面的三维对象模型; 提取三维对象模型中的平面,得到平面集合。
分类模块402,用于对平面集合进行平面分类,得到主体平面的集合和细节结构平面的集合;对细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构。
生成模块403,用于响应于细节结构选定操作,生成目标对象的细节层级模型;细节层级模型包括由主体平面的集合构建的主体结构、以及由细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在主体结构上的细节结构。
在一些实施例中,如图5所示,分类模块402包括划分单元402a、第一确定单元402b、合并单元402c和第二确定单元402d,其中:
划分单元402a,用于将三维对象模型的包围盒进行划分,得到多个多面体。
第一确定单元402b,用于确定各多面体与三维对象模型的位置关系;位置关系包括多面***于三维对象模型内部或位于三维对象模型外部。
合并单元402c,用于针对具有相同位置关系的相邻的多面体,判断相邻的多面体的公共面是否被三维对象模型的二维轮廓覆盖;二维轮廓是将三维对象模型各个平面的点投影到三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;在公共面未被二维轮廓覆盖的情况下,删除公共面以将相邻的多面体进行合并,得到多个连通分量。
第二确定单元402d,用于根据多个连通分量,确定主体平面的集合和细节结构平面的集合。
在一些实施例中,分类模块402用于根据位置关系对多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量;根据主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合;根据平面集合中除主体平面的集合之外的面,确定细节结构平面的集合。
在一些实施例中,分类模块402具体用于根据位置关系,将多个连通分量中的、且位于三维对象模型内部的最大连通分量确定为主体内部连通分量,并将多个连通分量中的、且位于三维对象模型外部的最大连通分量确定为主体外部连通分量;根据平面集合中除主体平面的集合之外的平面,确定细节结构平面的集合,包括:将多个连通分量中除主体内部连通分量之外的、且位于三维对象模型内部的离散的连通分量,确定为细节内部连通分量;将多个连通分量中除主体外部连通分量之外的、且位于三维对象模型外部的离散的连通分量,确定为细节外部连通分量;将细节内部连通分量和细节外部连通分量所对应的平面,确定为细节结构平面,得到细节结构平面的集合。
在一些实施例中,分类模块402还用于根据各子集合所构成的细节结构的比例相似性,以及各子集合所构成的细节结构与各主体平面之间的嵌入关系,对各子集合进行分组,得到各细节结构平面组合;其中,属于同一组的各子集合各自对应的细节结构平面皆嵌入于同一主体平面,且属于同一组的各子集合各自构成的细节结构之间满足预设的比例相似条件。
生成模块403,用于响应于细节结构选定操作,确定细节结构选定操作所指定的细节结构平面组合;基于主体平面的集合构建主体结构,并分别基于指定的细节结构平面组合中各子集合构建相应的细节结构,以生成目标对象的细节层级模型。
在一些实施例中,生成模块403还用于针对细节层级模型中的主体平面的集合中的主体平面做正则化检测,在主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持平行;在主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整主体平面的平面参数,以使得两个主体平面保持正交;在主体平面的集合中存在任意两个平行的主体平面、且两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整平行的主体平面的平面参数,以使得两个平行的主体平面保持共面。
在一些实施例中,生成模块403还用于针对细节层级模型中的细节结构做正则化检测,在细节结构中存在至少一个目标细节结构、且目标细节结构嵌入于主体结构的立面的情况下,则用模板网格替换目标细节结构。
上述三维对象层级模型生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过***总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到***总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种三维对象层级模型生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种三维对象层级模型生成方法,其特征在于,所述方法包括:
获取针对目标对象创建的具有多个面的三维对象模型;
提取所述三维对象模型中的平面,得到平面集合;
将所述三维对象模型的包围盒进行划分,得到多个多面体;
确定各所述多面体与所述三维对象模型的位置关系;所述位置关系包括所述多面***于所述三维对象模型内部或位于所述三维对象模型外部;
针对具有相同所述位置关系的相邻的多面体,判断所述相邻的多面体的公共面是否被所述三维对象模型的二维轮廓覆盖;所述二维轮廓是将所述三维对象模型各个平面的点投影到所述三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;
在所述公共面未被所述二维轮廓覆盖的情况下,删除所述公共面以将所述相邻的多面体进行合并,得到多个连通分量;
根据所述位置关系对所述多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量;
根据所述主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合;
根据所述平面集合中除所述主体平面的集合之外的平面,确定细节结构平面的集合;对所述细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构;
响应于细节结构选定操作,生成所述目标对象的细节层级模型;所述细节层级模型包括由所述主体平面的集合构建的主体结构、以及由所述细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在所述主体结构上的所述细节结构。
2.根据权利要求1所述的方法,其特征在于,根据所述位置关系对所述多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量,包括:
根据所述位置关系,将所述多个连通分量中的、且位于所述三维对象模型内部的最大连通分量确定为主体内部连通分量,并将所述多个连通分量中的、且位于所述三维对象模型外部的最大连通分量确定为主体外部连通分量;
所述根据所述面集合中除所述主体平面的集合之外的平面,确定细节结构平面的集合,包括:
将所述多个连通分量中除所述主体内部连通分量之外的、且位于所述三维对象模型内部的离散的连通分量,确定为细节内部连通分量;
将所述多个连通分量中除所述主体外部连通分量之外的、且位于所述三维对象模型外部的离散的连通分量,确定为细节外部连通分量;
将所述细节内部连通分量和所述细节外部连通分量所对应的平面,确定为细节结构平面,得到细节结构平面的集合。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据各所述子集合所构成的细节结构的比例相似性,以及各所述子集合所构成的细节结构与所述各主体平面之间的嵌入关系,对所述各子集合进行分组,得到各细节结构平面组合;其中,属于同一组的各子集合各自对应的细节结构平面皆嵌入于同一主体平面,且属于同一组的各子集合各自构成的细节结构之间满足预设的比例相似条件;
所述响应于细节结构选定操作,生成所述目标对象的细节层级模型,包括:
响应于细节结构选定操作,确定所述细节结构选定操作所指定的细节结构平面组合;
基于所述主体平面的集合构建主体结构,并分别基于所述指定的细节结构平面组合中各子集合构建相应的细节结构,以生成所述目标对象的细节层级模型。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
针对所述细节层级模型中的主体平面的集合中的主体平面做正则化检测,在所述主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整所述主体平面的平面参数,以使得所述两个主体平面保持平行;
在所述主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整所述主体平面的平面参数,以使得所述两个主体平面保持正交;
在所述主体平面的集合中存在任意两个平行的主体平面、且所述两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整所述平行的主体平面的平面参数,以使得所述两个平行的主体平面保持共面。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:针对所述细节层级模型中的细节结构做正则化检测,在所述细节结构中存在至少一个目标细节结构、且所述目标细节结构嵌入于所述主体结构的立面的情况下,则用模板网格替换所述目标细节结构。
6.一种三维对象层级模型生成装置,其特征在于,所述装置包括:
获取模块,用于获取针对目标对象创建的具有多个面的三维对象模型;提取所述三维对象模型中的平面,得到平面集合;
分类模块,用于将所述三维对象模型的包围盒进行划分,得到多个多面体;
确定各所述多面体与所述三维对象模型的位置关系;所述位置关系包括所述多面***于所述三维对象模型内部或位于所述三维对象模型外部;针对具有相同所述位置关系的相邻的多面体,判断所述相邻的多面体的公共面是否被所述三维对象模型的二维轮廓覆盖;所述二维轮廓是将所述三维对象模型各个平面的点投影到所述三维对象模型对应的平面上,并计算各平面上投影的点的轮廓得到的;在所述公共面未被所述二维轮廓覆盖的情况下,删除所述公共面以将所述相邻的多面体进行合并,得到多个连通分量;根据所述位置关系对所述多个连通分量进行分类,得到主体内部连通分量和主体外部连通分量;根据所述主体内部连通分量对应的平面集合和主体外部连通分量对应的平面集合之间的交集,确定主体平面的集合;根据所述平面集合中除所述主体平面的集合之外的平面,确定细节结构平面的集合;对所述细节结构平面的集合中的细节结构平面进行聚类,得到至少一个子集合;每个子集合中的细节结构平面用于构成同一细节结构;
生成模块,用于响应于细节结构选定操作,生成所述目标对象的细节层级模型;所述细节层级模型包括由所述主体平面的集合构建的主体结构、以及由所述细节结构选定操作所选定的细节结构对应的子集合生成的、且嵌入在所述主体结构上的所述细节结构。
7.根据权利要求6所述的装置,其特征在于,所述生成模块还用于针对所述细节层级模型中的主体平面的集合中的主体平面做正则化检测,在所述主体平面的集合中存在平面夹角位于第一预设角度范围的任意两个主体平面的情况下,调整所述主体平面的平面参数,以使得所述两个主体平面保持平行;在所述主体平面的集合中存在平面夹角位于第二预设角度范围的任意两个主体平面的情况下,调整所述主体平面的平面参数,以使得所述两个主体平面保持正交;在所述主体平面的集合中存在任意两个平行的主体平面、且所述两个平行的主体平面之间的平面距离小于预设距离阈值的情况下,调整所述平行的主体平面的平面参数,以使得所述两个平行的主体平面保持共面。
8.根据权利要求6所述的装置,其特征在于,所述生成模块还用于针对所述细节层级模型中的细节结构做正则化检测,在所述细节结构中存在至少一个目标细节结构、且所述目标细节结构嵌入于所述主体结构的立面的情况下,则用模板网格替换所述目标细节结构。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310549081.XA CN116310226B (zh) | 2023-05-16 | 2023-05-16 | 三维对象层级模型生成方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310549081.XA CN116310226B (zh) | 2023-05-16 | 2023-05-16 | 三维对象层级模型生成方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116310226A CN116310226A (zh) | 2023-06-23 |
CN116310226B true CN116310226B (zh) | 2023-08-18 |
Family
ID=86794458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310549081.XA Active CN116310226B (zh) | 2023-05-16 | 2023-05-16 | 三维对象层级模型生成方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116310226B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930536A (zh) * | 2012-10-16 | 2013-02-13 | 深圳先进技术研究院 | 基于层次化结构的室内场景运动性分析与检测方法 |
CN103646415A (zh) * | 2013-12-24 | 2014-03-19 | 秦皇岛数据产业研究院有限公司 | 基于双重约束的三维场景lod模型的选择调用方法 |
CN107038749A (zh) * | 2016-02-03 | 2017-08-11 | 北京八亿时空信息工程有限公司 | 多分辨率三维建模方法及建模装置 |
CN111724469A (zh) * | 2020-06-28 | 2020-09-29 | 广州小鹏车联网科技有限公司 | 三维模型的加载方法、显示方法、车辆和存储介质 |
CN113706696A (zh) * | 2021-09-02 | 2021-11-26 | 长春理工大学 | 基于对象视觉显著性的3d几何模型细节层次自适应选择方法 |
CN114998544A (zh) * | 2022-06-21 | 2022-09-02 | 重庆市勘测院((重庆市地图编制中心)) | 一种顾及视觉主体的建筑实体模型轻量化方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3769257A1 (en) * | 2018-03-20 | 2021-01-27 | PCMS Holdings, Inc. | System and method for dynamically adjusting level of details of point clouds |
CN109325998B (zh) * | 2018-10-08 | 2023-06-30 | 香港理工大学 | 一种基于点云数据的室内3d建模方法、***及相关装置 |
AT525294A1 (de) * | 2021-08-04 | 2023-02-15 | Ocean Maps GmbH | Verfahren zum Erzeugen einer hierarchischen Datenstruktur, hierarchische Datenstruktur sowie Verfahren zum Streamen von dreidimensionalen Objekten |
-
2023
- 2023-05-16 CN CN202310549081.XA patent/CN116310226B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930536A (zh) * | 2012-10-16 | 2013-02-13 | 深圳先进技术研究院 | 基于层次化结构的室内场景运动性分析与检测方法 |
CN103646415A (zh) * | 2013-12-24 | 2014-03-19 | 秦皇岛数据产业研究院有限公司 | 基于双重约束的三维场景lod模型的选择调用方法 |
CN107038749A (zh) * | 2016-02-03 | 2017-08-11 | 北京八亿时空信息工程有限公司 | 多分辨率三维建模方法及建模装置 |
CN111724469A (zh) * | 2020-06-28 | 2020-09-29 | 广州小鹏车联网科技有限公司 | 三维模型的加载方法、显示方法、车辆和存储介质 |
CN113706696A (zh) * | 2021-09-02 | 2021-11-26 | 长春理工大学 | 基于对象视觉显著性的3d几何模型细节层次自适应选择方法 |
CN114998544A (zh) * | 2022-06-21 | 2022-09-02 | 重庆市勘测院((重庆市地图编制中心)) | 一种顾及视觉主体的建筑实体模型轻量化方法 |
Non-Patent Citations (1)
Title |
---|
潘珊珊 等.高效鲁棒三维结构化重建.中国图像图形学报.2022,第27卷(第02期),第421-434页. * |
Also Published As
Publication number | Publication date |
---|---|
CN116310226A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bauchet et al. | Kinetic shape reconstruction | |
US20210027532A1 (en) | Primitive-based 3d building modeling, sensor simulation, and estimation | |
CN113781667B (zh) | 三维结构简化重建方法、装置、计算机设备和存储介质 | |
CN112669463B (zh) | 三维点云的曲面重建方法、计算机设备和计算机可读存储介质 | |
CN111862292B (zh) | 输电线路走廊的数据渲染方法、装置和计算机设备 | |
US9406169B2 (en) | System and method for data compression and grid regeneration | |
CN113628331B (zh) | 一种虚幻引擎中摄影测量模型的数据组织和调度方法 | |
CN111754618B (zh) | 一种面向对象的实景三维模型多层次解译方法及*** | |
CN113012063B (zh) | 一种动态点云修复方法、装置及计算机设备 | |
CN114820975A (zh) | 基于全要素参数符号化的三维场景仿真重构***及方法 | |
CN116258840B (zh) | 层级细节表示树的生成方法、装置、设备及存储介质 | |
CN111583268B (zh) | 点云虚拟选择与裁切方法、装置及设备 | |
Zhou | 3D urban modeling from city-scale aerial LiDAR data | |
CN116310226B (zh) | 三维对象层级模型生成方法、装置、设备和存储介质 | |
CN116863137A (zh) | 输电铁塔三维模型的优化方法、装置和计算机设备 | |
CN110634184A (zh) | 一种海量倾斜摄影数据的加载方法 | |
CN116797747A (zh) | 水下检测数据可视化方法、装置、计算机设备和存储介质 | |
CN114898094B (zh) | 点云上采样方法、装置、计算机设备和存储介质 | |
CN118052947B (zh) | 基于大数据的三维地理模型建立方法及设备 | |
CN111612869A (zh) | 一种基于栅格数据进行地质编图的分析方法 | |
CN116977592B (zh) | 基于卷绕数的三维结构化重建方法、装置和计算机介质 | |
Martijn et al. | Detect illegal buildings based on LiDAR point cloud data | |
CN116402967B (zh) | 场景建筑快速单体化方法、装置、计算机设备和存储介质 | |
CN116824082B (zh) | 虚拟地形的绘制方法、装置、设备、存储介质及程序产品 | |
US11308690B2 (en) | Information processing apparatus and non-transitory computer readable medium for determining attribute value of voxel |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |