CN112101320A - 模型训练方法、图像生成方法、装置、设备及存储介质 - Google Patents

模型训练方法、图像生成方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112101320A
CN112101320A CN202011289278.7A CN202011289278A CN112101320A CN 112101320 A CN112101320 A CN 112101320A CN 202011289278 A CN202011289278 A CN 202011289278A CN 112101320 A CN112101320 A CN 112101320A
Authority
CN
China
Prior art keywords
head
image
model
frame
face contour
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
Application number
CN202011289278.7A
Other languages
English (en)
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.)
Beijing Century TAL Education Technology Co Ltd
Original Assignee
Beijing Century TAL Education 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 Beijing Century TAL Education Technology Co Ltd filed Critical Beijing Century TAL Education Technology Co Ltd
Priority to CN202011289278.7A priority Critical patent/CN112101320A/zh
Publication of CN112101320A publication Critical patent/CN112101320A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • G06T5/30Erosion or dilatation, e.g. thinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请提出一种模型训练方法、图像生成方法、装置、电子设备及存储介质。具体实现方案为:获取第一对象的视频数据;从第一对象的视频数据的帧图像中提取第一对象的头部图像以及头部图像中的关键点;根据关键点生成第一对象的人脸轮廓图;利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,使得训练好的头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。本申请实施例能够在不依赖人工参与的情况下,自动将视频数据中的第二对象的头部图像替换成第一对象的头部图像,降低了图像生成的耗时和成本。

Description

模型训练方法、图像生成方法、装置、设备及存储介质
技术领域
本申请涉及人工智能技术领域,尤其涉及一种模型训练方法、图像生成方法、装置、设备及存储介质。
背景技术
在拍摄影视、教学视频过程中,可能由于某些因素导致演员、老师不能继续参与拍摄。这种情况下需要寻找替身来进行拍摄。通常情况下要求替身的外表与原演员相似度较高,选择替身门槛也比较高。通过换脸、换头的方式可以降低替身的选择门槛。但是现有换脸、换头的方法通常是采用人工通过软件进行后期调整。这种后期调整的方式十分耗费时间与成本。
发明内容
本申请实施例提供一种模型训练方法、图像生成方法、装置、电子设备及存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种模型训练方法,包括:
获取第一对象的视频数据;
从第一对象的视频数据的帧图像中提取第一对象的头部图像以及头部图像中的关键点;
根据关键点生成第一对象的人脸轮廓图;
利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,使得训练好的头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
在一种实施方式中,人脸轮廓图用于表征人物的表情信息和/或姿势信息。
在一种实施方式中,头部生成模型包括生成式对抗网络。
在一种实施方式中,利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,包括:
利用时序平滑约束函数训练头部生成模型。
在一种实施方式中,时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
在一种实施方式中,时序平滑约束函数包括:
Figure 25600DEST_PATH_IMAGE001
Figure 296044DEST_PATH_IMAGE002
其中,
Figure 265137DEST_PATH_IMAGE003
表示生成器;
Figure 482492DEST_PATH_IMAGE004
表示判别器;
Figure 282958DEST_PATH_IMAGE005
表示时序平滑约束函数的损失值;
Figure 661987DEST_PATH_IMAGE006
表示数学期望;
Figure 118376DEST_PATH_IMAGE007
表示人脸轮廓图;
Figure 201738DEST_PATH_IMAGE008
表示当前帧的第一对象的人脸轮廓图;
Figure 528814DEST_PATH_IMAGE009
表示前一帧的第一对象的人脸轮廓图;
Figure 672220DEST_PATH_IMAGE011
表示第一对象的头部图像;
Figure 615905DEST_PATH_IMAGE012
表示当前帧的第一对象的头部图像;
Figure 909483DEST_PATH_IMAGE013
表示前一帧的第一对象的头部图像。
在一种实施方式中,利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,包括:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练头部生成模型。
第二方面,本申请实施例提供了一种图像生成方法,包括:
获取第二对象的视频数据;
从第二对象的视频数据的帧图像中提取第二对象的头部图像以及头部图像中的关键点;
根据关键点生成对应于帧图像的第二对象的人脸轮廓图;
将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像;其中,头部生成模型为采用上述任一项的模型训练方法得到的模型。
在一种实施方式中,将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像之后,还包括:
利用头部分割算法得到对应于帧图像的第一对象的头部生成图像的掩膜区域和第二对象的头部图像的掩膜区域;
基于掩膜区域对帧图像进行处理,将第一对象的头部生成图像替换到第二对象的头部图像上;
对替换后的帧图像中的掩膜区域进行腐蚀处理;
利用头部融合模型对腐蚀处理后的帧图像中的掩膜区域进行修复。
在一种实施方式中,头部融合模型为采用上述任一项的模型训练方法得到的模型。
在一种实施方式中,上述方法还包括:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
第三方面,本申请实施例提供了一种模型训练装置,包括:
第一获取单元,用于获取第一对象的视频数据;
第一提取单元,用于从第一对象的视频数据的帧图像中提取第一对象的头部图像以及头部图像中的关键点;
第一生成单元,用于根据关键点生成第一对象的人脸轮廓图;
训练单元,用于利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,使得训练好的头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
在一种实施方式中,人脸轮廓图用于表征人物的表情信息和/或姿势信息。
在一种实施方式中,头部生成模型包括生成式对抗网络。
在一种实施方式中,训练单元还用于:
利用时序平滑约束函数训练头部生成模型。
在一种实施方式中,时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
在一种实施方式中,时序平滑约束函数包括:
Figure 950120DEST_PATH_IMAGE001
Figure 936531DEST_PATH_IMAGE002
其中,
Figure 187687DEST_PATH_IMAGE003
表示生成器;
Figure 550536DEST_PATH_IMAGE004
表示判别器;
Figure 383362DEST_PATH_IMAGE014
表示时序平滑约束函数的损失值;
Figure 337412DEST_PATH_IMAGE015
表示数学期望;
Figure 583586DEST_PATH_IMAGE016
表示人脸轮廓图;
Figure 484545DEST_PATH_IMAGE008
表示当前帧的第一对象的人脸轮廓图;
Figure 171879DEST_PATH_IMAGE017
表示前一帧的第一对象的人脸轮廓图;
Figure 296830DEST_PATH_IMAGE019
表示第一对象的头部图像;
Figure 702403DEST_PATH_IMAGE012
表示当前帧的第一对象的头部图像;
Figure 203792DEST_PATH_IMAGE020
表示前一帧的第一对象的头部图像。
在一种实施方式中,训练单元还用于:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练头部生成模型。
第四方面,本申请实施例提供了一种图像生成装置,包括:
第二获取单元,用于获取第二对象的视频数据;
第二提取单元,用于从第二对象的视频数据的帧图像中提取第二对象的头部图像以及头部图像中的关键点;
第二生成单元,用于根据关键点生成对应于帧图像的第二对象的人脸轮廓图;
第三生成单元,用于将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像;其中,头部生成模型为采用上述任一项的模型训练装置得到的模型。
在一种实施方式中,上述装置还包括修复单元,修复单元用于:
利用头部分割算法得到对应于帧图像的第一对象的头部生成图像的掩膜区域和第二对象的头部图像的掩膜区域;
基于掩膜区域对帧图像进行处理,将第一对象的头部生成图像替换到第二对象的头部图像上;
对替换后的帧图像中的掩膜区域进行腐蚀处理;
利用头部融合模型对腐蚀处理后的帧图像中的掩膜区域进行修复。
在一种实施方式中,头部融合模型为采用上述任一项的模型训练装置得到的模型。
在一种实施方式中,上述装置还包括拼接单元,拼接单元用于:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
第五方面,本申请实施例提供了一种电子设备,该设备包括:存储器和处理器。其中,该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机程序,当计算机程序在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
上述技术方案中的优点或有益效果至少包括:能够在不依赖人工参与的情况下,自动将视频数据中的第二对象的头部图像替换成第一对象的头部图像,降低了图像生成的耗时和成本。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
图1为根据本申请实施例的模型训练方法的流程图;
图2为根据本申请另一实施例的模型训练方法的训练流程示意图;
图3为根据本申请另一实施例的模型训练方法的测试流程示意图;
图4为根据本申请另一实施例的图像生成方法的流程图;
图5为根据本申请另一实施例的图像生成方法的流程图;
图6为根据本申请另一实施例的图像生成方法的头部融合模型的训练流程示意图;
图7为根据本申请另一实施例的图像生成方法的头部融合模型的测试流程示意图;
图8为根据本申请另一实施例的图像生成方法的头部替换效果示意图;
图9为根据本申请另一实施例的图像生成方法的流程图;
图10为根据另一本申请实施例的模型训练装置的结构示意图;
图11为根据另一本申请实施例的图像生成装置的结构示意图;
图12为根据另一本申请实施例的图像生成装置的结构示意图;
图13为用来实现本申请实施例的电子设备的框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
图1为根据本申请实施例的模型训练方法的流程图。如图1所示,该模型训练方法可以包括:
步骤S110,获取第一对象的视频数据;
步骤S120,从第一对象的视频数据的帧图像中提取第一对象的头部图像以及头部图像中的关键点;
步骤S130,根据关键点生成第一对象的人脸轮廓图;
步骤S140,利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,使得训练好的头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
在拍摄影视、教学视频过程中,可能由于某些因素需要寻找替身来进行拍摄。通过换脸、换头的方式可以降低替身的选择门槛。换脸、换头的方法可以采用人工通过软件进行后期调整。但是,这种后期调整的方式十分耗费时间与成本。另外,换脸是对替身的面部区域进行替换,对替身的发型以及脸型并没有改变。通常情况下外表的相似性受人物的发型与脸型影响较大。因此,基于换脸的方法在一定程度上提高了替身的选择门槛。
鉴于上述问题,本申请提供了一种模型训练方法,训练得到的模型可在视频中自动替换人物的头部图像。在一个示例中,第一对象可以包括源(source)人物,源人物可以是演员。第二对象可以包括目标(target)人物,目标人物可以是替身。可根据需要替换的演员的视频A以及替身表演的视频B,在不依赖人工参与的情况下,使用本申请提供的模型训练方法训练得到的模型,自动将视频B中替身的头部图像替换成对应演员的头部图像,并保持视频B中替身的表情以及姿势。
仍以演员和替身的头部图像替换为例,在步骤S110中,可收集演员的视频数据。收集到的数据用于训练头部生成模型。训练好的头部生成模型可以根据替身的人脸轮廓图得到演员的头部生成图像。
在步骤S120中,首先将演员的视频数据中的每一帧图像提取出来。然后再利用人脸检测以及关键点检测模型从每一帧图像中提取出演员的头部图像和头部图像中的关键点。关键点(landmark)包括在头部图像上绘制的若干个标记点。其中,标记点可以画在边、角、轮廓、交叉、等分等关键位置。借助关键点可以描述人脸的形态。
本申请实施例中,可采用Dlib工具库中的人脸检测模型从演员的视频数据中的每一帧图像中提取演员的头部图像和头部图像中的关键点。Dlib是一个包含机器学习算法的C++开源工具包。利用Dlib实现的人脸检测的方法可包括:应用训练好的分类器检测人脸图像,对人脸图像进行特征提取,并根据提取的特征对人脸图像进行分类。在一个示例中,Dlib工具库中的人脸检测模型中的landmark可包含68个标记点。各个标记点依次表示为:0-16是下颌线,17-21是右眼眉,22-26是左眼眉,27-35是鼻子,36-41是右眼,42-47是左眼,48-60是嘴外轮廓,61-67是嘴内轮廓。利用关键点可以表现人脸的脸型和五官的轮廓和特征。根据关键点可在给定人脸图像中定位出人脸面部的关键区域位置,包括眉毛、眼睛、鼻子、嘴巴、脸部轮廓等。
在步骤S130中,根据步骤S120中提取的演员的头部图像中的关键点生成演员的人脸轮廓图。图2为根据本申请另一实施例的模型训练方法的训练(Training)流程示意图。图2中的标号1表示从演员的视频数据中提取出的每一帧图像,标号2表示演员的人脸轮廓图。如图2所示,对从演员的视频数据中提取出的每一帧图像进行关键点检测(landmarkdetector),然后利用关键点生成标号2所示的演员的人脸轮廓图。
在步骤S140中,利用演员的人脸轮廓图和演员的头部图像训练头部生成模型,使得训练好的头部生成模型能够根据替身的人脸轮廓图得到演员的头部生成图像。其中,头部生成模型也可称为头部生成网络(HGN,Head Generate Network)。图2中的标号3表示头部生成模型,标号4表示演员的头部生成图像。如图2所示,在头部生成模型的训练过程中,将演员的人脸轮廓图2输入到头部生成模型3中,通过头部生成模型3得到演员的头部生成图像4。在头部生成模型训练完成后,可将替身的人脸轮廓图输入到头部生成模型中,通过头部生成模型得到演员的头部生成图像。
本申请实施例能够在不依赖人工参与的情况下,自动将视频数据的每一帧图像中的第二对象的头部图像替换成第一对象的头部图像。通过头部图像替换降低了替身的选择门槛,同时也降低了图像生成的耗时和成本。
在一种实施方式中,人脸轮廓图用于表征人物的表情信息和/或姿势信息。本申请实施例中,关键点可以标记在人脸的外部轮廓和器官的边缘。利用关键点生成的人脸轮廓图可以包含头部朝向以及表情信息,可以用于表征人物的表情信息和/或姿势信息。其中,姿势信息可包括人物头部的姿势信息。例如姿势信息可包括头部朝向、头部角度等信息。
本申请实施例中,可利用训练好的头部生成模型对替身的视频数据进行处理,具体针对替身的视频数据中的每一帧图像进行处理,生成与替身具有相同姿势以及表情的演员的头部图像。在模型训练过程中,为了能够生成与演员具有相同姿势与表情的头部图像,可通过检测到的演员的人脸关键点绘制成包含头部朝向以及表情信息演员的人脸轮廓图。然后将演员的人脸轮廓图作为头部生成模型HGN的输入信息,并将从演员的视频数据的帧图像中提取的演员的头部图像作为监督信息,对头部生成模型进行训练。
本申请实施例能够自动将视频数据中的第二对象的头部图像替换成第一对象的头部图像,并保持第二对象的表情以及姿势。通过头部图像替换降低了替身的选择门槛,提升了生成图像的视觉效果和逼真感。
在一种实施方式中,头部生成模型包括生成式对抗网络。
生成式对抗网络(GAN, Generative Adversarial Networks)是一种基于卷积神经网络(CNN, Convolutional Neural Network)和对抗学习的深度学习模型。其中,卷积神经网络是一种通过多层卷积计算实现对图像输入进行分析的神经网络。利用生成式对抗网络可按照指定规则自动生成全新的图像。生成式对抗网络的框架包括生成器和判别器。其中,生成器也称为生成模型(Generative Model,简称G);判别器也称为判别模型(Discriminative Modell,简称D)。通过两个模型的互相博弈学习产生相当好的输出。以图像处理过程为例,生成器的作用是生成图像。也就是说,生成器将输出一幅自动生成的、假的图像。判别器是用来判断的,它接收生成器输出的图像作为输入,然后判断这幅图像的真实性概率。例如,如果判别器输出的真实性概率为1,代表判别结果为生成器生成的图像100%是真实的,也就是生成的图像和真实图像几乎是一样的。如果判别器输出的为真实性概率0,代表生成器生成的图像不可能是真实图像,也就是生成的图像与真实图像的差距较大。如果输出为真实性概率0.5,则代表难以判定由生成器生成的图像究竟是不是真实的。
在生成对抗网络的训练过程中,生成器G的目标是尽量生成真实的图片去欺骗判别器D。而判别器D的目标是尽量把生成器G生成的图片和真实图像分别开来。这样,生成器G和判别器D构成了一个动态的“博弈过程”。
最后博弈的结果,在最理想的状态下,生成器G可以生成足以“以假乱真”的图像。对于判别器D来说,它难以判定生成器G生成的图像究竟是不是真实的,因此判别器D输出的真实性概率为0.5。这样通过博弈学习的过程,最终得到了一个生成式对抗网络的生成器G,它可以用来生成第一对象的头部生成图像。
再参见图2,图2中的标号3具体表示头部生成模型中的生成器G。如图2所示,在头部生成模型的训练过程中,将演员的人脸轮廓图2输入到头部生成模型的生成器3中,通过生成器3得到演员的头部生成图像4。
图2中的标号5具体表示头部生成模型中的判别器D。如图2所示,在头部生成模型的训练过程中,将演员的人脸轮廓图2和生成器3生成的演员的头部生成图像4输入到头部生成模型的判别器5中,由判别器5判别头部生成图像的真实性概率,确定头部生成图像是真的还是假的(Real or Fake)。
图3为根据本申请另一实施例的模型训练方法的测试(Testing)流程示意图。如图3所示,在头部生成模型训练完成后,可对训练好的头部生成模型进行测试。图3中的标号6表示从替身的视频数据的帧图像中提取出的每一帧图像,标号7表示替身的人脸轮廓图,标号8表示根据替身的人脸轮廓图生成的演员的头部生成图像。如图3所示,对每一帧图像进行关键点检测(landmark detector),然后利用关键点生成标号7所示的替身的人脸轮廓图。将替身的人脸轮廓图输入到头部生成模型的生成器3中,通过头部生成模型得到演员的头部生成图像8。
在一种实施方式中,利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,包括:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练头部生成模型。
本申请实施例中,在模型训练过程中为了能够实现生成与演员具有相同姿势与表情的头部图像,可将演员的人脸轮廓图作为头部生成模型HGN的输入信息,并将与替身对应的演员的头部图像作为监督信息,通过对抗学习的方式对头部生成模型进行训练。本申请实施例中定义的模型训练的损失函数可包括以下至少之一:
1)对抗损失函数:
Figure 11211DEST_PATH_IMAGE021
其中,s表示人脸轮廓图,具体是第一对象(例如演员)的人脸轮廓图;
Figure 510325DEST_PATH_IMAGE022
表示真实的头部图像,具体是第一对象(例如演员)的头部图像;D表示判别器,G表示生成器,G(s)表示生成器输出的头部生成图像;
Figure 465512DEST_PATH_IMAGE023
表示数学期望。
生成式对抗网络中生成器的目的是尽可能使生成图像分布拟合真实图像分布。鉴别器目的是尽可能鉴别输入图像来自于真实的还是生成的。判别器D与生成器G通过对抗训练来达到生成的头部图像能够匹配真实数据分布,也就是能够匹配真实的头部图像分布。
2)特征匹配损失函数:
Figure 442695DEST_PATH_IMAGE024
其中,
Figure 635779DEST_PATH_IMAGE025
表示特征匹配损失函数的损失值;s表示人脸轮廓图,具体是第一对象(例如演员)的人脸轮廓图;
Figure 305795DEST_PATH_IMAGE022
表示真实的头部图像,具体是第一对象(例如演员)的头部图像;D表示判别器,G表示生成器,G(s)表示生成器输出的头部生成图像;
Figure 685960DEST_PATH_IMAGE026
表示数学期望;k表示判别器的个数;i表示判别器网络的当前层数;T表示判别器网络的总层数;N表示特征图的神经元个数。
在上述公式中,人脸轮廓图s与真实的头部图像x,以及人脸轮廓图s与生成器输出的头部生成图像(G(s)),分别通过通道维度拼接起来构成(s,x)与(s,G(s))。在一个示例中,判别器D包括4层网络。将(s,x)与(s,G(s))输入判别器,可分别得到对应于判别器网络1至4层的特征图D(s,x)与D(s,G(s))。然后再通过计算对应层的D(s,x)与D(s,(G(s))的L1距离,并除以该层特征图的神经元个数N,即得到了该层对应的特征匹配损失值。
在又一个示例中,可采用3个尺度的判别器,通过结合这3个尺度的损失值得到最终的损失值。例如,3个尺度对应的特征图的尺寸可分别为256*256像素、128*128像素、56*56像素。可将3个尺度的判别器的输出结果取均值,作为最终的判别器的输出结果。使用多个尺度的判别器,可增强特征图的细节信息。
特征匹配损失函数计算了真实的头部图像以及头部生成图像在判别器中不同层的特征的距离和相似度,以提高头部生成图像的真实性。通过模型训练降低特征匹配损失函数的损失值,使得生成器输出的头部生成图像能够在判别器语义特征层面缩小与真实图像的差异性,进而能够提高头部生成图像的真实性。
3)感知损失函数:
Figure 263572DEST_PATH_IMAGE027
其中,
Figure 780004DEST_PATH_IMAGE028
表示感知损失函数的损失值;s表示人脸轮廓图,具体是第一对象(例如演员)的人脸轮廓图;
Figure 886500DEST_PATH_IMAGE022
表示真实的头部图像,具体是第一对象(例如演员)的头部图像;G表示生成器,G(s)表示生成器输出的头部生成图像;i表示网络的当前层数;n表示网络的总层数;C、H、W分别为对应i层特征图上的通道数、高度、宽度;F表示VGG(VisualGeometry Group Network,视觉几何群网络)模型。VGG模型是一种人脸识别网络。在一个示例中,可采用VGGFace2网络结构提取人脸特征实现人脸识别。
相关技术中,计算感知损失函数使用ImageNet数据集训练的VGG模型。相比之下,本申请实施例中,针对头部图像生成任务的特点,利用人脸识别数据对VGG网络模型进行了重新训练,以便于更好地对头部图像的风格进行匹配。在上述公式中,将真实的头部图像x输入基于人脸识别数据训练好的VGG模型F中,再根据模型F的输出结果与生成器输出的头部生成图像G(s),在人脸识别网络的不同层计算特征之间的距离。在感知损失函数中,通过在人脸识别网络的不同层计算特征之间的距离,可促进生成头部图像的纹理细节信息与真实的头部图像相接近,提升生成图像的细节效果。
在一种实施方式中,利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,包括:
利用时序平滑约束函数训练头部生成模型。
在相关技术中,采用单图生成对抗网络的方式对头部生成模型进行训练。具体而言,该方式每次仅将一张图像作为模型的输入信息。采用这种训练方式的缺陷在于,即使是在连续的两帧图像之间存在轻微的关键点变化,也会造成生成的视频中的人物头部发生剧烈抖动。
在拍摄和制作影视、教学视频时,通常期望达到的效果是可以以任意人员作为替身,输入替身的人脸轮廓图可以生成与替身具有相同表情与姿势的目标演员的头部生成图像。采用单图生成对抗网络的训练方式,无法达到上述期望的效果。
为了解决视频抖动的问题,在视频一致性方法的相关技术中,通过计算光流来达到视频稳定的目的。但该方法需要使用额外网络资源计算视频帧之间的光流信息,通过光流来对特征直接进行变换或者对生成器生成的图像通过光流信息约束来达到视频帧之间的一致性。计算光流的方法通常需要较大的***开销用于进行光流信息的计算,耗费较多的***资源。
与计算光流的方法不同,本申请实施例采用一种时序平滑约束的方式,通过生成式对抗网络自身的特点构造时序平滑约束函数,利用时序平滑约束函数训练头部生成模型,从而保证生成的视频的时序一致性,提高生成的视频中头部图像的稳定性。
在一种实施方式中,时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
为保证生成的视频的时序一致性,本申请实施例通过生成式对抗网络自身的特点引入一种时序平滑约束的方法。在模型训练过程中,将连续两帧图像中的第一对象的人脸轮廓图作为头部生成模型的输入信息。头部生成模型的输出信息是连续两帧图像中的第一对象的头部生成图像。相对应地,将从第一对象的视频数据中提取出的连续两帧图像中的第一对象的头部图像作为监督信息。本申请实施例中,基于上述连续两帧图像对应的模型的输入信息、监督信息和输出信息构造时序平滑约束函数。利用该方式构造的时序平滑约束函数训练生成式对抗网络,可减轻连续的两帧图像之间的抖动,提高生成的视频中头部图像的稳定性。
在一种实施方式中,时序平滑约束函数包括:
Figure 285121DEST_PATH_IMAGE001
Figure 135265DEST_PATH_IMAGE029
其中,
Figure 302941DEST_PATH_IMAGE030
表示生成器;
Figure 314760DEST_PATH_IMAGE031
表示判别器;
Figure 403938DEST_PATH_IMAGE032
表示时序平滑约束函数的损失值;
Figure 588932DEST_PATH_IMAGE026
表示数学期望;
Figure 548798DEST_PATH_IMAGE033
表示人脸轮廓图;
Figure 59414DEST_PATH_IMAGE034
表示当前帧的第一对象的人脸轮廓图;
Figure 635888DEST_PATH_IMAGE009
表示前一帧的第一对象的人脸轮廓图;
Figure 296677DEST_PATH_IMAGE035
表示第一对象的头部图像;
Figure 376628DEST_PATH_IMAGE036
表示当前帧的第一对象的头部图像;
Figure 323725DEST_PATH_IMAGE037
表示前一帧的第一对象的头部图像。
本申请实施例中,考虑到视频帧之间的相关性,在模型训练过程中,首先使得生成器生成连续的两帧图像。例如,当前帧图像为第二帧的生成图像
Figure 715392DEST_PATH_IMAGE038
。则第一帧的生成图像
Figure 711030DEST_PATH_IMAGE039
由对应的第一帧的人脸轮廓图
Figure 442225DEST_PATH_IMAGE040
以及空白图像
Figure 232327DEST_PATH_IMAGE041
作为约束。第二帧的生成图像
Figure 783394DEST_PATH_IMAGE038
由对应的第二帧的人脸轮廓图
Figure 848302DEST_PATH_IMAGE034
以及第一帧生成的图像
Figure 168425DEST_PATH_IMAGE042
作为约束。判别器将连续两帧图像对应的人脸轮廓图和真实的头部图像(即从视频数据中提取出的第一对象的头部图像),以及连续两帧图像对应的人脸轮廓图和头部生成图像拼接起来,构成
Figure 926165DEST_PATH_IMAGE043
Figure 698949DEST_PATH_IMAGE044
,作为输入判别器的输入信息。判别器将头部生成图像与真实的头部图像相比较,判别头部生成图像的真实性以及时序上的一致性。
基于上述方式进行训练,在模型测试阶段可按照视频帧顺序从替身表演的视频数据中提取各帧图像的人脸轮廓图。生成器按照视频帧顺序依次对各帧图像进行处理。生成器的第一次输入信息由空白图像以及第一帧图像对应的人脸轮廓图构成。后续的每一次输入信息则由上一次生成的头部生成图像以及本次处理的当前帧的人脸轮廓图构成。基于上述方式在模型训练过程中引入时序信息,在连续视频帧之间增加了时序性约束,进而扩展到实现整个视频序列上的一致性,从而提高了生成图像的稳定性。
图4为根据本申请另一实施例的图像生成方法的流程图。如图4所示,该图像生成方法可以包括:
步骤S210,获取第二对象的视频数据;
步骤S220,从第二对象的视频数据的帧图像中提取第二对象的头部图像以及头部图像中的关键点;
步骤S230,根据关键点生成对应于帧图像的第二对象的人脸轮廓图;
步骤S240,将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像;其中,头部生成模型为采用上述任一项的模型训练方法得到的模型。
在拍摄影视、教学视频过程中,可能需要由替身代替演员或老师来进行拍摄,然后再将视频中的替身的头部图像替换成演员或老师的头部图像。
仍以演员和替身的头部图像替换为例,在步骤S210中,获取替身表演的视频数据。在后续步骤中对该视频数据进行处理,将视频数据中的替身的头部图像替换成演员的头部图像。
在步骤S220中,首先从替身的视频数据中将每一帧图像提取出来。然后再利用人脸检测以及关键点检测模型从每一帧图像中提取出替身的头部图像和头部图像中的关键点。本申请实施例中,可采用Dlib工具库中的人脸检测模型从替身的视频数据中的每一帧图像中提取替身的头部图像和头部图像中的关键点。
在步骤S230中,根据步骤S220中提取的替身的头部图像中的关键点生成替身的人脸轮廓图。
在步骤S240中,采用上述任一项的模型训练方法得到的头部生成模型,将替身的人脸轮廓图输入到训练好的头部生成模型,得到对应于替身的视频数据中的每一帧图像的演员的头部生成图像。
本申请实施例能够自动将视频数据中的第二对象的头部图像替换成第一对象的头部图像,并保持第二对象的表情以及姿势。通过头部图像替换降低了替身的选择门槛,提升了生成图像的视觉效果和逼真感。并且,利用构造的时序平滑约束函数训练生成式对抗网络,对连续视频帧之间增加了时序性约束,减轻了连续的两帧图像之间的抖动,从而提高了生成图像的稳定性。
图5为根据本申请另一实施例的图像生成方法的流程图。如图5所示,在一种实施方式中,步骤S240,将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像之后,还包括:
步骤S250,利用头部分割算法得到对应于帧图像的第一对象的头部生成图像的掩膜区域和第二对象的头部图像的掩膜区域;
步骤S260,基于掩膜区域对帧图像进行处理,将第一对象的头部生成图像替换到第二对象的头部图像上;
步骤S270,对替换后的帧图像中的掩膜区域进行腐蚀处理;
步骤S280,利用头部融合模型对腐蚀处理后的帧图像中的掩膜区域进行修复。
在利用头部生成模型得到第一对象的头部生成图像之后,可将第二对象的视频数据中的第二对象的头部图像替换成第一对象的头部生成图像。在替换后的图像中,演员的头部和替身的身体部分的衔接区域,也就是替换后的图像中的人物对象的脖子所在的图像区域可能出现肤色和背景不协调、不一致性的问题。步骤S250是头部替换步骤的预处理操作,用来解决不同人物对象的脖子所在的图像区域的不协调与肤色、背景的不一致性问题。在步骤S250中,对于头部生成模型得到的头部生成图像,以及对应的从替身表演的视频数据的每一帧图像中提取的替身的头部图像,利用头部分割算法得到两者的头部图像的掩膜(Mask)区域。
其中,图像处理中的掩膜包括利用选定的图像、图形或物体,对处理的图像的全部或局部进行遮挡,通过遮挡控制图像处理的区域或处理过程。本申请实施例中,将人物对象的脖子所在的图像区域作为掩膜区域。
在步骤S260中,基于掩膜区域对替身表演的视频数据的每一帧图像进行处理,将头部生成模型得到的演员的头部生成图像替换到对应的替身头部图像上。在步骤S270中,由于不同人物的脖子可能存在肤色、背景的不协调性,在替换后的帧图像中对脖子所在的图像区域进行腐蚀处理,得到抹去脖子所在的图像区域的图像。
图6为根据本申请另一实施例的图像生成方法的头部融合模型的训练流程示意图。图7为根据本申请另一实施例的图像生成方法的头部融合模型的测试流程示意图。图7中的标号17表示头部替换后的帧图像中对掩膜区域进行腐蚀处理得到的图像。图像中的脖子所在的黑色图像区域表示掩膜区域。
在步骤S280中,利用预先训练好的头部融合模型对腐蚀处理后的帧图像中的掩膜区域进行修复。
在一种实施方式中,头部融合模型为采用上述任一项的模型训练方法得到的模型。其中,头部融合模型也可称为头部融合网络(HIN,Head Inpaiting Network)。
相关技术的人脸修复网络训练与预测过程中,可以通过涂抹脸部的某个区域构造出图像数据来训练网络。例如想要通过网络修复补充某个人脸缺失的嘴巴,可以通过涂抹脸部的嘴巴区域构造出图像数据来训练网络。本申请实施例中,也可使用相同类型的数据来训练头部融合模型。
头部融合模型的任务是在头部为演员以及下半身为替身的组合图片上进行修复。在一个示例中,头部融合模型的训练过程可选用一种自监督的学习方式。在自监督学习的过程中,模型直接从无标签数据中自行学习,无需标注数据。
图6中的标号11表示替身的视频数据的帧图像中对掩膜区域进行腐蚀处理得到的图像,标号12表示演员的视频数据的帧图像中对掩膜区域进行腐蚀处理得到的图像。标号11和标号12所示的图像中的脖子所在的黑色图像区域表示掩膜区域。图6中的标号13表示头部融合模型中的生成器G,标号14表示对图像11进行修复后的肤色和背景协调一致的替身的图像,标号15表示对图像12进行修复后的肤色和背景协调一致的演员的图像,标号16表示头部融合模型中的判别器D。
参见图6,在模型训练过程中,以经过腐蚀后的演员的头部图像12以及经过腐蚀后的替身的头部图像11作为头部融合模型的输入信息,经过头部融合模型的生成器13处理后,输出修复后的肤色和背景协调一致的图像14和图像15。然后将图像14和图像15输入到头部融合模型的判别器16,由判别器16判别头部生成图像的真实性概率,确定修复后的图像是真的还是假的(Real or Fake)。在上述模型训练过程中,可将从视频数据中提取出的演员与替身的头部图像作为监督信息,期望在训练过程中网络捕获到演员与替身的相应的特征。
参见图7,在头部融合模型的测试阶段,将头部替换后的帧图像中对掩膜区域进行腐蚀处理得到的图像17输入头部融合模型的生成器13,经过头部融合模型的生成器13处理后,输出修复后的肤色和背景协调一致的图像18。
在一种实施方式中,可采用与上述头部生成模型相类似的训练方法训练头部融合模型。例如,利用对抗损失函数、特征匹配损失函数、感知损失函数和时序平滑约束函数中的至少一种训练头部融合模型。
在另一种实施方式中,在修复过程产生的图像抖动现象不明显的情况下,在头部融合模型训练过程中也可以不引入时序信息,采用与无时序信息的头部生成模型类似的训练方式训练头部融合模型。例如,可利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练头部融合模型。
相比较传统基于手动调整的修复方式,基于头部融合模型能够修复脖子所在的图像区域的不协调问题以及可以保证肤色的一致性。基于掩膜并结合头部融合模型进行修复的方法更加自动化和智能化,且最后得到的图像更加自然,视觉体验更好。
在一种实施方式中,上述方法还包括:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
对于第二对象的视频数据中的每一帧图像,通过上述步骤均可生成与其对应的将头部替换成第一对象的图像。然后将生成的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
图8为根据本申请另一实施例的图像生成方法的头部替换效果示意图。图8所示的是一帧图像的头部替换效果。图8中的左图是替身的表演视频中的一帧图像,图8中的右图是与左图对应的将替身头部替换成演员头部的图像。
图9为根据本申请另一实施例的图像生成方法的流程图。如图9所示,一个示例性的图像生成方法可以包括以下步骤:
第一步:准备演员(source)以及替身(target)的视频数据。
收集演员视频数据,此数据用来作为对应演员(source)头部生成网络模型的训练。准备替身表演的视频数据,此数据作为需要替换的视频数据。
第二步:从视频数据中提取头部图片以及对应的关键点。
从演员视频数据中提取出每一帧图像,并通过人脸检测以及关键点检测算法得到每一帧图像的人脸与对应关键点。用关键点生成人脸轮廓图来编码表情与姿势信息。其中,姿势信息可包括人物头部的姿势信息。例如姿势信息可包括头部朝向、头部角度等信息。
第三步:利用头部生成网络得到演员的头部生成图像。
通过训练头部生成网络(HGN)得到与替身具有相同姿势以及表情的演员的头部生成图像。利用时序平滑约束函数训练头部生成网络,从而保证生成的视频的时序一致性,提高生成的视频中头部图像的稳定性。
第四步:利用头部分割算法得到替身的头部图像和演员的头部生成图像的掩膜区域,并对掩膜区域进行腐蚀处理。
该步骤是换头的预处理操作,用来解决不同人物角色脖子处的不协调与肤色、背景不一致性问题。对于演员的头部生成图像以及对应的替身的头部图像,通过人头分割方法得到两者人头的掩膜(Mask)区域,基于掩膜将演员的头部生成图像替换到对应的替身图像上。由于不同人的脖子可能存在不协调性和不一致性,对脖子区域进行腐蚀处理,得到了抹去脖子区域的图片。
第五步:利用头部融合网络对腐蚀处理后的帧图像中的掩膜区域进行修复。
为了使得最终得到的头部替换图像具有协调一致的视觉效果,基于第四步处理后的图像,通过训练头部修复网络(HPN)对脖子处进行修复。
第六步:生成换头视频。
通过前述五个步骤,针对每一帧替身的图像,都可以生成与其对应的替换成演员头部的图像。再将生成的图像逐帧拼接,可最终实现视频中的自动换头。
图10为根据本申请另一实施例的模型训练装置的结构示意图。如图10所示,该装置可以包括:
第一获取单元100,用于获取第一对象的视频数据;
第一提取单元200,用于从第一对象的视频数据的帧图像中提取第一对象的头部图像以及头部图像中的关键点;
第一生成单元300,用于根据关键点生成第一对象的人脸轮廓图;
训练单元400,用于利用第一对象的人脸轮廓图和第一对象的头部图像训练头部生成模型,使得训练好的头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
在一种实施方式中,人脸轮廓图用于表征人物的表情信息和/或姿势信息。
在一种实施方式中,头部生成模型包括生成式对抗网络。
在一种实施方式中,训练单元400还用于:
利用时序平滑约束函数训练头部生成模型。
在一种实施方式中,时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
在一种实施方式中,时序平滑约束函数包括:
Figure 770810DEST_PATH_IMAGE001
Figure 742177DEST_PATH_IMAGE002
其中,
Figure 874081DEST_PATH_IMAGE045
表示生成器;
Figure 930899DEST_PATH_IMAGE031
表示判别器;
Figure 540872DEST_PATH_IMAGE046
表示时序平滑约束函数的损失值;
Figure 304429DEST_PATH_IMAGE026
表示数学期望;
Figure 669551DEST_PATH_IMAGE047
表示人脸轮廓图;
Figure 416927DEST_PATH_IMAGE048
表示当前帧的第一对象的人脸轮廓图;
Figure DEST_PATH_IMAGE049
表示前一帧的第一对象的人脸轮廓图;
Figure DEST_PATH_IMAGE050
表示第一对象的头部图像;
Figure 689645DEST_PATH_IMAGE036
表示当前帧的第一对象的头部图像;
Figure 573288DEST_PATH_IMAGE020
表示前一帧的第一对象的头部图像。
在一种实施方式中,训练单元400还用于:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练头部生成模型。
图11为根据本申请另一实施例的图像生成装置的结构示意图。如图11所示,该装置可以包括:
第二获取单元500,用于获取第二对象的视频数据;
第二提取单元600,用于从第二对象的视频数据的帧图像中提取第二对象的头部图像以及头部图像中的关键点;
第二生成单元700,用于根据关键点生成对应于帧图像的第二对象的人脸轮廓图;
第三生成单元800,用于将第二对象的人脸轮廓图输入头部生成模型,得到对应于帧图像的第一对象的头部生成图像;其中,头部生成模型为采用上述任一项的模型训练装置得到的模型。
图12为根据另一本申请实施例的图像生成装置的结构示意图。如图12所示,在一种实施方式中,上述装置还包括修复单元900,修复单元900用于:
利用头部分割算法得到对应于帧图像的第一对象的头部生成图像的掩膜区域和第二对象的头部图像的掩膜区域;
基于掩膜区域对帧图像进行处理,将第一对象的头部生成图像替换到第二对象的头部图像上;
对替换后的帧图像中的掩膜区域进行腐蚀处理;
利用头部融合模型对腐蚀处理后的帧图像中的掩膜区域进行修复。
在一种实施方式中,头部融合模型为采用上述任一项的模型训练装置得到的模型。
在一种实施方式中,上述装置还包括拼接单元950,拼接单元950用于:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图13为用来实现本申请实施例的电子设备的框图。如图13所示,该电子设备包括:存储器910和处理器920,存储器910内存储有可在处理器920上运行的计算机程序。处理器920执行该计算机程序时实现上述实施例中的模型训练方法和图像生成方法。存储器910和处理器920的数量可以为一个或多个。
该电子设备还包括:
通信接口930,用于与外界设备进行通信,进行数据交互传输。
如果存储器910、处理器920和通信接口930独立实现,则存储器910、处理器920和通信接口930可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(PeripheralComponentInterconnect,PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器910、处理器920及通信接口930集成在一块芯片上,则存储器910、处理器920及通信接口930可以通过内部接口完成相互间的通信。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本申请实施例中提供的方法。
本申请实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本申请实施例提供的方法。
本申请实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以包括随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory ,DRAM) 、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (24)

1.一种模型训练方法,其特征在于,包括:
获取第一对象的视频数据;
从所述第一对象的视频数据的帧图像中提取第一对象的头部图像以及所述头部图像中的关键点;
根据所述关键点生成第一对象的人脸轮廓图;
利用所述第一对象的人脸轮廓图和所述第一对象的头部图像训练头部生成模型,使得训练好的所述头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
2.根据权利要求1所述的方法,其特征在于,所述人脸轮廓图用于表征人物的表情信息和/或姿势信息。
3.根据权利要求1或2所述的方法,其特征在于,所述头部生成模型包括生成式对抗网络。
4.根据权利要求3所述的方法,其特征在于,利用所述第一对象的人脸轮廓图和所述第一对象的头部图像训练头部生成模型,包括:
利用时序平滑约束函数训练所述头部生成模型。
5.根据权利要求4所述的方法,其特征在于,所述时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
6.根据权利要求5所述的方法,其特征在于,所述时序平滑约束函数包括:
Figure 313717DEST_PATH_IMAGE001
Figure 27595DEST_PATH_IMAGE002
其中,
Figure 135228DEST_PATH_IMAGE003
表示生成器;
Figure 796017DEST_PATH_IMAGE004
表示判别器;
Figure 469444DEST_PATH_IMAGE005
表示时序平滑约束函数的损失值;
Figure 823065DEST_PATH_IMAGE006
表示数学期望;
Figure 886836DEST_PATH_IMAGE007
表示人脸轮廓图;
Figure 413632DEST_PATH_IMAGE008
表示当前帧的第一对象的人脸轮廓图;
Figure 879248DEST_PATH_IMAGE009
表示前一帧的第一对象的人脸轮廓图;
Figure 200508DEST_PATH_IMAGE010
表示第一对象的头部图像;
Figure 751575DEST_PATH_IMAGE011
表示当前帧的第一对象的头部图像;
Figure 19746DEST_PATH_IMAGE012
表示前一帧的第一对象的头部图像。
7.根据权利要求3所述的方法,其特征在于,利用所述第一对象的人脸轮廓图和所述第一对象的头部图像训练头部生成模型,包括:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练所述头部生成模型。
8.一种图像生成方法,其特征在于,包括:
获取第二对象的视频数据;
从所述第二对象的视频数据的帧图像中提取第二对象的头部图像以及所述头部图像中的关键点;
根据所述关键点生成对应于所述帧图像的第二对象的人脸轮廓图;
将所述第二对象的人脸轮廓图输入头部生成模型,得到对应于所述帧图像的第一对象的头部生成图像;其中,所述头部生成模型为采用权利要求1至7任一项所述的模型训练方法得到的模型。
9.根据权利要求8所述的方法,其特征在于,将所述第二对象的人脸轮廓图输入头部生成模型,得到对应于所述帧图像的第一对象的头部生成图像之后,还包括:
利用头部分割算法得到对应于所述帧图像的所述第一对象的头部生成图像的掩膜区域和所述第二对象的头部图像的掩膜区域;
基于所述掩膜区域对所述帧图像进行处理,将所述第一对象的头部生成图像替换到所述第二对象的头部图像上;
对替换后的所述帧图像中的掩膜区域进行腐蚀处理;
利用头部融合模型对腐蚀处理后的所述帧图像中的掩膜区域进行修复。
10.根据权利要求9所述的方法,其特征在于,所述头部融合模型为采用权利要求1至7任一项所述的模型训练方法得到的模型。
11.根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
12.一种模型训练装置,其特征在于,包括:
第一获取单元,用于获取第一对象的视频数据;
第一提取单元,用于从所述第一对象的视频数据的帧图像中提取第一对象的头部图像以及所述头部图像中的关键点;
第一生成单元,用于根据所述关键点生成第一对象的人脸轮廓图;
训练单元,用于利用所述第一对象的人脸轮廓图和所述第一对象的头部图像训练头部生成模型,使得训练好的所述头部生成模型根据第二对象的人脸轮廓图得到第一对象的头部生成图像。
13.根据权利要求12所述的装置,其特征在于,所述人脸轮廓图用于表征人物的表情信息和/或姿势信息。
14.根据权利要求12或13所述的装置,其特征在于,所述头部生成模型包括生成式对抗网络。
15.根据权利要求14所述的装置,其特征在于,所述训练单元还用于:
利用时序平滑约束函数训练所述头部生成模型。
16.根据权利要求15所述的装置,其特征在于,所述时序平滑约束函数是基于连续两帧图像中的第一对象的人脸轮廓图、连续两帧图像中的第一对象的头部图像,以及连续两帧图像中的第一对象的头部生成图像构造的。
17.根据权利要求16所述的装置,其特征在于,所述时序平滑约束函数包括:
Figure 871027DEST_PATH_IMAGE001
Figure 97609DEST_PATH_IMAGE002
其中,
Figure 667131DEST_PATH_IMAGE003
表示生成器;
Figure 473413DEST_PATH_IMAGE004
表示判别器;
Figure 913621DEST_PATH_IMAGE005
表示时序平滑约束函数的损失值;
Figure 600121DEST_PATH_IMAGE006
表示数学期望;
Figure 125780DEST_PATH_IMAGE007
表示人脸轮廓图;
Figure 735753DEST_PATH_IMAGE008
表示当前帧的第一对象的人脸轮廓图;
Figure 827206DEST_PATH_IMAGE009
表示前一帧的第一对象的人脸轮廓图;
Figure 130011DEST_PATH_IMAGE010
表示第一对象的头部图像;
Figure 939704DEST_PATH_IMAGE011
表示当前帧的第一对象的头部图像;
Figure 87789DEST_PATH_IMAGE012
表示前一帧的第一对象的头部图像。
18.根据权利要求14所述的装置,其特征在于,所述训练单元还用于:
利用对抗损失函数、特征匹配损失函数和感知损失函数中的至少一种训练所述头部生成模型。
19.一种图像生成装置,其特征在于,包括:
第二获取单元,用于获取第二对象的视频数据;
第二提取单元,用于从所述第二对象的视频数据的帧图像中提取第二对象的头部图像以及所述头部图像中的关键点;
第二生成单元,用于根据所述关键点生成对应于所述帧图像的第二对象的人脸轮廓图;
第三生成单元,用于将所述第二对象的人脸轮廓图输入头部生成模型,得到对应于所述帧图像的第一对象的头部生成图像;其中,所述头部生成模型为采用权利要求12至18任一项所述的模型训练装置得到的模型。
20.根据权利要求19所述的装置,其特征在于,所述装置还包括修复单元,所述修复单元用于:
利用头部分割算法得到对应于所述帧图像的所述第一对象的头部生成图像的掩膜区域和所述第二对象的头部图像的掩膜区域;
基于所述掩膜区域对所述帧图像进行处理,将所述第一对象的头部生成图像替换到所述第二对象的头部图像上;
对替换后的所述帧图像中的掩膜区域进行腐蚀处理;
利用头部融合模型对腐蚀处理后的所述帧图像中的掩膜区域进行修复。
21.根据权利要求20所述的装置,其特征在于,所述头部融合模型为采用权利要求12至18任一项所述的模型训练装置得到的模型。
22.根据权利要求20或21所述的装置,其特征在于,所述装置还包括拼接单元,所述拼接单元用于:
将修复后的各帧图像逐帧拼接,得到将第二对象头部替换为第一对象头部的头部替换视频。
23.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储指令,所述指令由处理器加载并执行,以实现如权利要求1至11任一项所述的方法。
24.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述的方法。
CN202011289278.7A 2020-11-18 2020-11-18 模型训练方法、图像生成方法、装置、设备及存储介质 Pending CN112101320A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011289278.7A CN112101320A (zh) 2020-11-18 2020-11-18 模型训练方法、图像生成方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011289278.7A CN112101320A (zh) 2020-11-18 2020-11-18 模型训练方法、图像生成方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112101320A true CN112101320A (zh) 2020-12-18

Family

ID=73784629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011289278.7A Pending CN112101320A (zh) 2020-11-18 2020-11-18 模型训练方法、图像生成方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112101320A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112669228A (zh) * 2020-12-22 2021-04-16 厦门美图之家科技有限公司 图像处理方法、***、移动终端及存储介质
CN112927319A (zh) * 2021-02-25 2021-06-08 北京百度网讯科技有限公司 模型训练方法、图像处理方法、装置、设备及存储介质
CN113160799A (zh) * 2021-04-22 2021-07-23 北京房江湖科技有限公司 视频生成方法和装置、计算机可读存储介质、电子设备
WO2023039865A1 (zh) * 2021-09-17 2023-03-23 深圳市大疆创新科技有限公司 图像处理方法、视频处理方法、训练方法、设备、程序产品及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110349232A (zh) * 2019-06-17 2019-10-18 达闼科技(北京)有限公司 图像的生成方法、装置、存储介质和电子设备
CN111461959A (zh) * 2020-02-17 2020-07-28 浙江大学 人脸情绪合成方法及装置
CN111476871A (zh) * 2020-04-02 2020-07-31 百度在线网络技术(北京)有限公司 用于生成视频的方法和装置
CN111598977A (zh) * 2020-05-21 2020-08-28 北京中科深智科技有限公司 一种表情迁移并动画化的方法及***
CN111783647A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 人脸融合模型的训练方法、人脸融合方法、装置及设备
CN111860044A (zh) * 2019-04-26 2020-10-30 北京陌陌信息技术有限公司 人脸换脸方法、装置、设备及计算机存储介质
CN111860045A (zh) * 2019-04-26 2020-10-30 北京陌陌信息技术有限公司 人脸换脸方法、装置、设备及计算机存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860044A (zh) * 2019-04-26 2020-10-30 北京陌陌信息技术有限公司 人脸换脸方法、装置、设备及计算机存储介质
CN111860045A (zh) * 2019-04-26 2020-10-30 北京陌陌信息技术有限公司 人脸换脸方法、装置、设备及计算机存储介质
CN110349232A (zh) * 2019-06-17 2019-10-18 达闼科技(北京)有限公司 图像的生成方法、装置、存储介质和电子设备
CN111461959A (zh) * 2020-02-17 2020-07-28 浙江大学 人脸情绪合成方法及装置
CN111476871A (zh) * 2020-04-02 2020-07-31 百度在线网络技术(北京)有限公司 用于生成视频的方法和装置
CN111598977A (zh) * 2020-05-21 2020-08-28 北京中科深智科技有限公司 一种表情迁移并动画化的方法及***
CN111783647A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 人脸融合模型的训练方法、人脸融合方法、装置及设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112669228A (zh) * 2020-12-22 2021-04-16 厦门美图之家科技有限公司 图像处理方法、***、移动终端及存储介质
CN112669228B (zh) * 2020-12-22 2024-05-31 厦门美图之家科技有限公司 图像处理方法、***、移动终端及存储介质
CN112927319A (zh) * 2021-02-25 2021-06-08 北京百度网讯科技有限公司 模型训练方法、图像处理方法、装置、设备及存储介质
CN112927319B (zh) * 2021-02-25 2023-10-03 北京百度网讯科技有限公司 模型训练方法、图像处理方法、装置、设备及存储介质
CN113160799A (zh) * 2021-04-22 2021-07-23 北京房江湖科技有限公司 视频生成方法和装置、计算机可读存储介质、电子设备
WO2023039865A1 (zh) * 2021-09-17 2023-03-23 深圳市大疆创新科技有限公司 图像处理方法、视频处理方法、训练方法、设备、程序产品及存储介质

Similar Documents

Publication Publication Date Title
Kwon et al. Kodf: A large-scale korean deepfake detection dataset
CN111310624B (zh) 遮挡识别方法、装置、计算机设备及存储介质
US20210390706A1 (en) Detection model training method and apparatus, computer device and storage medium
CN112101320A (zh) 模型训练方法、图像生成方法、装置、设备及存储介质
CN110490896B (zh) 一种视频帧图像处理方法和装置
JP7476428B2 (ja) 画像の視線補正方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム
CN112419170B (zh) 遮挡检测模型的训练方法及人脸图像的美化处理方法
CN109815826B (zh) 人脸属性模型的生成方法及装置
CN109684925B (zh) 一种基于深度图像的人脸活体检测方法及设备
CN111354079A (zh) 三维人脸重建网络训练及虚拟人脸形象生成方法和装置
CN110490212A (zh) 钼靶影像处理设备、方法和装置
US11068746B2 (en) Image realism predictor
CN112529999A (zh) 一种参数估算模型的训练方法、装置、设备和存储介质
CN111539911B (zh) 一种口呼吸面容识别方法、设备和存储介质
CN113343878A (zh) 基于生成对抗网络的高保真人脸隐私保护方法和***
CN109063643B (zh) 一种用于脸部信息部分隐藏条件下的面部表情痛苦度识别方法
CN113706564A (zh) 基于多种监督方式的睑板腺分割网络的训练方法及装置
CN115689869A (zh) 一种视频美妆迁移方法及***
CN114973349A (zh) 面部图像处理方法和面部图像处理模型的训练方法
Zhao Just noticeable learning for unsupervised anomaly localization and detection
WO2022160773A1 (zh) 基于虚拟样本的行人重识别方法
CN111275778B (zh) 人脸简笔画生成方法及装置
CN115862119B (zh) 基于注意力机制的人脸年龄估计方法及装置
Gonzalez-Soler et al. Semi-synthetic data generation for tattoo segmentation
CN113012030A (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