CN109064542B - 三维模型表面空洞填补方法和装置 - Google Patents

三维模型表面空洞填补方法和装置 Download PDF

Info

Publication number
CN109064542B
CN109064542B CN201810575202.7A CN201810575202A CN109064542B CN 109064542 B CN109064542 B CN 109064542B CN 201810575202 A CN201810575202 A CN 201810575202A CN 109064542 B CN109064542 B CN 109064542B
Authority
CN
China
Prior art keywords
triangle
cavity
sets
vertex
color value
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
Application number
CN201810575202.7A
Other languages
English (en)
Other versions
CN109064542A (zh
Inventor
孙鑫
谢哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
As you can see (Beijing) Technology Co.,Ltd.
Original Assignee
Seashell Housing Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seashell Housing Beijing Technology Co Ltd filed Critical Seashell Housing Beijing Technology Co Ltd
Priority to CN201810575202.7A priority Critical patent/CN109064542B/zh
Publication of CN109064542A publication Critical patent/CN109064542A/zh
Priority to US16/426,035 priority patent/US10846926B2/en
Priority to JP2020567548A priority patent/JP6951594B2/ja
Priority to PCT/CN2019/089495 priority patent/WO2019233347A1/en
Application granted granted Critical
Publication of CN109064542B publication Critical patent/CN109064542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

本发明实施例提供一种三维模型表面空洞填补方法和装置。所述方法包括:在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到第一表面上,生成包含纹理的第二表面;查找出第一表面的空洞;当空洞的面积小于预设数值时,查找出与空洞边缘的三角形相连的三角形集合;获取三角形集合中各三角形的顶点的颜色值,获取空洞中的各三角形的顶点与三角形集合中各三角形的顶点的距离;对三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;根据空洞中各三角形的顶点的颜色值填补空洞。本发明实施例通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的展示效果。

Description

三维模型表面空洞填补方法和装置
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种三维模型表面空洞填补方法和装置。
背景技术
在现有的三维房屋模型中,例如VR(Virtual Reality,虚拟现实)看房***,由于在拍摄过程中,有些位置会被其他物体被遮挡,从而无法采集到数据,也不能拍摄到实景图像。在构建三维房屋模型的过程中,没有数据的区域会在模型表面生成空洞,从模型展示来看就会显示一个黑洞,严重影响模型的展示效果。
因此,如何填补模型表面的空洞,成为亟待解决的问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种三维模型表面空洞填补方法和装置。
一方面,本发明实施例提供一种三维模型表面空洞填补方法,所述方法包括:
在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
根据空洞中各三角形的顶点的颜色值填补空洞。
另一方面,本发明实施例提供一种三维模型表面空洞填补装置,所述装置包括:
映射单元,用于在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
第一查找单元,用于根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
第一计算单元,用于计算各空洞的面积;
第二查找单元,用于当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
获取单元,用于根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
第二计算单元,用于根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
填补单元,用于根据空洞中各三角形的顶点的颜色值填补空洞。
另一方面,本发明实施例还提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述方法的步骤。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述三维模型表面空洞填补方法的步骤。
本发明实施例通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的完整性和展示效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的三维模型表面空洞填补方法的流程示意图;
图2为本发明一实施例提供的三维模型表面空洞填补装置的结构示意图;
图3为本发明一实施例提供的第一查找单元的结构示意图;
图4为本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在对本发明提供的内容进行详细介绍前,先给出“VR看房”概念的含义。
与目前流行的图片看房、视频看房、全景看房等无法提供深度信息和真实感知的看房概念不同的是,“VR看房”是指利用VR技术真实还原出房源三维场景,为消费者提供自由模式下的沉浸式看房体验,从而让用户足不出户即可体验到真实看房场景。例如,通过打开APP上的VR房源,触摸屏幕任意处即可获得包括房屋真实空间的尺寸、朝向、远近等深度信息。在还原房源三维场景这方面,可以先对房屋进行多点多角度的扫描拍摄,得到完整的三维点云数据、经纬度数据以及多曝光的高清彩色照片,后期通过自动建模、智能空洞填补、全自动数据提取,HDR(High-Dynamic Range高动态范围)图像优化等三维重建技术,将全部数据及图片纹理映射到三维模型上,得到最终用户看到的真实房屋空间。
图1示出了本发明实施例提供的一种三维模型表面空洞填补方法的流程示意图。
如图1所示,本发明实施例提供的三维模型表面空洞填补方法具体包括以下步骤:
S11、在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
本发明实施例应用于房屋的三维模型,房屋的三维模型框架是在对房屋进行扫描(如通过红外感应相机)获取房屋的三维点云数据,再根据三维点云数据搭建出的房屋三维空间模型框架。本发明实施例利用重建算法构建出整个房屋三维空间模型框架的表面,然后将扫描时获取的房屋的全景彩色照片的纹理映射到构建的表面上,生成包含纹理信息的表面,其中,三维模型框架的表面由第一三角形集合组成,包含纹理的表面由第二三角形集合组成,第二三角形集合仅包含带纹理的三角形,正常情况下三维模型框架的表面与包含纹理的表面共用相同的三角形集合,且存在一一对应关系,但是由于利用重建算法生成的三维模型框架的表面可能存在空洞,第二三角形集合中的三角形比第一三角形集合中的三角形数目少,因此第一三角形集合中的一些三角形可能在第二集合中不存在对应的三角形。
S12、根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
三维房屋框架的表面存在没有拍摄数据的空洞,在模型表面显示为黑洞,不携带纹理信息。本发明实施例通过比较第一三角形集合中的所有三角形在第二三角形集合中是否有对应的带纹理的三角形,来定位属于空洞的三角形的位置,具体可通过广度优先搜索对所有三角形逐个比较,以保证完全搜索。
具体地,三角形作为组成表面的单元,面积很小,因此通常情况下一个空洞占据许多三角形的面积,本发明实施例将连接在一起的纹理缺失的三角形作为一个整体,称为一个空洞。
S13、计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
本发明实施例在定位各个空洞之后,计算每个空洞的面积大小,对于面积值在预设范围内的进行后续的填补。针对一个空洞首先查找到与该空洞的边缘三角形相连并且包围该空洞的三角形,形成一个集合,集合中每个三角形都有完整的纹理信息。
S14、根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
第三三角形集合是第一三角形集合的一部分,因此可以确定第三三角形集合和第二三角形集合的对应关系,根据对应关系获取第三三角形集合中每个三角形的各顶点的纹理包含的颜色值,本发明实施例获取各顶点对应的颜色值,并且计算出空洞中的各三角形的顶点与第三三角形集合中各三角形的顶点的距离。
S15、根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值。
本发明实施例以空洞中的各三角形的顶点与第三三角形集合中各三角形的顶点的距离为权重,计算出空洞中的各三角形的顶点的颜色值。
S16、根据空洞中各三角形的顶点的颜色值填补空洞。
得到空洞中各三角形的顶点的颜色值之后就能通过具体的图像处理技术来获得每个三角形的颜色信息,填补全每个三角形的颜色,再将补全颜色的三角形加入到第二表面中,从而使第二表面填满带纹理的三角形。
本发明实施例提供的三维模型表面空洞填补方法,查找出三维模型表面的空洞,根据空洞边缘的三角形的顶点的颜色计算出空洞中各三角形顶点的颜色,从而填补空洞中的各三角形。本发明实施例通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的完整性和展示效果。
在上述实施例的基础上,S11所述构建出整个三维模型框架的第一表面包括:
对所述三维模型框架进行泊松表面重建,生成整个三维模型框架的表面。
本发明实施例通过泊松表面重建算法构建出三维模型框架的整个表面,例如,通过构建出房屋三维框架的表面,生成mesh.ply文件,mesh.ply文件表示的模型表面是由三角形集合组成的。
在上述实施例的基础上,S11具体包括:
将三维空间的实景图按照预设对应关系贴在所述三维模型框架的表面上,生成包含纹理的模型表面。
具体地,本发明实施例将房屋的全景图像按照一定的比例关系贴合在三维房屋框架中,使图像和三维房屋框架相匹配,进而实现全景图像与三维模型表面的纹理映射,从而三维模型的表面包含了图像纹理信息。例如,生成的包含纹理的三维模型的表面为output.obj文件,output.obj文件表示的模型表面也是由三角形集合组成,这些三角形都是带纹理的三角形。
在上述实施例的基础上,S12具体包括:
查找第一三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
当第一三角形集合中的三角形在第二三角形集合中查找不到对应的包含纹理的三角形时,确定所述第一三角形集合中的三角形为缺失纹理的三角形;
将所有相连的缺失纹理的三角形组成一个空洞。
本发明实施例通过对比mesh.ply文件和output.obj文件查找出模型表面缺失纹理的三角形,由于output.obj是基于mesh.ply生成的,所以这两个文件共用相同的三角形集合,所以通过比较mesh.ply中所有的三角形在output.obj中是否有对应的纹理信息来判断空洞的位置,如果mesh.ply中的三角形在output.obj中没有对应的带纹理的三角形,则认为该mesh.ply中的三角形属于一个空洞的三角形。通过这种判断方法对output.obj中所有三角形进行广度优先搜索,查找到所有连接在一起的没有纹理的三角形,连接在一起的没有纹理的三角形成一个空洞。
在上述实施例的基础上,S13具体包括:
根据空洞中各三角形顶点的三维坐标计算出各三角形的面积,得到空洞的面积。
具体地,一个空洞通常包括许多个三角形,通过计算出空洞中各个三角形的面积之和得到空洞的面积。
如果空洞的面积小于预设数据(例如5平方米),则对空洞进行进一步的填补。具体地,先找出包围空洞的三角形,包围空洞的三角形指在空洞的一周并且与空洞的边缘三角形相连,将这些三角形组成一个集合,集合中每个三角形都有完整的纹理信息。
上述实施例的基础上,在计算各空洞的面积之后,所述方法还包括:
当空洞的面积大于或等于所述预设数值时,不对所述空洞进行填补。
具体地,如果空洞的面积不小于预设数据(例如5平方米)时,该区域可能是泊松重建算法拟合出的错误的或者假的表面,很大概率上该区域是不存在的,因此放弃对该空洞的填补。
在上述实施例的基础上,S14具体包括:
查找第三三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
获取所述对应的包含纹理的三角形的顶点的纹理所对应的颜色值。
与确定第一三角形集合和第二三角形集合的对应关系相同,本发明实施例可以确定第三三角形集合和第二三角形集合的对应关系,根据对应关系获取第三三角形集合中每个三角形所对应的包含纹理的三角形的各顶点的颜色值。
在上述实施例的基础上,S16具体包括:
对空洞中各三角形的顶点的颜色值进行高斯模糊处理,得到各三角形内各像素点的颜色值;
将计算出颜色值的三角形填补在所述第二表面中。
具体地,本发明实施例对空洞中各三角形的顶点的颜色值做高斯模糊,得到顶点周边各像素点的颜色值,从而能够得到每个三角形的颜色,将补全颜色的三角形加到第二表面中,使第二表面的空洞填满带纹理的三角形。
本发明实施例还提供一种三维模型表面空洞填补装置。
图2示出了本发明实施例提供的一种三维模型表面空洞填补装置的结构示意图。
如图2所示,本发明实施例提供的三维模型表面空洞填补装置包括映射单元11、第一查找单元12、第一计算单元13、第二查找单元14、获取单元15、第二计算单元16以及填补单元17,其中:
所述映射单元11,用于在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
所述第一查找单元12,用于根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
所述第一计算单元13,用于计算各空洞的面积;
所述第二查找单元14,用于当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
所述获取单元15,用于根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
所述第二计算单元16,用于根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
所述填补单元17,用于根据空洞中各三角形的顶点的颜色值填补空洞。
本发明实施例提供的三维模型表面空洞填补装置,查找出三维模型表面的空洞,根据空洞边缘的三角形的顶点的颜色计算出空洞中各三角形顶点的颜色,从而填补空洞中的各三角形。本发明实施例通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的完整性和展示效果。
在上述实施例的基础上,所述装置还包括:
生成单元,用于对所述三维模型框架进行泊松表面重建,生成整个三维模型框架的表面。
在上述实施例的基础上,所述映射单元11包括:
贴合模块,用于将三维空间的实景图按照预设对应关系贴在所述三维模型框架的表面上;
生成模块,用于生成包含纹理的三维模型框架的表面。
图3示出了本发明实施例提供的第一查找单元12的结构示意图。
如图3所示,所述第一查找单元12包括:
第一查找模块121,用于查找第一三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
确定模块122,用于当第一三角形集合中的三角形在第二三角形集合中查找不到对应的包含纹理的三角形时,确定所述第一三角形集合中的三角形为缺失纹理的三角形;
组成模块123,用于将所有相连的缺失纹理的三角形组成一个空洞。
在上述实施例的基础上,所述计算单元13,用于根据空洞中各三角形顶点的三维坐标计算出各三角形的面积,得到空洞的面积。
在上述实施例的基础上,所述获取单元15包括:
第二查找模块,用于查找第三三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
获取模块,用于获取所述对应的包含纹理的三角形的顶点的纹理所对应的颜色值。
在上述实施例的基础上,所述填补单元17包括:
处理模块,用于对空洞中各三角形的顶点的颜色值进行高斯模糊处理,得到各三角形内各像素点的颜色值;
填补模块,将计算出颜色值的三角形填补在所述第二表面中。
本发明实施例中的功能模块可以通过硬件处理器(hardware processor)来实现相关功能模块,本发明实施例不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如图1的方法。
图4示出了本发明一实施例提供的电子设备的结构示意图。
如图4所示,本发明实施例提供的电子设备包括存储器21、处理器22、总线23以及存储在存储器21上并可在处理器22上运行的计算机程序。其中,所述存储器21、处理器22通过所述总线23完成相互间的通信。
所述处理器22用于调用所述存储器21中的程序指令,以执行所述程序时实现如图1的方法。
例如,所述处理器执行所述程序时实现如下方法:
在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
根据空洞中各三角形的顶点的颜色值填补空洞。
本发明实施例提供的电子设备,通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的完整性和展示效果。
本发明实施例还提供一种非暂态计算机可读存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现如图1的步骤。
例如,所述处理器执行所述程序时实现如下方法:
在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
根据空洞中各三角形的顶点的颜色值填补空洞。
本发明实施例提供的非暂态计算机可读存储介质,通过对空洞中各三角形的颜色进行填补,能够填满三维模型表面的空洞,提高三维模型的完整性和展示效果。
本发明一实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:
在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连的所有三角形,组成第三三角形集合;
根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
根据空洞中各三角形的顶点的颜色值填补空洞。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种三维模型表面空洞填补方法,其特征在于,所述方法包括:
在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
计算各空洞的面积,当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连并且包围所述空洞的所有三角形,组成第三三角形集合;
根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
根据空洞中各三角形的顶点的颜色值填补空洞。
2.根据权利要求1所述的方法,其特征在于,所述构建出整个三维模型框架的第一表面包括:
对所述三维模型框架进行泊松表面重建,生成整个三维模型框架的表面。
3.根据权利要求1所述的方法,其特征在于,所述将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面包括:将三维空间的实景图按照预设对应关系贴在所述三维模型框架的表面上,生成包含纹理的三维模型框架的表面。
4.根据权利要求1所述的方法,其特征在于,根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞包括:
查找第一三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
当第一三角形集合中的三角形在第二三角形集合中查找不到对应的包含纹理的三角形时,确定所述第一三角形集合中的三角形为缺失纹理的三角形;
将所有相连的缺失纹理的三角形组成一个空洞。
5.根据权利要求1所述的方法,其特征在于,所述计算各空洞的面积包括:
根据空洞中各三角形顶点的三维坐标计算出各三角形的面积,得到空洞的面积。
6.根据权利要求1所述的方法,其特征在于,所述根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值包括:
查找第三三角形集合中的三角形在第二三角形集合中对应的包含纹理的三角形;
获取所述对应的包含纹理的三角形的顶点的纹理所对应的颜色值。
7.根据权利要求1所述的方法,其特征在于,所述根据空洞中各三角形的顶点的颜色值填补空洞包括:
对空洞中各三角形的顶点的颜色值进行高斯模糊处理,得到各三角形内各像素点的颜色值;
将计算出颜色值的三角形填补在所述第二表面中。
8.一种三维模型表面空洞填补装置,其特征在于,所述装置包括:
映射单元,用于在构建出整个三维模型框架的第一表面之后,将三维空间实景图的纹理映射到所述第一表面上,生成包含纹理的第二表面,所述第一表面由第一三角形集合组成,所述第二表面由第二三角形集合组成;
第一查找单元,用于根据所述第一三角形集合和所述第二三角形集合的对应关系查找出所述第一表面的空洞,所述空洞由多个缺失纹理的三角形组成;
第一计算单元,用于计算各空洞的面积;
第二查找单元,用于当空洞的面积小于预设数值时,在所述第一三角形集合中查找出与空洞边缘的三角形相连并且包围所述空洞的所有三角形,组成第三三角形集合;
获取单元,用于根据第三三角形集合与第二三角形集合的对应关系获取第三三角形集合中各三角形的顶点的颜色值,以及获取空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离;
第二计算单元,用于根据空洞中的各三角形的顶点与所述第三三角形集合中各三角形的顶点的距离对所述第三三角形集合中各三角形的顶点的颜色值做加权平均,得到空洞中各三角形的顶点的颜色值;
填补单元,用于根据空洞中各三角形的顶点的颜色值填补空洞。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述三维模型表面空洞填补的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述三维模型表面空洞填补的步骤。
CN201810575202.7A 2018-06-06 2018-06-06 三维模型表面空洞填补方法和装置 Active CN109064542B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201810575202.7A CN109064542B (zh) 2018-06-06 2018-06-06 三维模型表面空洞填补方法和装置
US16/426,035 US10846926B2 (en) 2018-06-06 2019-05-30 Systems and methods for filling holes in a virtual reality model
JP2020567548A JP6951594B2 (ja) 2018-06-06 2019-05-31 仮想現実モデル内の穴を埋めるためのシステム及び方法
PCT/CN2019/089495 WO2019233347A1 (en) 2018-06-06 2019-05-31 Systems and methods for filling holes in virtual reality models

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810575202.7A CN109064542B (zh) 2018-06-06 2018-06-06 三维模型表面空洞填补方法和装置

Publications (2)

Publication Number Publication Date
CN109064542A CN109064542A (zh) 2018-12-21
CN109064542B true CN109064542B (zh) 2019-11-19

Family

ID=64820460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810575202.7A Active CN109064542B (zh) 2018-06-06 2018-06-06 三维模型表面空洞填补方法和装置

Country Status (4)

Country Link
US (1) US10846926B2 (zh)
JP (1) JP6951594B2 (zh)
CN (1) CN109064542B (zh)
WO (1) WO2019233347A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10872467B2 (en) * 2018-06-06 2020-12-22 Ke.Com (Beijing) Technology Co., Ltd. Method for data collection and model generation of house
CN109064542B (zh) * 2018-06-06 2019-11-19 贝壳找房(北京)科技有限公司 三维模型表面空洞填补方法和装置
KR102126561B1 (ko) * 2018-07-23 2020-06-24 주식회사 쓰리아이 적응적 삼차원 공간 생성방법 및 그 시스템
US11995854B2 (en) * 2018-12-19 2024-05-28 Nvidia Corporation Mesh reconstruction using data-driven priors
CN111563965B (zh) * 2019-02-14 2024-04-05 如你所视(北京)科技有限公司 一种通过优化深度图生成全景图的方法及装置
US11423308B1 (en) * 2019-09-20 2022-08-23 Apple Inc. Classification for image creation
CN112513929A (zh) * 2019-11-29 2021-03-16 深圳市大疆创新科技有限公司 图像处理方法及装置
CN111583409B (zh) * 2020-03-25 2023-06-27 沈大勇 针对实景三维模型的无网格边界孔洞修补方法和装置
CN111640109B (zh) * 2020-06-05 2023-07-14 如你所视(北京)科技有限公司 模型检测方法及***
CN112581592A (zh) * 2020-12-21 2021-03-30 陕西土豆数据科技有限公司 一种解决三维建模纹理贴图不可见面纹理的方法
CN115358979B (zh) * 2022-08-12 2023-06-16 武汉大学 一种倾斜实景三维模型质量检查方法及装置
CN115063556B (zh) * 2022-08-17 2022-11-15 中国汽车技术研究中心有限公司 一种汽车碰撞假人颅骨模型的构建方法
US20240153096A1 (en) * 2022-11-07 2024-05-09 PassiveLogic, Inc. Door and Window Detection in an AR Environment
KR102659898B1 (ko) * 2022-11-30 2024-04-23 (주)비주얼신 모바일 단말을 이용한 3차원 발 모델 생성 방법 및 시스템

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6229547B1 (en) 1998-10-16 2001-05-08 Silicon Graphics, Inc. System and method for rendering multi-planar reformations using bi-linear interpolation
US6850235B2 (en) 2000-12-27 2005-02-01 Fly Over Technologies Inc. Efficient image parcel texture rendering with T-junction crack elimination
US7272264B2 (en) * 2003-09-11 2007-09-18 International Business Machines Corporation System and method for hole filling in 3D models
US20050140670A1 (en) * 2003-11-20 2005-06-30 Hong Wu Photogrammetric reconstruction of free-form objects with curvilinear structures
WO2005086034A1 (ja) * 2004-03-09 2005-09-15 Fujitsu Limited 数値解析モデルデータ生成プログラム、数値解析モデルデータ生成方法、および数値解析モデルデータ生成装置
US7283140B2 (en) * 2005-06-21 2007-10-16 Microsoft Corporation Texture montage
US7821513B2 (en) * 2006-05-09 2010-10-26 Inus Technology, Inc. System and method for analyzing modeling accuracy while performing reverse engineering with 3D scan data
US20080033641A1 (en) * 2006-07-25 2008-02-07 Medalia Michael J Method of generating a three-dimensional interactive tour of a geographic location
DK2124196T3 (da) * 2008-05-20 2011-10-31 Widex As Anordning og fremgangsmåde til afbildning af en scannet overflade
US8106924B2 (en) * 2008-07-31 2012-01-31 Stmicroelectronics S.R.L. Method and system for video rendering, computer program product therefor
CN101404091B (zh) * 2008-11-07 2011-08-31 重庆邮电大学 基于两步形状建模的三维人脸重建方法和***
WO2012015059A1 (ja) * 2010-07-30 2012-02-02 学校法人 芝浦工業大学 他視点閉曲面画素値補正装置、他視点閉曲面画素値補正方法、利用者位置情報出力装置、利用者位置情報出力方法
CN101976429B (zh) * 2010-10-27 2012-11-14 南京大学 基于游弋图像的水面鸟瞰图成像方法
CN102521869B (zh) 2011-09-30 2013-12-25 北京航空航天大学 一种几何特征引导的三维模型表面纹理空洞填补方法
US9053555B1 (en) * 2012-05-23 2015-06-09 Google Inc. Creating a mesh from a sparse structure-from-motion point cloud using co-visibility of points
US20140168204A1 (en) * 2012-12-13 2014-06-19 Microsoft Corporation Model based video projection
US9135750B2 (en) * 2013-03-05 2015-09-15 Autodesk, Inc. Technique for filling holes in a three-dimensional model
CN104574501B (zh) * 2014-12-19 2017-07-21 浙江大学 一种针对复杂三维场景的高质量纹理映射方法
TWI526992B (zh) * 2015-01-21 2016-03-21 國立清華大學 擴充實境中基於深度攝影機之遮蔽效果優化方法
CN104837000B (zh) * 2015-04-17 2017-03-15 东南大学 一种利用轮廓感知的虚拟视点合成方法
US10304203B2 (en) * 2015-05-14 2019-05-28 Qualcomm Incorporated Three-dimensional model generation
CN104915986B (zh) * 2015-06-26 2018-04-17 北京航空航天大学 一种实体三维模型自动建模方法
ITUA20163232A1 (it) * 2016-05-09 2016-08-09 Uesse Srl Processo e sistema per calcolare il costo di materiali di uso e consumo per la verniciatura di autoveicoli, dall'analisi di deformazioni in autoveicoli
JP6821326B2 (ja) * 2016-05-12 2021-01-27 キヤノン株式会社 情報処理装置、計測システム、情報処理方法およびプログラム
CN106157373A (zh) * 2016-07-27 2016-11-23 中测高科(北京)测绘工程技术有限责任公司 一种建筑物三维模型构建方法及***
JP2018085571A (ja) * 2016-11-21 2018-05-31 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
CN107464286B (zh) * 2017-06-30 2020-12-18 百度在线网络技术(北京)有限公司 三维城市模型中的孔洞修复方法及装置、设备及可读介质
CN107481321B (zh) * 2017-08-16 2021-02-26 城市生活(北京)资讯有限公司 一种三维模型生成方法及三维模型生成***
CN109064542B (zh) * 2018-06-06 2019-11-19 贝壳找房(北京)科技有限公司 三维模型表面空洞填补方法和装置

Also Published As

Publication number Publication date
US20190378332A1 (en) 2019-12-12
WO2019233347A1 (en) 2019-12-12
US10846926B2 (en) 2020-11-24
CN109064542A (zh) 2018-12-21
JP6951594B2 (ja) 2021-10-20
JP2021520583A (ja) 2021-08-19

Similar Documents

Publication Publication Date Title
CN109064542B (zh) 三维模型表面空洞填补方法和装置
US11410320B2 (en) Image processing method, apparatus, and storage medium
CN110910486B (zh) 室内场景光照估计模型、方法、装置、存储介质以及渲染方法
CN108401461A (zh) 三维建图方法、装置、***、云端平台、电子设备和计算机程序产品
US11367259B2 (en) Method for simulating natural perception in virtual and augmented reality scenes
CN110428501B (zh) 全景影像生成方法、装置、电子设备及可读存储介质
US11232628B1 (en) Method for processing image data to provide for soft shadow effects using shadow depth information
CN110706341A (zh) 一种城市信息模型的高性能渲染方法、装置及存储介质
CN108961417A (zh) 在三维房屋模型中自动生成空间尺寸的方法和装置
JP2016537901A (ja) ライトフィールド処理方法
CN108043027B (zh) 存储介质、电子装置、游戏画面的显示方法和装置
CN108876935A (zh) 一种在移动端快速进行房屋三维模型拼接的方法及装置
CN109754463B (zh) 三维建模融合方法及装置
CN108765270A (zh) 一种虚拟三维空间标签绑定方法及装置
CN113256781A (zh) 虚拟场景的渲染和装置、存储介质及电子设备
CN109685879A (zh) 多视影像纹理分布的确定方法、装置、设备和存储介质
CN108898680B (zh) 一种在虚拟三维空间中自动校正截取图片的方法及装置
JP2022518402A (ja) 三次元再構成の方法及び装置
CN108844505A (zh) 测算房屋空间尺寸的方法和装置
CN117456076A (zh) 一种材质贴图生成方法及相关设备
CN117218273A (zh) 图像渲染方法以及装置
CN110191284A (zh) 对房屋进行数据采集的方法、装置、电子设备和存储介质
CN108765561A (zh) 房屋虚拟三维模型生成过程中隐私信息处理方法及装置
CN110379005B (zh) 一种基于虚拟资源管理的三维重建方法
CN113822936A (zh) 数据处理方法、装置、计算机设备及存储介质

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100085 Floor 101 102-1, No. 35 Building, No. 2 Hospital, Xierqi West Road, Haidian District, Beijing

Applicant after: Seashell Housing (Beijing) Technology Co., Ltd.

Address before: 100085 Floor 101 102-1, No. 35 Building, No. 2 Hospital, Xierqi West Road, Haidian District, Beijing

Applicant before: Chain home network (Beijing) Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220401

Address after: 100085 8th floor, building 1, Hongyuan Shouzhu building, Shangdi 6th Street, Haidian District, Beijing

Patentee after: As you can see (Beijing) Technology Co.,Ltd.

Address before: 100085 Floor 101 102-1, No. 35 Building, No. 2 Hospital, Xierqi West Road, Haidian District, Beijing

Patentee before: Seashell Housing (Beijing) Technology Co.,Ltd.