首页> 中国专利> 一种半身像的三维重建方法及装置

一种半身像的三维重建方法及装置

摘要

本申请提供一种半身像的三维重建方法及装置,用于解决复杂度高,重建时间长的问题。方法包括:获取包括目标人物半身像的正面人脸的图像,然后采用正面人脸的头部语义掩膜来进行纹理展开,使得展开后的纹理中的至少两个器官位于预设位置处,然后根据包括正面的展开后的纹理图来补全背面的纹理。还可以根据正面人脸构建三维网格模型,采用预配置的耳朵模型来替换三维网格模型中的耳朵,然后从替换后的三维网格模型获取耳朵区域的纹理,并融合到补全背面的纹理上,进而获取三维网格模型。无需专业的建模设备,复杂度较低。由于人体正面和背部纹理存在一定的相关性,因此根据正面纹理来补充背部纹理,使得构建的三维模型更贴合人物,达到较优效果。

著录项

  • 公开/公告号CN113327277A

    专利类型发明专利

  • 公开/公告日2021-08-31

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN202010132592.8

  • 发明设计人 陈国文;胡守刚;赵磊;吕培;

    申请日2020-02-29

  • 分类号G06T7/50(20170101);G06T15/04(20110101);G06T17/20(20060101);G06T5/00(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构11291 北京同达信恒知识产权代理有限公司;

  • 代理人张翠华

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-06-19 12:24:27

说明书

技术领域

本申请实施例涉及图像处理技术领域,尤其涉及一种半身像的三维重建方法及装置。

背景技术

目前三维半身像重建技术在三维打印、娱乐和远程增强现实(augmentedreality,AR)通 话等领域有着广泛的应用。传统的三维半身像重建技术可以采用单目系统或者多目系统。 使用单目系统时,通常采用红外深度摄像头对人物进行绕圈扫描,需要被扫描人物在扫描 过程中全程保持静止。从而该方式对人物扫描的时间长,重建计算时间长,并且可能出现 扫描效果不理想或者失败的现象。多目扫描系统是基于多视角的采集系统,虽然具备实时 重建的能力,但是价格昂贵,设备较大,复杂度较高,操作起来不太方便。

发明内容

本申请实施例提供一种半身像的三维重建方法及装置,用以解决重建时间长,复杂度 高的问题。

本申请实施例提供的具体技术方案如下:

第一方面,本申请提供一种半身像的三维重建方法,该半身像的三维重建方法可以由 电子设备来实现,比如由电子设备中的一个或者处理单元来实现。方法可以包括:获取包 括目标人物的半身像的待处理图像,半身像中包括正面人脸,然后根据获取的待处理图像 得到第一纹理展开图,第一纹理展开图用于表征半身像的正面纹理,并且第一纹理展开图 中半身像的五官中的至少两个器官(比如鼻子和耳朵)位于预设位置处;之后,根据第一 纹理展开图中半身像的正面纹理对第一纹理展开图中半身像的背面纹理进行补充得到第二 纹理展开图,所述第二纹理展开图用于表征所述半身像的表面纹理;最后,根据第二纹理 展开图得到半身像的三维模型。本申请提供的重建方法,无需专业的建模设备,复杂度较 低。由于人体正面和背部纹理存在一定的相关性,因此根据正面纹理来补充背部纹理,使 得构建的三维模型更贴合人物,达到较优效果。

所述第二纹理展开图用于表征所述半身像的表面纹理,也就是第二纹理展开图描述半 身像的人物表面的全方位的纹理。表面纹理包括半身像的正面纹理,还包括半身像的背面 纹理。比如,半身像的正面包括人脸,前面颈部或者前面肩部等。半身像的背面可以包括 后脑、背面颈部或者背面肩部等。

在一种可能的设计中,根据待处理图像得到第一纹理展开图,可以通过如下方式来实 现:

去除所述待处理图像中的背景得到所述半身像的正面图像;

对所述正面图像进行语义分割得到所述正面图像的头部语义掩膜;

根据所述头部语义掩膜以及所述正面图像获得所述半身像的三维网格模型;

根据头部语义掩膜中头部上至少两个器官所在位置以及所述三维网格模型获得第一纹 理展开图,所述第一纹理展开图中所述至少两个器官位于预设位置处。

通过上述设计,根据头部语义掩膜来获得纹理展开图,即根据语义像素坐标展开纹理 可以提高展开精度。

在一种可能的设计中,所述根据头部语义掩膜中头部上至少两个器官所在位置以及所 述三维网格模型获得第一纹理展开图,可以通过如下方式来实现:

基于中心轴对所述三维网格模型对应的纹理执行纹理展开得到第三纹理展开图,所述 中心轴为所述三维网格模型中的头部顶端至头部底端的连接线;

根据所述头部语义掩膜中头部上至少两个器官所在位置确定所述三维网格模型中所述 至少两个器官的所在位置;

根据所述三维网格模型中所述至少两个器官的所在位置对第三纹理展开图进行调整得 到所述第一纹理展开图。

上述设计中,在得到半身三维网格模型后,结合半身像的正面纹理,可以对半身像的 纹理进行圆周展开得到第一纹理展开图。圆周展开是非Atlas(地图集)的纹理展开。非地 图集展开有利于提高纹理连续性,减少纹理之间的缝隙。另外,还可以避免分块修复(inpainting),同时实现语义区块在纹理图上的位置相对固定,便于机器学习。

在一种可能的设计中,基于所述第二纹理展开图得到所述半身像的三维模型,包括:

对所述第二纹理展开图中纹理缝合线区域进行平滑处理得到第四纹理展开图,基于所 述第四纹理展开图得到所述半身像的三维模型,所述纹理缝合线区域根据对所述三维网格 模型进行纹理展开时所采用的展开线确定。

上述设计,将缝合线区域进行平滑处理,可以抹平缝合线区域的缝隙,优化建模细节。

在一种可能的设计中,所述至少两个器官中包括耳朵;所述方法还包括:

将预配置的耳朵模型融合到所述三维网格模型中的耳朵区域得到融合后的三维网格模 型;

基于处理后的第二纹理展开图得到所述半身像的三维模型,包括:

将融合后的三维网络模型上所述耳朵区域的纹理融合到位于所述第四纹理展开图预设 位置处的耳朵区域得到融合后的第四纹理展开图,根据融合后的第四纹理展开图得到所述 半身像的三维模型。

上述设计,通过耳朵部分的网格优化和纹理替换,实现高精度的局部纹理和几何,优 化纹理补全以及网格重建细节。

在一种可能的设计中,对所述第二纹理展开图中纹理缝合线区域进行平滑处理,可以 通过如下方式来实现:

根据所述半身像的正面图像确定所述半身像的背面纹理图像;

将所述第二纹理展开图以及所述半身像的背面纹理图像进行加权融合处理得到所述第 四纹理展开图。

上述设计中,由于人体正面和背部纹理存在一定的相关性,因此根据正面图像来估计 背部纹理,估计的背部纹理是不含缝隙的,然后与基于第二纹理展开图得到的背部纹理进 行加权处理,优化背部缝隙抹平效果。

在一种可能的设计中,将所述第二纹理展开图以及所述半身像的背面纹理图像进行加 权融合处理得到所述第四纹理展开图,可以通过如下方式来实现:

将所述第二纹理展开图以及所述半身像的背面图像按照设定规则进行加权融合处理得 到所述第四纹理展开图;

所述设定规则为:

I

α=I

其中,I

在一种可能的设计中,根据头部语义掩膜中头部上至少两个器官所在位置以及所述三 维网格模型获得第一纹理展开图之前,所述方法还包括:

对所述三维网格模型执行如下至少一项处理:

补洞处理、网格均一化处理或者网格平滑处理。

上述设计中,对三维网格模型进行补洞处理后,使得三维网格模型更加完整,提高三 维模型重建的准确度。执行网格均一化处理,可以防止获得的三维网格模型中网格过于密 集或者过于稀疏,而影响三维模型重建的准确度。执行网格平滑处理,能够去除三维网格 模型中的不准确的网格,即噪点,进而提高三维模型重建的准确度和光顺性。

第二方面,本申请提供一种半身像的三维重建装置,包括:

获取单元,用于获取待处理图像,所述待处理图像中包括目标人物的半身像,所述半 身像包括正面人脸;

重建单元,用于根据待处理图像得到第一纹理展开图,所述第一纹理展开图用于表征 所述半身像的正面纹理,所述第一纹理展开图中所述半身像的五官中的至少两个器官位于 预设位置处;根据所述第一纹理展开图中所述半身像的正面纹理对所述第一纹理展开图中 所述半身像的背面纹理进行补充得到第二纹理展开图,所述第二纹理展开图用于表征所述 半身像的表面纹理;并根据所述第二纹理展开图得到所述半身像的三维模型。

在一种可能的设计中,所述重建单元在根据待处理图像得到第一纹理展开图时,具体 用于:

去除所述待处理图像中的背景得到所述半身像的正面图像;

对所述正面图像进行语义分割得到所述正面图像的头部语义掩膜;

根据所述头部语义掩膜以及所述正面图像获得所述半身像的三维网格模型;

根据头部语义掩膜中头部上至少两个器官所在位置以及所述三维网格模型获得第一纹 理展开图,所述第一纹理展开图中所述至少两个器官位于预设位置处。

在一种可能的设计中,所述重建单元,在根据头部语义掩膜中头部上至少两个器官所 在位置以及所述三维网格模型获得第一纹理展开图时,具体用于:

基于中心轴对所述三维网格模型对应的纹理执行纹理展开得到第三纹理展开图,所述 中心轴为所述三维网格模型中的头部顶端至头部底端的连接线;

根据所述头部语义掩膜中头部上至少两个器官所在位置确定所述三维网格模型中所述 至少两个器官的所在位置;

根据所述三维网格模型中所述至少两个器官的所在位置对第三纹理展开图进行调整得 到所述第一纹理展开图。

在一种可能的设计中,所述重建单元,在基于所述第二纹理展开图得到所述半身像的 三维模型时,具体用于:

对所述第二纹理展开图中纹理缝合线区域进行平滑处理得到第四纹理展开图,基于所 述第四纹理展开图得到所述半身像的三维模型,所述纹理缝合线区域根据对所述三维网格 模型进行纹理展开时所采用的展开线确定。

在一种可能的设计中,所述至少两个器官中包括耳朵;所述重建单元,还用于将预配 置的耳朵模型融合到所述三维网格模型中的耳朵区域得到融合后的三维网格模型;

所述重建单元,在基于处理后的第二纹理展开图得到所述半身像的三维模型时,具体 用于:

将融合后的三维网络模型上所述耳朵区域的纹理融合到位于所述第四纹理展开图预设 位置处的耳朵区域得到融合后的第四纹理展开图,根据融合后的第四纹理展开图得到所述 半身像的三维模型。

在一种可能的设计中,所述重建单元,在对所述第二纹理展开图中纹理缝合线区域进 行平滑处理时,具体用于:

根据所述半身像的正面图像确定所述半身像的背面纹理图像;

将所述第二纹理展开图以及所述半身像的背面纹理图像进行加权融合处理得到所述第 四纹理展开图。

在一种可能的设计中,所述重建单元,在将所述第二纹理展开图以及所述半身像的背 面纹理图像进行加权融合处理得到所述第四纹理展开图时,具体用于:

将所述第二纹理展开图以及所述半身像的背面图像按照设定规则进行加权融合处理得 到所述第四纹理展开图;

所述设定规则为:

I

α=I

其中,I

在一种可能的设计中,所述重建单元,在根据头部语义掩膜中头部上至少两个器官所 在位置以及所述三维网格模型获得第一纹理展开图之前,还用于:对所述三维网格模型执 行如下至少一项处理:补洞处理、网格均一化处理或者网格平滑处理。

第三方面,本申请实施例提供了一种电子设备,包括处理器、存储器;其中处理器与 存储器相耦合;其中,存储器用于存储程序指令;处理器用于读取存储器中存储的程序指 令,以实现第一方面及其任一可能的设计的方法。可选地,该处理器包括ISP,用于执行获 取待处理图像的过程。

在一种可能的设计中,所述电子设备还包括摄像头;所述摄像头用于采集待处理图像。 上述处理器用于控制所述摄像头采集图像。

第四方面,本申请实施例提供的一种计算机存储介质,该计算机存储介质存储有程序 指令,当程序指令在电子设备上运行时,使得电子设备或处理器执行第一方面及其任一可 能的设计的方法。

第五方面,本申请实施例提供的一种计算机程序产品,当计算机程序产品在电子设备 上运行时,使得电子设备或处理器执行第一方面及其任一可能的设计的方法。

第六方面,本申请实施例提供的一种芯片,所述芯片与电子设备中的存储器耦合,执 行第一方面及其任一可能的设计的方法。可选地,该芯片包括ISP,用于执行获取待处理图 像的过程。

另外,第二方面至第六方面所带来的技术效果可参见上述第一方面的描述,此处不再 赘述。

需要说明的是,本申请实施例中“耦合”是指两个部件彼此直接或间接地结合。

附图说明

图1为本申请实施例中的电子设备示意图;

图2为本申请实施例中半身像的三维重建方法流程示意图;

图3为本申请实施例中半身像示意图;

图4为本申请实施例中纹理展开的方法流程示意图;

图5为本申请实施例中半身像的三维重建示意图;

图6为本申请实施例中中心轴示意图;

图7为本申请实施例中圆周展开说明示意图;

图8为本申请实施例中鼻子和耳朵位置确定示意图;

图9为本申请实施例中缝隙抹平示意图;

图10为本申请实施例中缝隙抹平采用的平滑方式示意图;

图11为本申请实施例中耳朵缝合示意图;

图12为本申请实施例中经过重建的三维模型示意图;

图13为本申请实施例中三维虚拟视频通话场景示意图;

图14为本申请实施例中装置1400示意图。

具体实施方式

本申请涉及的半身像的三维重建方案可以应用在三维打印、AR通话、虚拟现实(virtual reality,VR)模型等应用场景中。本申请提供的半身像的三维重建方法可以应用于电子设备。 电子设备可以是个人计算机、服务器计算机、客户机、手持或膝上设备、基于微处理器的 系统设备、嵌入式系统设备、机顶盒、可编程消费电子产品、网络个人电脑、以及小型计 算机、大型计算机统和包括上述任何系统的分布式云计算技术环境服务器、以及个人数字 助理和/或图像处理等功能的便携式终端设备,诸如手机、平板电脑、具备无线通讯功能的 可穿戴设备(如智能手表)、车载设备,等等。

参见图1所示,本申请实施例中涉及的电子设备中可以包括处理器110以及存储器120。 处理器110可以包括一个或多个处理单元。例如:处理器110可以包括中央处理单元(central processing unit,CPU)、图像处理单元(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、数字信号处理器(digital signalprocessor,DSP)、或神经处理器(neural processing unit,NPU)中一个或者多个。其中,不同的处理单元可以是独立的器件,也可以 集成在一个或多个芯片或电路板中。其中,数字信号处理器用于处理数字信号,除了可以 处理数字图像信号,还可以处理其他数字信号。神经处理器包括但不限于神经网络处理单 元,如深度神经网络处理单元或卷积神经网络处理单元。神经处理器可以利用神经网络模 型执行训练、运算或处理。该神经网络模型包括但不限于深度神经网络模型或卷积神经网 络模型。以上数字信号处理器、图像处理单元或中央处理单元同样可以利用所述神经网络 模型执行训练、运算或处理。

在一些实施例中,处理器110中还可以设置存储器,用于临时存储指令和数据。示例 的,处理器110中的存储器可以为高速缓冲存储器(cache)。该存储器可以保存处理器110 刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述 存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。

在另一些实施例中,处理器110还可以包括一个或多个接口。例如,接口可以为通用 串行总线(universal serial bus,USB)接口。又例如,接口还可以为集成电路(inter-integrated circuit,I2C)接口、集成电路内置音频(inter-integrated circuit sound,I2S)接口、脉冲编码调 制(pulse code modulation,PCM)接口、通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口、移动产业处理器接口(mobile industry processor interface, MIPI)、通用输入输出(general-purposeinput/output,GPIO)接口等。可以理解的是,本申请 实施例可以通过接口连接电子设备的包括处理器在内的不同模块,从而使得电子设备能够 实现不同的功能。需要说明的是,本申请实施例对电子设备100中接口的连接方式不作限 定。

在一个示例中,处理器110中包括的NPU为神经网络(neural-network,NN)计算处理器, 通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理, 还可以不断的自学习。通过NPU可以实现电子设备100的半身像的三维重建。

在另一个示例中,处理器110中包括NPU和其它处理器,通过NPU和其它处理器可以实现电子设备100的半身像的三维重建。其它处理器例如可以是CPU、图像处理器(GPU),图像信号处理器(image signal processor,ISP)、数字信号处理器(digital signalprocessor,DSP) 中的一个或者多个。

存储器120可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处 理器110通过运行存储在存储器120的指令,从而执行电子设备的各种功能应用以及数据 处理。存储器120可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统、 驱动软件或至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等。存储数 据区可存储电子设备100使用过程中所创建的数据(比如音频数据、电话本等)等。存储器120 可以包括掉电易失性存储器或非掉电易失性存储器中的至少一个,例如只读存储器(read only memory,ROM)、随机访问存储器(random access memory,RAM)、动态随机访问 存储器(dynamic random access memory,DRAM)、嵌入式多媒体存储卡(embeddedmulti media card,eMMC)、通用闪存存储(universal flash storage,UFS)、硬盘或磁盘等。

在一种可能的实现方式中,电子设备中还可以包括图像采集器130,用于采集图像。图 像采集器130可以包括摄像头,也可进一步包括之前提到的ISP。ISP用于处理摄像头收集 的图像数据。例如,拍照时,打开快门,光线通过摄像头中的镜头被传递到摄像头中的感 光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP,ISP将相关数 据处理并转化为肉眼可见的图像。ISP还可以对图像的噪点、亮度、色度进行算法优化。ISP 还可以针对拍摄场景控制图像的曝光、或色温等参数优化。在一些实施例中,ISP可以设置 在摄像头中。更为常见地,ISP可作为处理器的一部分而存在,与其他各类处理单元,例如 CPU、GPU或DSP等集成在一个或多个芯片上。

摄像头用于捕获静态图像或动态的视频。物体通过镜头生成光学图像投射到感光元件。 感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体 (complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成 电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到处理器 110中,由其他的处理单元做加工处理。在一些实施例中,电子设备可以包括1个或多个摄 像头。

在一种可能的实现方式中,电子设备中还可以包括显示屏140,显示屏140用于显示图 像、或视频等。在一些实施例中,电子设备可以包括1个或多个显示屏。该显示屏包括但不 限于触摸屏。在本申请实施例中,显示屏可用来显示人重建后半身像的三维模型。

本申请涉及的术语“至少一个”,是指一个,或一个以上,即包括一个、两个、三个及以上;“至少两个”,是指两个、或者两个以外,即包括两个、三个及以上。“多个”,是指 两个,或两个以上,即包括两个、三个及以上。另外,需要理解的是,在本申请的描述中, “第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也 不能理解为指示或暗示顺序。“和/或”,描述关联对象的关联关系,表示可以存在三种关系, 例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B 可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)” 或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。 例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c, 其中a,b,c可以是单个,也可以是多个。

参见图2所示,为本申请实施例提供一种半身像的三维重建方法流程示意图。该半身 像的三维重建方法可以由图2所示的电子设备来实现,比如由电子设备中的一个或者处理 单元来实现。如图2所示,半身像的三维重建方法主要包括S201-S204。

S201,获取待处理图像,待处理图像包括目标人物的半身像,所述半身像包括正面人 脸。

S201的获取动作可以理解为接收操作或处理操作。例如,NPU可以在S201中接收其他设备,例如ISP发送的所述待处理图像。又例如,S201可以由ISP来执行,通过对摄像 头收集的图像信号或数据进行处理以生成图像。该处理包括但不限于各类色彩校准、像素 校准、白平衡或缩放等处理。本申请实施例中,待处理图像中可以包括半身像的正面人脸。

示例性的,半身像中可以包括正面人脸、颈部、肩部等,比如,参见图3所示。

S202,根据待处理图像得到第一纹理展开图,第一纹理展开图用于表征半身像的正面 纹理。

示例性地,第一纹理展开图中半身像的五官中的至少两个器官位于预设位置处。五官 包括眉毛、眼睛、耳朵、鼻子、嘴。至少两个器官,比如耳朵和鼻子、或者眼睛和鼻子。至少两个器官位于预设位置处,可以是针对不同待处理图像得到的纹理展开图中,所述至少两个器官的位置相同。比如,两个器官中包括鼻子和耳朵,耳朵在不同的待处理图像的纹理展开图中的位置相同,鼻子在不同的待处理器图像的纹理展开图中的位置相同。或者至少两个器官位于预设位置处可以是针对不同待处理图像得到的纹理展开图中,所述至少两个器官的相对位置固定。以两个耳朵和鼻子为例,不同的待处理图像的纹理展开图中,两个耳朵的距离,以及鼻子与耳朵的距离可以是相同的。

S203,根据第一纹理展开图中半身像的正面纹理对第一纹理展开图中半身像的背面纹 理进行补充得到第二纹理展开图。所述第二纹理展开图用于表征所述半身像的表面纹理。

所述第二纹理展开图用于表征所述半身像的表面纹理,也就是第二纹理展开图描述半 身像的人物表面的全方位的纹理。表面纹理可以为三维的目标人物的上半身表面的纹理。 也就是表面纹理包括按照垂直地平面的方向为轴,环绕上半身表面一周的纹理。

表面纹理包括半身像的正面纹理,还包括半身像的背面纹理。比如,半身像的正面包 括人脸,前面颈部或者前面肩部等。半身像的背面可以包括后脑、背面颈部或者背面肩部 等。

S204,根据第二纹理展开图得到半身像的三维模型。

在一种可能的实施方式中,参见图4所示,S202根据待处理图像得到第一纹理展开图可 以通过如下S401-S404来实现。

S401,去除待处理图像中的背景得到半身像的正面图像。

示例性地,可以采用第一神经网络模型来去除处理图像中的背景得到半身像的正面图 像。第一神经网络模型用于分割图像的前景和背景,输出前景图像。在本申请实施中,前 景图像即为半身像的正面图像。

S402,对正面图像进行语义分割得到正面图像的头部语义掩膜。

语义分割是将像素按照图像中表达语义含义的不同进行分组(Grouping)/分割(Segmentation)。

示例性地,对正面图像进行语义分割可以采用全卷积网络(Fully convolutionnetworks, FCN),如U-net网络、SegNet网络、DeepLab、RefineNet或者PSPNet等方式。

S403,根据头部语义掩膜以及正面图像获得半身像的三维网格模型。

示例性地,头部语义掩膜和正面图像可以输入第二神经网络模型,第二神经网络模型 用于人体重建。第二神经网络模型输出三维(3D)的截断有符号距离函数(truncatedsigned distance function,TSDF)体。然后提取TSDF体的表面mesh(网格)得到半身像的三维网 格模型。

例如,提取TSDF体表面mesh时,可以采用匹配立方体(marching cube)算法或其他三维等值面提取算法等。

S404,根据三维网格模型获得第一纹理展开图。

在一种可能的实施方式中,在根据所述三维网格模型获得第一纹理展开图之前,可以 对三维网格模型执行如下至少一项处理:补洞处理、网格均一化处理或者网格平滑处理。

示例性的,对三维网格模型进行补洞处理时,可以采用基于径向基函数(radialbasis function,RBF)的三角网格补洞方法,或者基于泊松方程的补洞算法。在对三维网格模型 进行网格均一化处理时,可以采用点聚类方法和边折叠以及顶点增删法等网格均一化算法。 在对三维网格模型进行网格平滑处理时,可以采用基于泊松方程或离散拉普拉斯方程等网 格平滑方法。

对三维网格模型进行补洞处理后,使得三维网格模型更加完整,提高三维模型重建的 准确度。执行网格均一化处理,可以防止获得的三维网格模型中网格过于密集或者过于稀 疏,而影响三维模型重建的准确度。执行网格平滑处理,能够去除三维网格模型中的不准 确的网格,即噪点,进而提高三维模型重建的准确度和光顺性。

示例性地,根据头部语义确定半身像中包括耳朵时,在获得三维网格模型的第一纹理 展开图时,可以根据头部语义掩膜中头部上至少两个器官所在位置获得三维网格模型的第 一纹理展开图,使得第一纹理展开图中至少两个器官位于预设位置处。

示例性地,在得到半身三维网格模型后,结合半身像的正面纹理,可以对半身像的纹 理进行圆周展开得到第一纹理展开图。圆周展开是非Atlas(地图集)的纹理展开。非地图 集展开有利于提高纹理连续性,减少纹理之间的缝隙。另外,还可以避免分块修复(inpainting),同时实现语义区块在纹理图上的位置相对固定,便于机器学习。

作为一种示例,以图3所示的半身像为例,经过A1处理后得到图5中(a)所示的半身像 正面图像。半身像正面图像进行语义分割得到头部语义掩膜,即经过A2处理后得到的头部 语义掩膜如图5中(b)所示。头部语义掩膜和正面图像可以输入第二神经网络模型输出的 TSDF体如图5中(c)所示,提取TSDF体的表面mesh(网格)得到半身像的三维网格模型如图5中(d)所示。然后,经过圆周展开后得到第一纹理展开图如图5中(e)所示。进一步, 经过S203处理后,得到如图5中(f)所示的第二纹理展开图,即经过纹理补全后的纹理图。 最后,进过纹理补全后的纹理图和三维网格模型的表面mesh组合起来得到最终的带纹理的 半身像的三维模型,如图5中(g)所示。

在一种可能的实施方式中,S404根据头部语义掩膜中头部上至少两个器官所在位置获 得三维网格模型的第一纹理展开图,可以通过如下方式实现:

A1,基于中心轴对三维网格模型对应的纹理执行纹理展开得到第三纹理展开图,中心 轴为三维网格模型中的头部顶端至头部底端的连接线。例如,头部顶端,可以是头顶最高 点。头部底端,可以是三维网络模型的最低面的几何中心。参见图6所示,为三维网格模 型的中心轴示意图。

示例性地,可以基于中心轴按照Mesh上某处相对于中心轴的空间角度或曲面周长来获 得第三纹理展开图。比如,按照角度的圆周展开可以满足第一规则。第一规则可以为:

其中(x,y,z)是一个三维网格模型中一个点的空间坐标,[u,v]表示 空间坐标为(x,y,z)的点在纹理展开图中的像素坐标,像素坐标以图像左下角为原点。

其中W是纹理展开图的宽度,H为纹理展开图的高度,cx与cz代表等Y值切面上的轴心坐标。

应理解的是,第三纹理展开图描述的是三维网格模型的网格纹理,或者说是不带有像 素点的像素值的网格纹理展开图。

A2,根据头部语义掩膜中头部上至少两个器官所在位置确定三维网格模型中至少两个 器官的所在位置。

头部语义掩膜中包括至少两个器官的所在位置,即根据头部语义掩膜可以确定至少两 个器官的坐标。以两个器官为耳朵和鼻子为例。另外,应理解的是,三维网格模型是根据 头部语义掩膜来获得的,因此,头部语义掩膜中的耳朵和鼻子与三维网格模型中的耳朵和 鼻子一一存在映射关系,因此可以根据头部语义掩膜中的耳朵和鼻子的位置来确定耳朵和 鼻子分别在三维网格模型中位置。

A3,根据三维网格模型中至少两个器官的所在位置对第三纹理展开图进行调整得到第 一纹理展开图。

例如,参见图8所示。图8中(a)所示为头部语义掩膜中的耳朵和鼻子位置。图8中(b)所示为三维网格模型中的耳朵和鼻子位置。

一种方式是,根据三维网格模型中耳朵和鼻子位置可以调整第三纹理展开图中耳朵和/ 或鼻子位置,即根据三维网络模型中耳朵和鼻子位置确定第三纹理展开图中耳朵和/或鼻子 位置,并调整耳朵和/或鼻子位置,使得调整后的耳朵和鼻子位于第三纹理展开图的预设位 置处,并根据调整后的第三纹理展开图以及正面图像得到第一纹理展开图,调整后的耳朵 和鼻子位于第一纹理展开图的预设位置处。比如,可以对第三纹理展开图进行扭曲映射处 理,以使得到的第一纹理展开图中耳朵和鼻子位于预设位置处。

另一种方式是,根据第三纹理展开图以及正面图像获得颜色填充的第三纹理展开图。 根据三维网络模型中耳朵和鼻子位置确定颜色填充的第三纹理展开图中耳朵和鼻子位置, 并调整耳朵和/或鼻子位置得到第一纹理展开图。耳朵和鼻子位于第一纹理展开图的预设位 置处。

第三纹理展开图中每个像素点的坐标与三维网格模型中每个点的坐标存在映射关系, 如第一规则。由于三维网格模型时基于正面图像获得的,因此,三维网格模型中每个点的 坐标与正面图像中像素点的坐标存在映射关系。进一步的,第三纹理展开图中每个像素点 的坐标与正面图像中像素点的坐标存在映射关系。因此正面图像中像素点的像素值可以映 射到第三纹理展开图上(或者映射到调整后的第三纹理展开图上)。

目前一般采用的半身纹理展开都是前面和背面分开展开,即展开成正面可见部分和背 面不可见部分纹理,导致不可见部分头发和耳朵部分的纹理重建效果较差,且耳朵的几何 网格重建效果较差,因而难以满足用户需求。通过上述方案,通过对网格模型进行语义对 齐的纹理展开,获得一个完整的纹理展开图像,可以提高不可见部分纹理补全的效果;而 且通过耳朵部分的网格优化和纹理替换,实现了高精度的局部纹理和几何,可以产生更好 的纹理补全和网格细节重建效果。

需要说明的是,将经过调整后的耳朵和鼻子位于第一纹理展开图的预设位置处,这个 过程,为后续对耳朵部分的优化提供的便利条件,并且可以提高后续耳朵的优化的准确度。 后续对耳朵部分的优化进行说明,此处不再赘述。

作为一种可能的实施方式,对于头发较长的半身像来说,可能头发完全盖住耳朵区域, 在该情况下,可以不再执行后续的耳朵部分的优化。基于此,在对三维网格模型对应纹理 执行纹理展开时,可以基于中心轴按照某处的空间角度或曲面周长来获得纹理展开图,可 以不再执行A2和A3。在该场景中,可以直接根据第三纹理展开图以及正面图像获得颜色 填充的第三纹理展开图,即填充的第三纹理展开图作为第一纹理展开图。

作为一种示例,参见图7中(a)所示,头部某个截面可以认为是一个圆形。图7(a)中-π和π之间的黑点可以认为是进行纹理展开时采用的展开线在截面上的点。以经过扭曲处理后需要鼻子位于0π位置处,两个耳朵分别位于-π和π的位置处为例,即两个耳朵以嘴为中心对称。从图7(a)中可以看出,经过扭曲处理之前,鼻子与两个耳朵是非对称的。 参见图7(b)所示,经过A3的处理后,第一纹理展开图中,鼻子位于0π位置处。为了更 直观展示耳朵的所在位置,可以参见图7(c)所示,为经过S203处理后的第二纹理展开图 的示意图。图7(c)中,鼻子位于0π位置处,两个耳朵分别位于-π和π的位置处。

经过S203根据第一纹理展开图中半身像的正面纹理对第一纹理展开图中半身像的背面 纹理进行补充得到第二纹理展开图后,如果在根据第二纹理展开图获得半身像的三维模型 时,如果背部缝合线区域进行处理时,可能获得的三维模型缝合线区域会存在缝隙。作为 一种示例,可以在基于第二纹理展开图得到半身像的三维模型时,可以先对第二纹理展开 图中纹理缝合线区域进行平滑处理得到第四纹理展开图,基于第四纹理展开图得到半身像 的三维模型,纹理缝合线区域根据对三维网格模型进行纹理展开时所采用的展开线确定。

作为一种示例,以对三维网格模型进行纹理展开时,展开线在背部为例。参见图9中 左侧图所示,为三维模型缝合线区域存在的类似缝隙的示意图。缝隙抹平后如图9中右侧 图所示。缝隙抹平操作,即对第二纹理展开图中纹理缝合线区域进行融合处理。

在对第二纹理展为开图中纹理缝合线区域进行融合处理时,可以先根据半身像的正面 图像确定半身像的背面纹理图像;然后将第二纹理展开图以及半身像的背面纹理图像进行 加权融合处理得到第四纹理展开图。

示例性地,可以将第二纹理展开图以及半身像的背面纹理图像按照设定规则进行加权 融合处理得到第四纹理展开图;

设定规则可以为:

I

α=I

其中,I

例如,参见图10所示,根据半身像的正面图像确定半身像的背面纹理图像的如图10(a) 所示,各个像素点的权重可以通过图10(b)所示。第二纹理展开图通过10(c)所示。将第 二纹理展开图(图10(c))以及半身像的背面纹理图像(图10(a))按照图10(b)融合得 到图10(d),即第四纹理展开图。融合操作在图10中通过加号“+”来表示。

下面对耳朵部分的优化的过程进行详细描述。半身像的人脸包括耳朵,即耳朵未被头 发遮挡。可以根据头部语义掩膜来判断是否包括耳朵。在对耳朵部分进行优化时,可以采 用如下方式:

B1,先将预配置的耳朵模型融合到三维网格模型中的耳朵区域得到融合后的三维网格 模型。

示例性地,耳朵融合到三维网格模型的耳朵区域可以采用拉普拉斯(Laplacian)网格融 合方法。

B2,将融合后的三维网络模型上耳朵区域的纹理融合到位于第四纹理展开图预设位置 处的耳朵区域得到融合后的第四纹理展开图;最后根据融合后的第四纹理展开图得到半身 像的三维模型。

示例性地,将融合后的三维网络模型上耳朵区域的纹理融合到位于第四纹理展开图预 设位置处的耳朵区域时采用的融合方法,可以采用基于图像拉普拉斯梯度的融合算法。

参见图11(a)所示,为三维网格模型的示意图。确定的三维网格模型中的耳朵区域可 以参见图11(b)所示。耳朵的几何尺度可以根据三维网格模型的大小来确定。三维网格模 型的大小可以由用户预先设置或者采用默认的尺寸。耳朵模型贴合到三维网格模型中的耳 朵区域,如图11(c)所示,然后对贴合耳朵模型的三维网格模型进行融合处理,得到的融 合后的三维网格模型可以参见图11(d)所示。然后获取融合后的三维网络模型上耳朵区域 的纹理,并将耳朵区域的纹理融合到第四纹理展开图中预设位置处的耳朵区域上。

作为一种示例,比如获取到的待处理图像如图2所示的图像,经过本申请实施例提供 的方案,得到的重建后的三维模型如何图12所示。图12(a)为三维模型的正面示意图,图12(b)为三维模型的背面示意图。

例如,将本申请实施例提供的方案应用到虚拟三维对话。在本端终端设备(简称终端) 接收到用户的触发,启动虚拟三维视频通话时,通过终端的摄像头获取视频流,可以按照 本专利提出的基于单帧图像的半身像的三维重建方法来重建三维模型。终端通过获取的视 频流的每一帧的用户的表情来驱动三维模型,并发送给对端终端,对端终端显示该三维模 型所模拟的本端终端用户的表情。作为一种示例,参见图13所示,创建三维模型可以计算 云来执行,由电子设备将单帧图像发送给计算云,由计算云来创建三维模型,然后将创建 的三维模型发送给终端。

为了更好地说明以上实施例,本申请实施例还提供了一种装置1400,参见图14所示, 该装置1400具体可以是包括电子设备中的功能模块(比如图1中的处理器110的部件或其 执行的软件模块),或者装置1400可以是芯片或者芯片系统,或者装置1400可以是电子设 备中一个模块等。示意性的,该装置可以包括获取单元1401和重建单元1402。获取单元1401以及重建单元1402分别执行图2和图4对应的实施例所示的方法的不同步骤。比如获取单元1401可以用于执行S201中获取待处理图像,重建单元1402用于执行S202-S204的 过程,具体实现如前文所述,此处不再赘述。

因此,可以认为之前提到的获取单元1401或重建单元1402可以由软件、硬件或软件 与硬件结合来实现。当该模块以硬件实现的时候,该硬件可以是CPU、微处理器、DSP、 微控制单元(MCU)、人工智能处理器、专用集成电路(ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、专用数字电路、硬件加速器或非集成的分立器件中的任一个或任一组合,其可以运行必要的软件或不依赖于软件以执行以上方法流程,并位于之前图1的所述处理器110内。当以该模块以软件实现的时候,所述软件以计算机程序指令 的方式存在,并被存储在存储器,例如图1的存储器120中,处理器,例如图1中的处理 器110可以用于执行所述程序指令以实现以上方法流程。所述处理器可以包括但不限于以 下至少一种:CPU、微处理器、DSP、微控制器、或人工智能处理器等各类运行软件的计 算设备,每种计算设备可包括一个或多个用于执行软件指令以进行运算或处理的核。该处 理器可以是个单独的半导体芯片,也可以跟其他电路一起集成为一个半导体芯片,例如, 可以跟其他电路(如编解码电路、硬件加速电路或各种总线和接口电路)构成一个SoC(片 上系统),或者也可以作为一个ASIC的内置处理器集成在所述ASIC当中,该集成了处理 器的ASIC可以单独封装或者也可以跟其他电路封装在一起。该处理器除了包括用于执行软 件指令以进行运算或处理的核外,还可进一步包括必要的硬件加速器,如FPGA、PLD(可 编程逻辑器件)、或者实现专用逻辑运算的逻辑电路。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产 品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程 序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算 机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理 器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式 工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置 的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方 框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机 或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他 可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方 框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实 施例的范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技 术的范围之内,则本申请也意图包含这些改动和变型在内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号