一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

修改三维模型的方法及电子设备与流程

2022-06-01 20:13:36 来源:中国专利 TAG:


1.本公开涉及一种三维模型产生,确切地说,涉及一种修改三维模型的方法及电子设备。


背景技术:

2.在显示器上查看对应于真实场景或真实对象的三维模型对于用户来说是方便的。用户可改变三维模型的任何视角或在所关注区域上放大/缩小。现今,用户可使用深度相关相机或三维扫描器来扫描真实场景或真实对象。此外,基于扫描结果产生对应三维模型也不会花费很长时间。
3.应注意到,三维模型是以数字格式记录的。有时,用户可使用特定应用程序来修改三维模型。
4.然而,如果直接修改三维模型,那么有时可能会产生不恰当模型。举例来说,由于用户删除了位在后方的另一对象,对象的某一部分从三维模型去除。


技术实现要素:

5.三维模型经修改后,虚拟对象的部分可能不正常。相应地,本公开涉及一种的修改三维模型的方法及电子设备,以提供修改结果。
6.在示例性实施例中的一个中,方法包含但不限于以下步骤。通过扫描真实环境获得多个二维图像。在二维图像中识别真实环境的真实对象。基于二维图像产生三维模型。三维模型与真实对象的深度信息有关。接收用于修改三维模型中的一个或多个虚拟对象的修改操作。虚拟对象对应于一个或多个真实对象。基于二维图像中的真实对象的识别结果以及真实对象的深度信息将修改操作映射到二维图像中,以产生修改图像。基于修改图像产生修改的三维模型。
7.在示例性实施例中的一个中,电子设备包含但不限于存储器和处理器。存储器用于存储程序代码。所述处理器耦接存储器且加载程序代码以执行:通过扫描真实环境获得二维图像;在二维图像中识别真实环境的真实对象;基于二维图像产生三维模型;接收用于修改三维模型中的一个或多个虚拟对象的修改操作;基于二维图像中的真实对象的识别结果以及真实对象的深度信息将修改操作映射到二维图像中以产生修改图像;以及基于修改图像产生修改的三维模型。虚拟对象对应于真实对象中的一个或多个。所述三维模型与真实对象的深度信息有关。
8.基于上述,根据本发明实施例的修改三维模型的方法及电子设备,在三维模型上针对虚拟对象的修改操作可映像到二维图像,而二维图像中对应于修改操作的数个真实对象之间的位置关系将用于重新产生三维模型。藉此,仅从修改的三维模型中修改操作对应的虚拟对象,且将其他虚拟对象维持相同。
9.然而,应理解,此概述可能不含有本公开的所有方面和实施例,不意图以任何方式具有限制性或局限性,且如本文中所公开的发明由且将由本领域普通技术人员理解为涵盖
对其所作的明显改进和修改。
附图说明
10.包含附图以提供对本公开的进一步理解,且附图并入本说明书并构成本说明书的一部分。附图示出本公开的实施例,并与描述一起用于解释本公开的原理。
11.图1为示出根据本公开的示例性实施例中的一个的电子设备的方块图;
12.图2为示出根据本公开的示例性实施例中的一个的修改三维模型的方法的流程图;
13.图3a为示出根据本公开的示例性实施例中的一个的三维模型的示意图;
14.图3b到图3c为示出根据本公开的示例性实施例中的一个的虚拟对象的删除操作的示意图;
15.图4为示出根据本公开的示例性实施例中的一个的虚拟对象的添加操作的示意图。
16.附图标号说明
17.100:电子设备;
18.110:存储器;
19.120:显示器;
20.130:图像捕捉装置;
21.150:处理器;
22.ma1、ma2:修改区域;
23.ov1、ov2:一部分;
24.s210、s220、s230、s240、s250、s260:步骤;
25.vc:虚拟椅子;
26.vl:虚拟落地灯;
27.vt:虚拟桌子。
具体实施方式
28.现将详细参考本发明的优选实施例,其实例在附图中示出。只要可能,相同附图标号在附图和描述中用以指代相同或相似部分。
29.图1为示出根据本公开的示例性实施例中的一个的电子设备100的方块图。参考图1,电子设备100包含但不限于存储器110、显示器120、图像捕捉装置130以及处理器150。在一个实施例中,电子设备100可为智能电话、平板计算机、笔记本计算机或服务器。在一些实施例中,电子设备100适于扩展现实(xr)或其它现实相关技术。
30.存储器110可以是任何类型的固定或可移动随机存取存储器(random-access memory,ram)、只读存储器(read-only memory,rom)、闪存、类似装置或上文装置的组合。存储器110记录程序代码、装置配置、缓冲器数据或永久性数据(例如图像、模型、深度信息或虚拟对象材料),且稍后将描述这些数据。
31.显示器120可以是lcd、led显示器或oled显示器。
32.图像捕捉装置130可以是相机(例如单色相机或彩色相机)、深相机、录像机或能够
捕捉图像的其它图像捕捉装置。在一个实施例中,图像捕捉设备130安置于电子设备100的主体处以在外部捕捉。举例来说,当用户穿戴电子设备100时,图像捕捉设备130可位于用户眼睛前方的位置处。在一些实施例中,电子设备100可进一步包含深度传感器、飞行时间相机,或能够获得外部对象的深度或距离信息的其它传感器。
33.处理器150耦接存储器110、显示器120以及图像捕捉装置130。处理器150被配置成加载存储在存储器110中的程序代码,以执行本公开的示例性实施例的程序。
34.在一些实施例中,处理器150可以是中央处理单元(central processing unit,cpu)、微处理器、微控制器、图形处理单元(graphics processing unit,gpu)、数字信号处理(digital signal processing,dsp)芯片、现场可编程门阵列(field-programmable gate array,fpga)。处理器150的功能还可通过独立电子装置或集成电路(integrated circuit,ic)来实施,且处理器150的操作还可通过软件来实施。
35.在一个实施例中,hmd或数字眼镜包含存储器110、显示器120、图像捕捉装置130以及处理器150。在一些实施例中,处理器150可不与显示器120和/或图像捕捉装置130安置在同一设备中。然而,分别配备有显示器120、图像捕捉装置130以及处理器150的设备可还包含具有兼容通信技术(例如蓝牙(bluetooth)、wi-fi以及ir无线通信)的通信收发器或物理传输线以彼此发射或接收数据。举例来说,处理器150可安置在hmd中,而图像捕捉装置130安置在hmd外部。对于另一实例,处理器150可安置在计算装置中,而显示器120安置在计算装置外部。
36.为了更好地理解在本公开的一个或多个实施例中提供的操作过程,在下文将举例说明若干实施例以详细阐述电子设备100。在以下实施例中应用电子设备100中的装置及模块以解释用于修改本文中所提供的三维模型的方法。可根据实际实施情况调整方法的每一步骤,且不应限于本文中所描述的内容。
37.图2为示出根据本公开的示例性实施例中的一个的方法的流程图。参考图2,所述处理器150可通过扫描真实环境获得一个或多个二维图像(步骤s210)。在一个实施例中,假设用户将电子设备100穿戴/佩戴在他/她的身体部分上。用户可移动或旋转电子设备100,使得图像捕捉设备130可朝向对应于电子设备100的位置的方向进行捕捉,以扫描真实环境中的架构空间(例如房间或办公室)或一个或多个真实对象(例如椅子、篮球或玩具)。在本公开的实施例中,图像捕捉设备130在真实环境(例如房间、办公室等)中捕捉到的图像将被称为二维图像,但不限于此。在另一实施例中,通过三维扫描器或深度相关相机(例如,深度相机、立体相机或lidar扫描器)产生二维图像,且电子设备100可从外部设备(例如闪存盘、服务器或扫描器)下载或接收二维图像。
38.所述处理器150可在二维图像中识别真实环境的一个或多个真实对象(步骤s220)。具体而言,所述处理器150可使用对象识别算法(例如基于机器学习的推理或图像特征比较)来确定二维图像中的真实对象的对象类型。举例来说,椅子、桌子、tv或床的数个图像被视为训练样本以基于神经网络构造对象分类器,且对象分类器可识别图像中的对象。
39.处理器150可基于二维图像产生三维模型(步骤s230)。具体地说,三维模型与真实对象的深度信息有关。深度信息可包含相对距离及相对方向。相对距离是从真实对象到捕捉二维图像的图像捕捉装置130或另一扫描器的捕捉位置的距离。相对方向是真实对象相对于图像捕捉装置130或扫描器的取向。
40.在一个实施例中,处理器150可以点云(point cloud)、3d网格(3d mesh)或类似的模型格式来产生三维模型。这意味着三维模型是由点云和3维网格的模型格式形成。以点云图作为实例,处理器150从二维图像以及真实对象的深度信息获得特征(例如颜色、线条、图案等)。二维图像中的像素/块的特征将根据对应的深度和位置而映射到空白虚拟环境中的特定3d空间坐标中。在所有这些像素/块都映射之后,将产生三维模型。
41.在另一实施例中,处理器150可以不同于点云的模型格式的另一模型格式获得优化后的三维模型。优化后的三维模型的模型格式可为stl、fbx、collada、3ds、obj或其它格式。
42.三维模型包含对应于真实环境中的一个或多个真实对象的一个或多个虚拟对象。举例来说,图3a为示出根据本公开的示例性实施例中的一个的三维模型的示意图。参考图3a,三维模型包含虚拟椅子vc以及虚拟桌子vt。
43.处理器150可接收用于修改三维模型中的一个或多个虚拟对象的修改操作(步骤s240)。具体地说,修改操作可与从三维模型删除虚拟对象或将虚拟对象添加到三维模型中有关。在一个实施例中,关于删除相关的修改操作,虚拟对象对应于由图像捕捉装置130或另一扫描器捕捉到的一个或多个真实对象。在另一实施例中,关于添加相关的修改操作,虚拟对象对应于二维图像中不存在的一个或多个真实对象。
44.在一个实施例中,处理器150可以在显示器上显示三维模型,使得用户可以选择待修改的虚拟对象。举例来说,用户可使用输入装置(例如鼠标、键盘或触控面板)来圈出三维模型中的虚拟对象。对于另一实例,用户可所述鼠标来点击虚拟对象的位置。
45.在另一实施例中,处理器150可以在显示器120上显示对象菜单,且所述对象菜单包含多种对象类型。用户可以从对象菜单选择一种或多种对象类型。
46.处理器150可基于二维图像中的真实对象的识别结果以及真实对象的深度信息将修改操作映射到二维图像中,以产生修改图像(步骤s250)。具体地说,关于修改操作,处理器150可基于修改区域及对应图像平面建立二维图像层关系。应注意到,多个虚拟对象的深度在特定视角可不同。有时,一个虚拟对象的修改操作可能会影响其它虚拟对象在三维模型的特定视角的完整性。二维图像层关系可有助于保持其它虚拟对象的完整性。
47.在一个实施例中,处理器150可将修改操作的修改区域映射到二维图像的图像层中。图像层对应于对三维模型的修改操作的视角。假设在特定视角施加修改操作。以图3a作为实例,用户将三维模型转到如图中所示的视角,使得用户可选择虚拟桌子vt以用于修改操作。修改区域对应于待修改虚拟对象的轮廓。这意味着一个或多个虚拟对象可在修改区域中被添加或删除。因此,应针对所添加的虚拟对象或删除的虚拟对象修改对应于修改区域的深度信息。
48.举例来说,图3b为示出根据本公开的示例性实施例中的一个的虚拟对象的删除操作的示意图。参考图3b,针对虚拟桌子vt选择删除操作,且通过修改区域ma1圈出虚拟桌子vt。
49.对于另一实例,图4为示出根据本公开的示例性实施例中的一个的虚拟对象的添加操作的示意图。参考图4,针对虚拟落地灯vl选择添加操作,且通过修改区域ma2圈出虚拟落地灯vl。
50.修改区域将被映射到一个图像层中。图像层记录由图像捕捉装置130或另一扫描
器捕捉的真实对象的深度信息。因此,处理器150可确定对应于修改区域的深度。
51.处理器150可基于真实对象的识别结果选择位于图像层的修改区域内的真实对象。基于真实对象的识别结果,处理器150可知晓三维模型上的修改区域是否还包含将不被修改的其它真实对象。在无识别结果的情况下,可以考虑仅有一个虚拟对象位于修改区域内且导致虚拟对象的不完整性。因此,应选择位于图像层中的修改区域内的所有真实对象,以进一步确认所选真实对象之间的覆盖情形。
52.举例来说,在图3b中,虚拟椅子vc的一部分ov1位于修改区域ma1内。此外,在图4中,虚拟椅子vc的一部分ov2位于修改区域ma2内。
53.处理器150可基于所选真实对象的深度信息产生修改图像。在修改图像中,全部真实对象,其并不对应于通过修改操作选择的虚拟对象,将保留在同一位置处。
54.在一个实施例中,修改操作为从三维模型删除虚拟对象,即删除操作。修改操作的虚拟对象对应于位于修改区域内的所选真实对象中的一个或多个第一真实对象。处理器150可基于所选真实对象的深度信息确定所选真实对象中的一个或多个第二真实对象是否位于图像层的修改区域内。第二真实对象对应于未由修改操作选中的一个或多个虚拟对象。以图3b作为实例,虚拟桌子vt属于第一真实对象,其为真实环境中的真实桌子。虚拟椅子vc属于第二真实对象,其为真实环境中的真实椅子。基于识别结果,处理器150可区分两个对象。此外,基于深度信息,处理器150可知晓真实椅子在如图中所示的视角覆盖真实桌子。
55.处理器150可基于第二真实对象的所确定结果从图像层删除修改区域。在一个实施例中,所确定结果在于确定第二真实对象位于修改区域内。以图3b作为实例,对应于虚拟椅子vc的真实椅子位于修改区域ma1内。然而,在一些情形中,用户仅试图从三维模型删除虚拟桌子vt。
56.处理器150可进一步将整个第二真实对象保留在修改图像中。这意味着从图像层去除修改区域的一部分,但保留由第二真实对象占据的其它部分。此外,将归因于删除操作而遗弃第一真实对象的深度信息。然而,将保留位于修改区域内的第二真实对象的部分的深度信息以用于对应于第二真实对象的虚拟对象的完整性。
57.在一些实施例中,在从图像层删除修改区域之后,处理器150可基于邻近对象的深度信息填补对应于修改区域的删除区域。邻近对象位于与对应于删除操作的虚拟对象相同的深度处。举例来说,选择位于地面上的桌子以用于删除操作,且对应于被删除的桌子的删除区域的深度将与地面相同。
58.在另一实施例中,所确定结果在于确定第二真实对象并不位于修改区域内。这意味着第一真实对象在修改操作的视角并未由任何第二真实对象覆盖。处理器150可进一步从图像层删除整个修改区域。因此,将仅遗弃第一真实对象的深度信息。
59.在一个实施例中,修改操作为将一个或多个虚拟对象添加到三维模型中。类似地,处理器150可基于所选真实对象的深度信息确定所选真实对象中的第三真实对象是否位于图像层的修改区域内。第三真实对象对应于未由修改操作选中的一个或多个虚拟对象。以图4作为实例,虚拟椅子vc属于第三真实对象,其为真实环境中的真实椅子。
60.处理器150可基于第二真实对象的所确定结果产生对应于添加操作的虚拟对象的深度信息。在一个实施例中,所确定结果在于确定第三真实对象位于修改区域内。以图4作
为实例,对应于虚拟椅子vc的真实椅子位于修改区域ma2内。然而,用户试图将虚拟落地灯vl添加于虚拟椅子vc后方。
61.处理器150可进一步将整个第二真实对象保留在修改图像中。这意味着修改区域的一部分将添加于图像层中,但由第三真实对象占据的其它部分得以保留。新添加的虚拟对象的深度信息将归因于添加操作而产生。然而,将保留位于修改区域内的第三真实对象的部分的深度信息以用于对应于第三真实对象的虚拟对象的完整性。
62.在另一实施例中,所确定结果在于确定第三真实对象并不位于修改区域内。这意味着新添加的虚拟对象在修改操作的视角将未被任何虚拟对象覆盖。因此,将产生整个新添加的虚拟对象的深度信息。
63.处理器150可基于修改图像产生修改的三维模型(步骤s260)。具体地说,在修改图像中,考虑位于修改区域内的对象之间的覆盖情形。未由修改操作选中但位于修改区域内的其它对象的深度信息保持相同。此外,基于修改操作的类型将仅去除或添加由修改操作选择的虚拟对象的深度信息。处理器150可使用修改的深度信息及二维图像来重新产生三维模型,并且将获得修改的三维模型。
64.举例来说,参考图3b及图3c,与图3b相比较,在图3c中,仅从三维模型删除虚拟桌子vt。整个虚拟椅子vc保留在三维模型中。
65.对于另一实例,参考图4,整个虚拟椅子vc保留在三维模型中。虚拟椅子vc在如图中所示的视角进一步覆盖虚拟落地灯vl。
66.综上所述,在本发明实施例的修改三维模型的方法及电子设备中,通过映射修改操作到二维图像可基于识别结果及深度信息决定在二维图像中数个对象之间的覆盖情况。可基于映射结果产生对应于修改操作的修改的三维模型。藉此,虚拟对象的完整性经修改后仍可维持。
67.所属领域的技术人员将显而易见的是,在不脱离本公开的范围或精神的情况下,可以对本公开的结构进行各种修改和变化。鉴于前述,希望本公开涵盖本公开的修改和变化,前提是所述修改和变化落入所附权利要求和其等效物的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献