CN110930500A - 一种基于单视角视频的动态头发建模方法 - Google Patents
一种基于单视角视频的动态头发建模方法 Download PDFInfo
- Publication number
- CN110930500A CN110930500A CN201911172935.7A CN201911172935A CN110930500A CN 110930500 A CN110930500 A CN 110930500A CN 201911172935 A CN201911172935 A CN 201911172935A CN 110930500 A CN110930500 A CN 110930500A
- Authority
- CN
- China
- Prior art keywords
- hair
- frame
- dimensional
- network
- obtaining
- 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
Links
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度神经网络的单目动态头发建模方法,该方法将包含头发运动的视频通过预处理得到的二维信息序列,利用两个深度神经网络分别得到三维空间中头发的方向场和前后向运动场,再使用相邻帧间的信息以及头发生长算法进行迭代优化,得到与输入视频对应的连续动态变化的头发模型。本发明是第一个应用深度学习技术解决基于单视角视频的动态头发建模问题的方法,可以从单视角视频中建模出高质量的三维头发运动模型。
Description
技术领域
本发明属于计算机图形学领域,尤其涉及一种基于神经网络单视角动态头发建模方法。
背景技术
三维头发建模一直都是图形学领域的一个重要问题。图形学领域已经有很多高质量的基于图片的静态头发建模技术(M.Chai et al.AutoHair:Fully Automatic HairModeling from a single portrait photo TOG 2016)。当前最好的基于视频的动态头发建模方法由Z.Xu et al.提出(Dynamic Hair Capture Using Spacetime OptimizationTOG 2014),但是该技术需要多视角的相机以及光源阵列,成本较高。而另一个轻量级的基于单视频动态头发建模技术(M.Chai et al.Dynamic Hair Manipulation in Images andVideos TOG 2013)则是通过先建立头发的静态模型再进行变形得到动态模型,因而无法得到稳定的结果,只适用于简单的发型和动作。本发明是第一个应用深度学习技术解决基于单视角视频的动态头发建模问题的方法,并且对于现实拍摄的头发视频能够给出合理的建模结果。
发明内容
本发明的目的在于针对现有技术的不足,提供一种基于单视角视频的动态头发建模技术。
本发明是通过以下技术方案来实现的,一种基于单视角视频的动态头发建模方法,包括以下步骤:
步骤一:将含有运动头发的单视角视频通过人脸关键点匹配算法获得每一帧的头部位姿,结合人头模型得到二维深度图序列;将视频通过头发检测算法,得到每一帧的二维头发生长方向图、二维头发置信图。
步骤二:将步骤一得到的二维深度图序列、二维头发生长方向图、二维头发置信图分别通过两个训练好的深度神经网络,得到对应的三维信息;其中,两个训练好的深度神经网络分别为空间网络和时间网络,空间网络用于得到每一帧头发的三维掩码以及头发空间生长方向,而时间网络则用于得到每一帧头发所在空间相对于上一帧以及下一帧对应空间的偏移量。
步骤三:对于每一帧的头发三维掩码以及头发空间生长方向,利用头发生长算法以及相邻帧间的偏移量获得头发估计并迭代优化得到每一帧的头发。
进一步地,所述步骤二具体为:
(2.1)构建和训练空间网络:所述空间网络由降采样部分,中间连接部分和升采样部分以及一个判别器网络构成。降采样部分由四个卷积层构成,每个卷积层之后都进行最大值池化;升采样部分由四个升采样反卷积网络层构成。中间连接部分是由2D转3D的可学习模块toVoxel承接;空间网络使用USC-HairSalon数据集的343个静态发型以及动态数据集进行训练;其中,三维掩码训练的损失函数为二元交叉熵,头发空间生长方向训练的损失函数为L1损失函数;
(2.2)构建和训练时间网络:所述时间网络由降采样部分,中间连接部分和升采样部分构成。降采样部分由四个卷积层构成,每个卷积层之后都进行最大值池化;升采样部分由四个升采样反卷积网络层构成。中间连接部分由可学习模块toVoxel承接。时间网络利用三个发型通过仿真系统得到动态数据后进行训练,训练的损失函数采用L1损失函数;
进一步地,所述步骤三通过以下子步骤来实现:
(3.1)基于步骤二得到的每一帧的头发空间生长方向,使用头发生长算法得到每一帧的初始头发估计;
(3.2)当前帧的初始头发估计、以及相邻帧的初始头发估计结合步骤二得到的相邻帧间的偏移量得到当前帧的头发的多个估计,求带权平均值,得到当前帧头发的新的估计;
(3.3)基于步骤3.2得到的头发的估计,根据步骤二得到的头发空间生长方向进行局部约束优化;
(3.4)迭代步骤3.2和步骤3.3;迭代多次后得到每一帧的头发。
本发明的有益效果是,本发明首次提出了利用深度学习技术解决基于单视角视频的动态头发建模问题的方法,借助深度神经网络估计三维头发生长方向以及相邻帧间头发运动方向,并通过头发生长算法以及相关优化完成头发的动态建模。本发明取得的效果可媲美当今借助多视角摄像机以及光源阵列的方法取得的效果。
附图说明
图1是本发明针对单目视频利用深度神经网络重建动态头发的整体流程示意图。
图2是本发明中两个深度卷积神经网络的结构示意图。
图3是本发明方法的头发建模结果图。
具体实施方式
如前所述,我们的训练数据包括两个集合:动态集合和静态集合。我们在两个集合上训练空间网络(HairSpatNet),而在动态集合上训练时间网络(HairTempNet)。
动态集。我们使用类似于\cite{selle2008mass}的质量弹簧模型来生成动态头发的序列。模拟系统的输入包括两个部分:静止状态的头发和驱动头发运动的一系列外力。我们选择三种高质量的发型,并使用典型的头部运动(包括横摇,俯仰和其他随机运动)以及随机风力来生成动态的头发顺序。基于这些运动,我们的完整模拟会为每个发型生成一个带有1000帧的动画。然后,我们通过水平翻转每根头发来增强数据,并获得6000帧的训练集。我们还通过更改力并为每个发型重新生成具有100帧的动画(总共300帧)来准备测试集。
静态集。为了涵盖各种发型,我们从USC-HairSalon数据集中收集了343种静态发型。我们还通过绕$z$轴旋转数据并将它们水平翻转以获得3430种不同的头发来扩充数据。然后,我们将整个静态集合随机分为3230根头发的训练集和200根头发的测试集。
对于HairSpatNet,我们使用U-Net架构用于此任务。我们的见解来自两个方面。首先,U-Net的收缩部分可以将高维输入映射到一个潜在空间,该潜在空间由扩展部分逐渐解码以了解整体形状。其次,其跳过连接(skip connection)可以帮助将更多细节注入解码过程。但是,当前的U-Net体系结构主要设计用于图像到图像任务。它不能在这里直接应用。因此,我们通过插入一个可学习的\emph{toVoxel}模块来修改2D和3D功能之间的跳过连接,从而修改了原始架构。\emph{toVoxel}模块首先使用卷积层来更改通道号,然后重塑形状并转置特征以使其与3D特征兼容,然后执行基于3D卷积的两个优化步骤。图2显示了我们的\emph{HairSpatNet}的体系结构,具体地,由降采样部分,中间连接部分和升采样部分以及一个判别器网络构成。我们使用两个分支来学习占用和方向字段。输入$\mathcal{X}^{t}$的形状为$1024\times1024\times 4$。我们首先使用三个下采样模块将$\mathcal{X}^{t}$转换为$128\times128\times 32$,然后将其输入到我们的U-Net中。压缩部分有4个下采样模块,分别具有$(32,64,128,256)$输出通道。扩展部分具有4个上采样模块,其中掩膜的输出通道为$(64、32、16、1)$,方向场的输出通道为$(64、32、16、3)$。由于收缩部分提取2D特征,而扩展部分处理3D特征,因此我们使用可学习的\emph{toVoxel}模块来构建特征跳过连接。最后的上采样层不使用实例规范化(Instance Normalization)。空间网络输入是单帧的,每一帧有三张map,包括一个方向图、一个置信图、一个深度图,输出是两个场,一个字段场,一个方向场,即三维掩码以及头发空间生长方向。
对于HairSpatNet,我们主要分别使用两套loss来回归几何信息,分别对应头发方向场和掩膜。对于掩膜,我们使用传统的二元交叉熵,对于头发方向场,我们使用传统的L1损失函数。使用Adam优化器。网络的初始学习率为$0.0001$。
我们的\emph{HairTempNet}也是经过修改的U-Net架构,由降采样部分,中间连接部分和升采样部分构成。降采样部分由四个卷积层构成,每个卷积层之后都进行最大值池化;升采样部分由四个升采样反卷积网络层构成。中间连接部分由可学习模块toVoxel承接。HairTempNet可以学习全局运动和局部细节。我们首先对输入进行下采样以提取特征,然后使用两个独立的分支来学习双向扭曲字段。我们的\emph{HairTempNet}与我们的\emph{HairSpatNet}有三个主要区别。首先,所有实例标准化层(Instance Normalization)都已删除,以避免标准化运动范围。第二个是两个扩展分支的输出通道都是(64,32,16,3)。第三,我们不使用任何鉴别器,因为我们发现它会引入许多噪声。时间网络的输入是两帧的六张map输出是两个方向场。
对于HairTempNet,我们使用传统的L1损失函数来回归运动场。使用Adam优化器。网络的初始学习率为$0.0001$。
网络训练完成之后就可以作用于整个三维动态头发建模的流水线中,按照本发明阐述的技术方案,本发明需要在针对点云的三维头发建模过程中完成以下步骤:
步骤一:将含有运动头发的单视角视频通过人脸关键点匹配算法(X.Cao,Y.Wei,F.Wen,J.Sun,Face alignment by explicit shape regression,International Journalof Computer Vision 107(2)(2014)177-190.)获得每一帧的头部位姿,结合人头模型(使用3DMax软件创建的一个标准人头模型)得到二维深度图序列;将视频通过头发检测算法,得到每一帧的二维头发生长方向图、二维头发置信图(见图1左起第二列)。头发生长方向图和置信图的生成方式优选(Hair-GANs:Recovering 3D Hair Structure from a SingleImage Meng Zhang and Youyi Zheng Visual Informatics 2019volume 3,issue 2)论文中提供的方法,但不限于此。
步骤二:将得到的二维信息分别通过两个训练好的深度神经网络,得到对应的三维信息,其中,空间网络用于得到每一帧头发的三维掩码以及头发空间生长方向,而时间网络则用于得到每一帧头发所在空间相对于上一帧以及下一帧对应空间的偏移量。空间网络具体网络结构如图2所示。
步骤三:对于每一帧三维头发掩码以及头发生长方向,利用头发生长算法以及相邻帧间的偏移信息迭代优化得到每一帧的头发。其中具体包括:
(3.1)基于步骤二得到的每一帧的头发方向场,使用头发生长算法得到初始头发。头发生长算法可以采用(Hair-GANs:Recovering 3D Hair Structure from a SingleImage Meng Zhang and Youyi Zheng Visual Informatics 2019volume 3,issue 2)论文中的方法;
(3.2)基于当前帧头发的估计以及相邻头发结合步骤二得到的相邻帧间的偏移量得到当前帧的头发的多个估计,求带权平均值,得到当前帧头发的新的估计;计算公式如下:
(3.3)基于步骤3.2得到的头发的估计,根据步骤二得到的方向场进行局部约束优化;具体局部优化是求解一个线性方程组,算法参见论文中方法(Dynamic Hair CaptureUsing Spacetime Optimization ACM Transactions on Graphics.2014,volume 33,number 6.);
(3.4)迭代步骤3.2和步骤3.3;本实施方式中,迭代10次得到每一帧的头发。
图3是采用测试集通过本发明方法得到的头发建模结果,可以看出本发明取得的效果可媲美当今借助多视角摄像机以及光源阵列的方法取得的效果。
Claims (3)
1.一种基于单视角视频的动态头发建模方法,其特征在于,包括以下步骤:
步骤一:将含有运动头发的单视角视频通过人脸关键点匹配算法获得每一帧的头部位姿,结合人头模型得到二维深度图序列;将视频通过头发检测算法,得到每一帧的二维头发生长方向图、二维头发置信图。
步骤二:将步骤一得到的二维深度图序列、二维头发生长方向图、二维头发置信图分别通过两个训练好的深度神经网络,得到对应的三维信息;其中,两个训练好的深度神经网络分别为空间网络和时间网络,空间网络用于得到每一帧头发的三维掩码以及头发空间生长方向,而时间网络则用于得到每一帧头发所在空间相对于上一帧以及下一帧对应空间的偏移量。
步骤三:对于每一帧的头发三维掩码以及头发空间生长方向,利用头发生长算法以及相邻帧间的偏移量获得头发估计并迭代优化得到每一帧的头发。
2.根据权利要求1所述的基于单视角视频的动态头发建模方法,其特征在于,所述步骤二具体为:
(2.1)构建和训练空间网络:所述空间网络由降采样部分,中间连接部分和升采样部分以及一个判别器网络构成。降采样部分由四个卷积层构成,每个卷积层之后都进行最大值池化;升采样部分由四个升采样反卷积网络层构成。中间连接部分是由2D转3D的可学习模块toVoxel承接;空间网络使用USC-HairSalon数据集的343个静态发型以及动态数据集进行训练;其中,三维掩码训练的损失函数为二元交叉熵,头发空间生长方向训练的损失函数为L1损失函数;
(2.2)构建和训练时间网络:所述时间网络由降采样部分,中间连接部分和升采样部分构成。降采样部分由四个卷积层构成,每个卷积层之后都进行最大值池化;升采样部分由四个升采样反卷积网络层构成。中间连接部分由可学习模块toVoxel承接。时间网络利用三个发型通过仿真系统得到动态数据后进行训练,训练的损失函数采用L1损失函数。
3.根据权利要求1所述的基于单视角视频的动态头发建模方法,其特征在于,所述步骤三通过以下子步骤来实现:
(3.1)基于步骤二得到的每一帧的头发空间生长方向,使用头发生长算法得到每一帧的初始头发估计;
(3.2)当前帧的初始头发估计、以及相邻帧的初始头发估计结合步骤二得到的相邻帧间的偏移量得到当前帧的头发的多个估计,求带权平均值,得到当前帧头发的新的估计;
(3.3)基于步骤3.2得到的头发的估计,根据步骤二得到的头发空间生长方向进行局部约束优化;
(3.4)迭代步骤3.2和步骤3.3;迭代多次后得到每一帧的头发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911172935.7A CN110930500A (zh) | 2019-11-26 | 2019-11-26 | 一种基于单视角视频的动态头发建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911172935.7A CN110930500A (zh) | 2019-11-26 | 2019-11-26 | 一种基于单视角视频的动态头发建模方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110930500A true CN110930500A (zh) | 2020-03-27 |
Family
ID=69851983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911172935.7A Pending CN110930500A (zh) | 2019-11-26 | 2019-11-26 | 一种基于单视角视频的动态头发建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110930500A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111586444A (zh) * | 2020-06-05 | 2020-08-25 | 广州繁星互娱信息科技有限公司 | 视频处理方法、装置、电子设备及存储介质 |
WO2022221042A1 (en) * | 2021-01-27 | 2022-10-20 | Spree3D Corporation | Producing a digital image representation of a body |
WO2022222058A1 (zh) * | 2021-04-21 | 2022-10-27 | 浙江大学 | 一种基于神经网络插值器的多发型实时动画方法 |
US11769346B2 (en) | 2021-06-03 | 2023-09-26 | Spree3D Corporation | Video reenactment with hair shape and motion transfer |
US11836905B2 (en) | 2021-06-03 | 2023-12-05 | Spree3D Corporation | Image reenactment with illumination disentanglement |
US11854579B2 (en) | 2021-06-03 | 2023-12-26 | Spree3D Corporation | Video reenactment taking into account temporal information |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985192A (zh) * | 2018-06-29 | 2018-12-11 | 东南大学 | 一种基于多任务深度卷积神经网络的视频烟雾识别方法 |
-
2019
- 2019-11-26 CN CN201911172935.7A patent/CN110930500A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985192A (zh) * | 2018-06-29 | 2018-12-11 | 东南大学 | 一种基于多任务深度卷积神经网络的视频烟雾识别方法 |
Non-Patent Citations (2)
Title |
---|
LC YANG,ET AL.: "Dynamic Hair Modeling from Monocular Videos using Deep Neural Networks", 《ACM TRANS.GRAPH》 * |
YANG L,ET AL.: "Controlling Stroke Size in Fast Style Transfer with Recurrent Convolutional Neural Network", 《COMPUTER GRAPHICS FORUM》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111586444A (zh) * | 2020-06-05 | 2020-08-25 | 广州繁星互娱信息科技有限公司 | 视频处理方法、装置、电子设备及存储介质 |
CN111586444B (zh) * | 2020-06-05 | 2022-03-15 | 广州繁星互娱信息科技有限公司 | 视频处理方法、装置、电子设备及存储介质 |
WO2022221042A1 (en) * | 2021-01-27 | 2022-10-20 | Spree3D Corporation | Producing a digital image representation of a body |
US11663764B2 (en) | 2021-01-27 | 2023-05-30 | Spree3D Corporation | Automatic creation of a photorealistic customized animated garmented avatar |
WO2022222058A1 (zh) * | 2021-04-21 | 2022-10-27 | 浙江大学 | 一种基于神经网络插值器的多发型实时动画方法 |
US11769346B2 (en) | 2021-06-03 | 2023-09-26 | Spree3D Corporation | Video reenactment with hair shape and motion transfer |
US11836905B2 (en) | 2021-06-03 | 2023-12-05 | Spree3D Corporation | Image reenactment with illumination disentanglement |
US11854579B2 (en) | 2021-06-03 | 2023-12-26 | Spree3D Corporation | Video reenactment taking into account temporal information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110930500A (zh) | 一种基于单视角视频的动态头发建模方法 | |
CN113362223B (zh) | 基于注意力机制和双通道网络的图像超分辨率重建方法 | |
CN109255831B (zh) | 基于多任务学习的单视图人脸三维重建及纹理生成的方法 | |
CN109509152B (zh) | 一种基于特征融合的生成对抗网络的图像超分辨率重建方法 | |
CN111652966B (zh) | 一种基于无人机多视角的三维重建方法及装置 | |
CN103945208B (zh) | 一种针对多视点裸眼3d显示的并行同步缩放引擎及方法 | |
CN111739082B (zh) | 一种基于卷积神经网络的立体视觉无监督深度估计方法 | |
CN107358576A (zh) | 基于卷积神经网络的深度图超分辨率重建方法 | |
CN110728219A (zh) | 基于多列多尺度图卷积神经网络的3d人脸生成方法 | |
CN106780592A (zh) | 基于相机运动和图像明暗的Kinect深度重建算法 | |
CN105184253A (zh) | 一种人脸识别方法和人脸识别系统 | |
CN112019828B (zh) | 一种视频的2d到3d的转换方法 | |
CN113762147B (zh) | 人脸表情迁移方法、装置、电子设备及存储介质 | |
CN112785502B (zh) | 一种基于纹理迁移的混合相机的光场图像超分辨率方法 | |
CN110349087A (zh) | 基于适应性卷积的rgb-d图像高质量网格生成方法 | |
CN110197505A (zh) | 基于深度网络及语义信息的遥感图像双目立体匹配方法 | |
CN111968123A (zh) | 一种半监督视频目标分割方法 | |
CN110188667B (zh) | 一种基于三方对抗生成网络的人脸摆正方法 | |
CN113538243B (zh) | 基于多视差注意力模块组合的超分辨图像重建方法 | |
CN112819951A (zh) | 一种基于深度图修复的带遮挡三维人体重建方法 | |
CN114757862B (zh) | 用于红外光场设备的图像增强渐进式融合方法 | |
CN110070605A (zh) | 一种实时人体无标记动作捕获方法 | |
CN112184555B (zh) | 一种基于深度交互学习的立体图像超分辨率重建方法 | |
CN116934972A (zh) | 一种基于双流网络的三维人体重建方法 | |
CN116797640A (zh) | 一种面向智能伴行巡视器的深度及3d关键点估计方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200327 |