CN108197555A - 一种基于人脸追踪的实时人脸融合方法 - Google Patents
一种基于人脸追踪的实时人脸融合方法 Download PDFInfo
- Publication number
- CN108197555A CN108197555A CN201711462802.4A CN201711462802A CN108197555A CN 108197555 A CN108197555 A CN 108197555A CN 201711462802 A CN201711462802 A CN 201711462802A CN 108197555 A CN108197555 A CN 108197555A
- Authority
- CN
- China
- Prior art keywords
- face
- profile point
- vertex
- textures
- intensive
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
Abstract
本发明公开了一种基于人脸追踪的实时人脸融合方法,包括以下步骤:预处理阶段:生成基准正脸图像的人脸贴图,拟合所述人脸贴图的三角网格后,确定所述三角网格上顶点与密集轮廓点之间的关系,并基于所述密集轮廓点生成蒙版图和透明通道图;人脸融合阶段:生成待融合正脸图像的人脸贴图,利用所述蒙版图和透明通道图对所述人脸贴图处理后,根据所述顶点与密集轮廓点之间的关系,实时计算视频帧中人脸的融合人脸贴图,再根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸。该方法可以实时地生成能与视频帧中的人脸相融合的融合人脸贴图,并实时地将人脸贴图绘制到视频帧中,达到人脸融合效果。
Description
技术领域
本发明涉及图像处理及图形绘制技术领域,尤其涉及一种基于人脸追踪的实时人脸融合方法。
背景技术
图像融合是一项重要且有用的图像编辑操作。直接将图像块复制到另一幅图像上而不经过任何处理得到的结果并不能产生真实感。通常,将图像块复制到另一幅图像上,需要对图像块的边缘进行处理,使边缘在另一幅图像上能够融合在一起。图像融合有两种主要的方法:基于梯度域的方法和基于坐标的方法。
基于梯度域的方法,主要是通过求解一个大的稀疏的线性系统——泊松方程。此类方法通常是保证融合的图像上图像块的区域的梯度来自图像块,同时融合的边缘满足某些条件,以此构造泊松方程。尽管有许多研究者对求解方法作出了改进,但求解泊松方程仍是比较耗时且耗空间的。基于梯度域的方法,可以参考以下论文:Pérez P,Gangnet M,Blake A.Poisson image editing[C]//ACM Transactions on graphics(TOG).ACM,2003,22(3):313-318.;Agarwala A.Efficient gradient-domain compositing usingquadtrees[C]//ACM Transactions on Graphics(TOG).ACM,2007,26(3):94.。
基于坐标的方法与基于梯度的方法不同的是:基于坐标的方法无需求解泊松方程,而是通过寻找图像块内部像素与轮廓点之间的某种线性关系,从而实现快速求解。并且由于此类方法的高度并行化,使其很容易在GPU上实现。基于坐标的方法,可以参考以下论文:Farbman Z,Hoffer G,Lipman Y,et al.Coordinates for instant image cloning[C]//ACM Transactions on Graphics(TOG).ACM,2009,28(3):67.。
人脸追踪与识别是指识别视频中人脸的位置、表情等信息,重建人脸网格模型的过程。根据视频的不同,主要有基于RGB-D摄像头的方法和基于RGB摄像头的方法,可以参考以下论文:Weise T,Bouaziz S,Li H,et al.Realtime performance-based facialanimation[C]//ACM transactions on graphics(TOG).ACM,2011,30(4):77.;Cao C,HouQ,Zhou K.Displaced dynamic expression regression for real-time facialtracking and animation[J].ACM Transactions on graphics(TOG),2014,33(4):43.。
通过建立人脸网格模型数据库,将人脸网格模型分为身份和表情两个纬度,可以得到任意一个人的任意表情的人脸网格模型。通过身份纬度,对多个人的相同表情的人脸网格模型进行加权平均,可以得到任意一个人的这个表情的人脸网格模型。通过表情纬度,对同一个人的不同表情进行加权平均,可以得到这个人的任意表情的人脸网格模型。人脸网格模型数据库的建立,可以参考以下论文:Cao C,Weng Y,Zhou S,etal.Facewarehouse:A3d facial expression database for visual computing[J].IEEETransactions on Visualization and Computer Graphics,2014,20(3):413-425.。
发明内容
本发明的目的是提供一种基于人脸追踪的实时人脸融合方法,以解决在直播、短视频以及相关视频领域中,将用户脸部换成其他人脸部的过程中出现的融合问题。
为实现上述发明目的,本发明提供以下技术方案:
一种基于人脸追踪的实时人脸融合方法,包括以下步骤:
预处理阶段:生成基准正脸图像的人脸贴图,拟合所述人脸贴图的三角网格后,确定所述三角网格上顶点与密集轮廓点之间的关系,并基于所述轮廓点生成蒙版图和透明通道图,生成待融合正脸图像的人脸贴图,利用所述蒙版图和透明通道图对所述人脸贴图处理;
人脸融合阶段:根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图,再根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸。
该方法可以实时地生成能与视频帧中的人脸相融合的人脸贴图,并实时地将人脸贴图绘制到视频帧中,达到人脸融合效果。
预处理阶段首先确定人脸融合方法的通用数据,该通用数据为该预处理阶段确定的三角网格、三角网格上顶点与密集轮廓点之间的关系以及蒙版图和透明通道图。本实施例中通过一个基准正脸图像确定这些通用数据,基准正脸图像来自于任意一张正脸图像即可,并不限定基准正脸图像的特点。通用数据确定完毕后,后面根据这些通用数据确定待融合正脸图像的人脸贴图。在本发明提供的方法中,只进行一次数据预处理,因此,节省人脸融合阶段的计算开销,大大提升了实时人脸绘制速度。
其中,所述生成基准正脸图像的人脸贴图包括:
采用人脸追踪与识别方法对基准正脸图像进行识别,获得人脸网格模型、摄像机矩阵、投影矩阵,并根据所述摄像机矩阵和投影矩阵将所述人脸网格模型投影到图像空间;
将图像空间上三角形内像素映射到纹理空间上三角形内的像素,生成人脸贴图。
具体地,所述将图像空间上三角形内像素映射到纹理空间上三角形内的像素,生成人脸贴图包括:
对于每个三角形:
在纹理空间中,计算三角形覆盖的每个像素p的重心坐标;
根据所述重心坐标、三角形在图像空间中对应的位置,计算每个像素在图像空间中的位置坐标p′;
通过在图像空间对位置坐标p′上下左右四个像素进行双线性插值,得到p′的颜色,该颜色也为p的颜色,至此,生成人脸贴图。
在生成人脸贴图的过程中,通过以上方式,确定每个三角形的图像空间坐标和纹理空间坐标,然后,通过双线性插值的方式填补映射过程中像素的丢失,以获得更清晰、更准确的人脸贴图。
其中,所述拟合所述人脸贴图的三角网格包括:
输入连线构成凸多边形的稀疏轮廓点;
在相邻两个稀疏轮廓点之间按一定距离进行插值,得到密集轮廓点;
使用Constrained Delaunay Triangulations方法,并加入相邻两个密集的轮廓点之间有边的约束,拟合三角网格。
其中,所述确定所述三角网格上顶点与密集轮廓点之间的关系包括:
对于三角网格上的每个顶点,在密集轮廓点上进行分层次采样,并根据采样结果,计算顶点与采样结果的连接关系,以确定所述三角网格上顶点与密集轮廓点之间的关系。
其中,所述基于所述轮廓点生成蒙版图和透明通道图包括:
将密集轮廓点所围成的区域均匀向外扩大到原来的1.01~1.1倍,白色填充扩大后的区域,得到蒙版图;
将密集轮廓点所围成的区域均匀向内缩小到原来的0.90~0.99倍,白色填充缩小后的区域后,高斯模糊所述缩小后的区域,得到透明通道图。
蒙版图是为了对人脸贴图进行压缩。所使用的人脸贴图上位于蒙版图白色区域以外的区域,将被黑色填充,只保留蒙版图白色区域以内的区域,从而达到压缩人脸贴图文件大小的效果。为保证能够在人脸贴图上读到轮廓点的颜色,需要将保留区域扩大一定区域。透明通道图是为了确定显示区域。显示区域确定后,需要对透明通道图进行高斯模糊,其作用是使边缘过渡自然。蒙版图与透明通道图的组合使用,能够保证轮廓点位置有人脸贴图上的颜色信息,同时又在实时绘制时从轮廓往人脸中心自然过渡。
在确定完上述通用数据后,需要确定与所换人脸相关的个性化数据,该个性化数据为待融合的人脸贴图,该人脸贴图具有人脸差异性,因此叫个性化数据。具体地,生成待融合正脸图像的人脸贴图的步骤与上述生成基准正脸图像的人脸贴图是相同的,并没有特殊的限定。
其中,利用所述蒙版图和透明通道图对所述人脸贴图处理包括:
将所述人脸贴图在蒙版图上对应位置为黑色的像素设置为黑色;
将应用蒙版后的人脸贴图的透明通道用透明通道图的透明通道替换。
利用蒙版图和透明通道图对待融合正脸图像的人脸贴图进行处理,能够使得该过程生成的人脸贴图的边缘过渡自然,提升后续人脸绘制的质量。
在确定待融合的人脸贴图的过程中,还可以采用人脸追踪与识别方法对待融合正脸图像进行识别,得到人脸对应的身份系数,该身份系数后续用于计算融合人脸网格模型,实现对人脸的实时绘制。
在确定上述个性化数据后,即进行人脸的实时融合步骤。具体地,
所述根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图包括:
(a)采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸的人脸网格模型,将该人脸网格模型投影到图像空间后,计算得到视频帧上的密集轮廓点;
其中,所述将该人脸网格模型投影到图像空间后,计算得到视频帧上的密集轮廓点包括:
根据稀疏轮廓点在人脸网格模型上的顶点索引,得到视频帧中稀疏轮廓点的三维坐标,并将所述三维坐标投影到图像空间,得到视频帧中稀疏轮廓点的二维坐标;
根据预处理阶段相邻两个稀轮廓点之间插值点的个数,对视频帧中稀疏轮廓点的二维坐标进行插值,得到与预处理阶段得到的密集轮廓点数目相同的密集轮廓点;
(b)准备顶点着色器的顶点缓存,所述顶点缓存还包含纹理贴图上密集轮廓点坐标和视频帧上的密集轮廓点坐标,并绘制所述顶点缓存,得到所述视频帧上和纹理贴图上密集轮廓点像素颜色差的纹理;
(c)存储所述三角网格上顶点与密集轮廓点之间的关系至纹理中;
(d)准备顶点着色器的顶点缓存,顶点缓存中的数据为预处理阶段拟合的三角网格,每个顶点包括顶点在空间上的坐标、顶点序号、顶点的轮廓点采样数;
(e)绘制所述顶点缓存,得到视频帧中人脸的融合人脸贴图;
其中,所述绘制所述顶点缓存,得到视频帧中人脸的融合人脸贴图包括:
在顶点着色器阶段:
根据顶点序号、顶点的轮廓点采样数,从步骤(c)得到的纹理中读取该顶点的所有密集轮廓点采样;
对于每一组密集轮廓点采样,从步骤(b)得到的纹理中读取该组密集轮廓点的颜色差并乘上采样得到的权重,作为该组密集轮廓点采样的颜色更新量;
该顶点的所有组密集轮廓点采样的颜色更新量之和作为顶点着色器的颜色更新量输出;
在片段着色器阶段:
处理后的人脸贴图的颜色值加上顶点着色器输出的颜色更新量,作为片段着色器的颜色输出。
在生成融合人脸贴图过程中,根据预处理阶段确定的密集轮廓点的个数以及稀疏轮廓点的位置来确定视频帧上密集轮廓点的位置,基于此,再结合计算通用数据过程中确定的纹理贴图上密集轮廓点的位置,生成顶点着色器的顶点缓存,对该顶点缓存绘制后,获得视频帧上和纹理贴图上密集轮廓点像素颜色差的纹理,该过程获得像素颜色差的纹理的目的是为了预计算轮廓点颜色差,避免同一个轮廓点的颜色差计算多遍,以提升计算速率。在此之后,再根据预处理阶段确定的三角网格上顶点与密集轮廓点之间的关系,生成融合人脸贴图。
其中,所述根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸包括:
采用人脸追踪与识别方法对待融合正脸图像进行识别,得到人脸对应的身份系数;
采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸对应的表情系数;
根据所述身份系数和所述表情系数计算获得融合人脸网格模型;
将所述融合人脸贴图作为纹理,将融合人脸网格模型绘制到视频帧上,实现对人脸的实时绘制。
在利用融合人脸贴图绘制人脸的过程中,获得人脸网格模型的身份系数来自于待融合正脸图像,若直接使用视频帧中的身份系数,由于人脸贴图是别人的,贴上去会失真,所以要用待融合正脸图像的人脸贴图对应的身份系数。表情系数来自视频帧图像,这样处理,确保获得融合人脸网格模型的准确性,以便将该人脸网格模型绘制到视频帧上,获得效果更好的人脸融合。
与现有技术相比,本发明具有的有益效果为:
本发明提供的方法可以实时地生成能与视频帧中的人脸相融合的融合人脸贴图,并实时地将人脸贴图绘制到视频帧中,达到人脸融合效果。
本发明提供的方法同时支持对人脸光照变化的感知,实时地将脸部光照变化反映到人脸贴图上。
附图说明
图1是实施例提供的基于人脸追踪的实时人脸融合方法的流程示意图;
图2(a)是实施例提供的正脸图像,图2(b)是对图2(a)处理生成的人脸贴图;
图3(a)是实施例提供的人脸贴图上的稀疏轮廓点,图3(b)是对图3(a)中的稀疏轮廓点插值处理后获得的密集轮廓点;
图4是实施例提供的经拟合获得的三角网格;
图5是实施例提供的三角网格上顶点对应的密集轮廓点采样后示意图;
图6(a)是实施例提供的未经过高斯模糊的人脸贴图,图6(b)是经过高斯模糊的人脸贴图;
图7是实施例提供的保存视频帧和纹理贴图上密集轮廓点像素颜色之差的纹理示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
本实施例提供的基于人脸追踪的实时人脸融合方法,包括以下两个阶段:
预处理阶段:生成基准正脸图像的人脸贴图,拟合所述人脸贴图的三角网格后,确定所述三角网格上顶点与密集轮廓点之间的关系,并基于所述密集轮廓点生成蒙版图和透明通道图,生成待融合正脸图像的人脸贴图,利用所述蒙版图和透明通道图对所述人脸贴图处理;
人脸融合阶段:根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图,再根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸。
通过这两个阶段,能够实时地生成能与视频帧中的人脸相融合的人脸贴图,并实时地将人脸贴图绘制到视频帧中,达到人脸融合效果。
图1是实施例提供的基于人脸追踪的实时人脸融合方法的流程示意图。参见图1,
在预处理阶段,具体包括:
S101,生成基准正脸图像的人脸贴图A。该步骤具体的过程为:
首先,采用人脸追踪与识别方法对基准正脸图像进行识别,获得人脸网格模型、摄像机矩阵、投影矩阵,并根据所述摄像机矩阵和投影矩阵将所述人脸网格模型投影到图像空间;
然后,将图像空间上三角形内像素映射到纹理空间上三角形内的像素,生成人脸贴图,具体地,对于每个三角形:
在纹理空间中,计算三角形覆盖的每个像素p的重心坐标;
根据所述重心坐标、三角形在图像空间中对应的位置,计算每个像素在图像空间中的位置坐标p′;
通过在图像空间对位置坐标p′上下左右四个像素进行双线性插值,得到p′的颜色,该颜色也为p的颜色,至此,生成人脸贴图。
在生成人脸贴图A的过程中,通过以上方式,确定每个三角形的图像空间坐标和纹理空间坐标,然后,通过双线性插值的方式填补映射过程中像素的丢失,以获得更清晰、更准确的人脸贴图A。
本实施例中,选择如图2(a)所示的图像作为基准正脸图像,并采用S101所述的方法生成人脸贴图,如图2(b)所示。在图2(b)中,没有侧脸等区域的信息,生成的人脸贴图只有脸部是有效区域。
S102,拟合人脸贴图A的三角网格。该步骤具体包括:
输入连线构成凸多边形的稀疏轮廓点;
在相邻两个稀疏轮廓点之间按一定距离进行插值,得到密集轮廓点;
使用Constrained Delaunay Triangulations方法,并加入相邻两个密集的轮廓点之间有边的约束,拟合三角网格。
本实施例采用的Constrained Delaunay Triangulations方法具体可以参考论文:Chew L P.Constrained delaunay triangulations[J].Algorithmica,1989,4(1-4):97-108.。
本实施例中,输入的稀疏轮廓点如图3(a)中的白色大点,经插值处理后的密集轮廓如图3(b)中的白色小点所示。如图3(a)中的黑色小点为纹理坐标点。拟合得到的三角网格如图4所示。
S103,确定三角网格上顶点与密集轮廓点之间的关系。本步骤具体包括:
对于三角网格上的每个顶点,在密集轮廓点上进行分层次采样,并根据采样结果,计算顶点与采样结果的连接关系,以确定三角网格上顶点与密集轮廓点之间的关系。
具体地,在密集轮廓点上进行分层次采样的具体过程为:
已知三角网格上的一个顶点v,密集轮廓点的集合{p0,p1,…,pN-1},N为密集轮廓点个数,为大于1的自然数;
(1)初始化:以一定采样间隔s0,对集合{p0,p1,…,pN-1}进行采样,得到候选的采样轮廓点集合T={(0,s0,0),(1,s0,0),…,(N-1,s0,0)},采样结果其中,(i,s,k)表示以采样间隔s采到第i个密集轮廓点,该采样属于第k层,s0为第0层的初始采样间隔;
(2)从集合T中取出一点(i,s,k),若s=1或满足以下条件,将(i,s)加到S中,并跳转执行步骤(4),其中,(i,s,k)表示以采样间隔s采到第i个密集轮廓点,该采样属于第k层;
条件:
‖v-pi‖>εdist
∠pi-s,v,pi<εang
∠pi,v,pi+s<εang
其中:
εang=0.75·0.8k
∠a,b,c为与所形成的弧度
(3)若(i-s,*)、(i,*)、(i+s,*)不在采样结果S中,则将相应的 加到T中;
(4)若集合T不为空,跳转执行步骤(2);
(5)顶点v的轮廓点采样结果为S。
具体地,对三角网格上的每一个顶点,根据密集的轮廓点采样结果,根据以下公式计算该顶点与采样结果的关系:
已知三角网格上的一个顶点v,密集的轮廓点集合{p0,p1,…,pN-1},顶点v的轮廓点采样结果为S;
λ0(v),…,λM-1(v)=MVC(v,{p0,p1,…,pN-1},S)
其中:
M为S的大小
Sm=(i,s)∈S
αi=∠pi,v,pi+s
∠a,b,c为与所形成的弧度
本实施例中,利用上述方法对三角网格上的顶点进行密集轮廓点采样,采样结果如图5所示。图5(a)中,三角网格边缘上的黑色点为对鼻子上的白色顶点进行采样获得的密集轮廓点;图5(b)中,三角网格边缘上的黑色点为对靠近边缘的白色顶点进行采样获得的密集轮廓点。
S104,生成蒙版图和透明通道图。本步骤的具体过程为:
将密集轮廓点所围成的区域均匀向外扩大到原来的1.01~1.1倍,白色填充扩大后的区域,得到蒙版图;
将密集轮廓点所围成的区域均匀向内缩小到原来的0.90~0.99倍,白色填充缩小后的区域后,高斯模糊所述缩小后的区域,得到透明通道图。
在生成透明通道图的过程中,还可以进行人工外界干预,具体地,借助Photoshop等图像处理软件,对嘴巴、鼻孔等位置的瑕疵进行修复。高斯模糊使用的高斯核大小为往里缩小的长度的2倍,标准差取1000。
高斯模糊能够使贴图边缘自然流畅,图6(a)是实施例提供的未经过高斯模糊的人脸贴图,图6(b)是经过高斯模糊的人脸贴图。分析图6(a)和图6(b)可得,高斯模糊处理能够使人脸贴图更自然。
本步骤中生成的蒙版图与透明通道图作为后续生成人脸贴图的基础,提升后面融合阶段生成的人脸贴图自然度。
S105,生成待融合正脸图像的人脸贴图B,并利用上述蒙版图和透明通道图对人脸贴图B处理。
在本步骤中,生成人脸贴图B的具体过程与生成人脸贴图A相同。
具体地,将所述人脸贴图在蒙版图上对应位置为黑色的像素设置为黑色;将应用蒙版后的人脸贴图的透明通道用透明通道图的透明通道替换。
利用蒙版图和透明通道图对人脸贴图B进行处理,能够使得该过程生成的人脸贴图B的边缘过渡自然,提升后续人脸绘制的质量。
在确定人脸贴图B的过程中,还可以采用人脸追踪与识别方法对待融合正脸图像进行识别,得到人脸对应的身份系数,该身份系数用于计算融合人脸网格模型,实现对人脸的实时绘制。
在预处理阶段结束后,即进入人脸融合阶段,具体包括:
S106,根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图。具体包括:
S1061,采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸的人脸网格模型;
S1062,根据稀疏轮廓点在人脸网格模型上的顶点索引,得到视频帧中稀疏轮廓点的三维坐标,并将该三维坐标投影到图像空间,得到视频帧中稀疏轮廓点的二维坐标;
S1063,根据预处理阶段相邻两个稀轮廓点之间插值点的个数,对视频帧中稀疏轮廓点的二维坐标进行插值,得到与预处理阶段得到的密集轮廓点数目相同的密集轮廓点;
S1064,生成OpenGL顶点着色器的顶点缓存,使其构成的三角形恰好能够覆盖一行像素且被覆盖的像素数与密集的轮廓点数一致,该顶点缓存还包含纹理贴图上密集轮廓点坐标和视频帧上的密集轮廓点坐标;
S1065,将顶点缓存绘制到纹理,得到保存有视频帧上和纹理贴图上密集轮廓点像素颜色差的纹理;
S1066,存储所述三角网格上顶点与密集轮廓点之间的关系至纹理中。
具体地,每一个顶点在纹理中对应一行,该行保存的是对该顶点的密集轮廓点采样得到的密集轮廓点索引及权重。由于每个顶点的密集轮廓点采样数不同,纹理的宽度为大于等于最大轮廓点采样数且为2n的最小整数。纹理的高度为大于等于顶点数且为2n的最小整数。纹理的宽高均为2n的整数倍,是为了保证OpenGL能够准确读取到相应的数据,而不是通过插值得到数据或读取纹理上最近邻的数据。
图7是实施例提供的保存视频帧和纹理贴图上密集轮廓点像素颜色之差的纹理后的结果示意图。纹理的宽度为大于轮廓点数(示例为30个轮廓点)且为2^n的最小整数,高为16(某些设备对OpenGL纹理的最小高度有限制);每个黑色小方格为纹理上的一个像素;灰色区域为每个轮廓点在视频帧和纹理贴图上密集的轮廓点像素的颜色之差;三角形为覆盖像素的三角面。
S1067,准备OpenGL顶点着色器的顶点缓存,顶点缓存中的数据为预处理阶段拟合的三角网格,每个顶点包括空间图像上的坐标、顶点序号、顶点的轮廓点采样数;
S1068,绘制所述顶点缓存,得到视频帧中人脸的融合人脸贴图,具体为:
在顶点着色器阶段:
根据顶点序号、顶点的轮廓点采样数,从S1066得到的纹理中读取该顶点的所有密集轮廓点采样;
对于每一组密集轮廓点采样,从S1065得到的纹理中读取该组密集轮廓点的颜色差并乘上采样得到的权重,作为该组密集轮廓点采样的颜色更新量;
该顶点的所有组密集轮廓点采样的颜色更新量之和作为顶点着色器的颜色更新量输出;
在片段着色器阶段:
处理后的人脸贴图B的颜色值加上顶点着色器输出的颜色更新量,作为片段着色器的颜色输出,至此,即获得融合人脸贴图。
S107,根据融合人脸贴图与融合人脸网格模型,实时绘制人脸。该步骤具体包括:
采用人脸追踪与识别方法对待融合正脸图像进行识别,得到人脸对应的身份系数;
采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸对应的表情系数;
根据该身份系数和该表情系数计算获得融合人脸网格模型;
将融合人脸贴图作为纹理,将融合人脸网格模型绘制到视频帧上,实现对人脸的实时绘制。
在利用融合人脸贴图绘制人脸的过程中,获得人脸网格模型的身份系统来自于待融合正脸图像,表情系数来自视频帧图像,这样处理,确保获得融合人脸网格模型的准确性,以便将该人脸网格模型绘制到视频帧上,获得效果更好的人脸融合。
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于人脸追踪的实时人脸融合方法,包括以下步骤:
预处理阶段:生成基准正脸图像的人脸贴图,拟合所述人脸贴图的三角网格后,确定所述三角网格上顶点与密集轮廓点之间的关系,并基于所述密集轮廓点生成蒙版图和透明通道图,生成待融合正脸图像的人脸贴图,利用所述蒙版图和透明通道图对所述人脸贴图处理;
人脸融合阶段:根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图,再根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸。
2.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述生成基准正脸图像的人脸贴图包括:
采用人脸追踪与识别方法对基准正脸图像进行识别,获得人脸网格模型、摄像机矩阵、投影矩阵,并根据所述摄像机矩阵和投影矩阵将所述人脸网格模型投影到图像空间;
将图像空间上三角形内像素映射到纹理空间上三角形内的像素,生成人脸贴图。
3.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述拟合所述人脸贴图的三角网格包括:
输入连线构成凸多边形的稀疏轮廓点;
在相邻两个稀疏轮廓点之间按一定距离进行插值,得到密集轮廓点;
使用Constrained Delaunay Triangulations方法,并加入相邻两个密集的轮廓点之间有边的约束,拟合三角网格。
4.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述确定所述三角网格上顶点与密集轮廓点之间的关系包括:
对于三角网格上的每个顶点,在密集轮廓点上进行分层次采样,并根据采样结果,计算顶点与采样结果的连接关系,以确定所述三角网格上顶点与密集轮廓点之间的关系。
5.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述基于所述轮廓点生成蒙版图和透明通道图包括:
将密集轮廓点所围成的区域均匀向外扩大到原来的1.01~1.1倍,白色填充扩大后的区域,得到蒙版图;
将密集轮廓点所围成的区域均匀向内缩小到原来的0.90~0.99倍,白色填充缩小后的区域后,高斯模糊所述缩小后的区域,得到透明通道图。
6.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述根据所述顶点与密集轮廓点之间的关系和处理后的人脸贴图,实时计算视频帧中人脸的融合人脸贴图包括:
(a)采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸的人脸网格模型,将该人脸网格模型投影到图像空间后,计算得到视频帧上的密集轮廓点;
(b)准备顶点着色器的顶点缓存,所述顶点缓存还包含纹理贴图上密集轮廓点坐标和视频帧上的密集轮廓点坐标,并绘制所述顶点缓存,得到所述视频帧上和纹理贴图上密集轮廓点像素颜色差的纹理;
(c)存储所述三角网格上顶点与密集轮廓点之间的关系至纹理中;
(d)准备顶点着色器的顶点缓存,顶点缓存中的数据为预处理阶段拟合的三角网格,每个顶点包括顶点在空间上的坐标、顶点序号、顶点的轮廓点采样数;
(e)绘制所述顶点缓存,得到视频帧中人脸的融合人脸贴图。
7.如权利要求6所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述将该人脸网格模型投影到图像空间后,计算得到视频帧上的密集轮廓点包括:
根据稀疏轮廓点在人脸网格模型上的顶点索引,得到视频帧中稀疏轮廓点的三维坐标,并将所述三维坐标投影到图像空间,得到视频帧中稀疏轮廓点的二维坐标;
根据预处理阶段相邻两个稀轮廓点之间插值点的个数,对视频帧中稀疏轮廓点的二维坐标进行插值,得到与预处理阶段得到的密集轮廓点数目相同的密集轮廓点。
8.如权利要求6所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述绘制所述顶点缓存,得到视频帧中人脸的融合人脸贴图包括:
在顶点着色器阶段:
根据顶点序号、顶点的轮廓点采样数,从步骤(c)得到的纹理中读取该顶点的所有密集轮廓点采样;
对于每一组密集轮廓点采样,从步骤(b)得到的纹理中读取该组密集轮廓点的颜色差并乘上采样得到的权重,作为该组密集轮廓点采样的颜色更新量;
该顶点的所有组密集轮廓点采样的颜色更新量之和作为顶点着色器的颜色更新量输出;
在片段着色器阶段:
处理后的人脸贴图的颜色值加上顶点着色器输出的颜色更新量,作为片段着色器的颜色输出。
9.如权利要求1所述的基于人脸追踪的实时人脸融合方法,其特征在于,所述根据所述融合人脸贴图与融合人脸网格模型,实时绘制人脸包括:
采用人脸追踪与识别方法对待融合正脸图像进行识别,得到人脸对应的身份系数;
采用人脸追踪与识别方法对视频帧进行识别,得到视频帧中人脸对应的表情系数;
根据所述身份系数和所述表情系数计算获得融合人脸网格模型;
将所述融合人脸贴图作为纹理,将融合人脸网格模型绘制到视频帧上,实现对人脸的实时绘制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711462802.4A CN108197555B (zh) | 2017-12-28 | 2017-12-28 | 一种基于人脸追踪的实时人脸融合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711462802.4A CN108197555B (zh) | 2017-12-28 | 2017-12-28 | 一种基于人脸追踪的实时人脸融合方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108197555A true CN108197555A (zh) | 2018-06-22 |
CN108197555B CN108197555B (zh) | 2020-10-16 |
Family
ID=62585670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711462802.4A Active CN108197555B (zh) | 2017-12-28 | 2017-12-28 | 一种基于人脸追踪的实时人脸融合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197555B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110232730A (zh) * | 2019-06-03 | 2019-09-13 | 深圳市三维人工智能科技有限公司 | 一种三维人脸模型贴图融合方法和计算机处理设备 |
CN110784773A (zh) * | 2019-11-26 | 2020-02-11 | 北京奇艺世纪科技有限公司 | 弹幕生成方法、装置、电子设备及存储介质 |
CN111836058A (zh) * | 2019-04-22 | 2020-10-27 | 腾讯科技(深圳)有限公司 | 用于实时视频播放方法、装置、设备以及存储介质 |
WO2021180114A1 (zh) * | 2020-03-11 | 2021-09-16 | 广州虎牙科技有限公司 | 人脸重构方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103646416A (zh) * | 2013-12-18 | 2014-03-19 | 中国科学院计算技术研究所 | 一种三维卡通人脸纹理生成方法及设备 |
US20140168216A1 (en) * | 2012-12-14 | 2014-06-19 | Electronics And Telecommunications Research Institute | 3d avatar output device and method |
CN106652037A (zh) * | 2015-10-30 | 2017-05-10 | 深圳超多维光电子有限公司 | 一种人脸贴图处理方法及装置 |
CN107146199A (zh) * | 2017-05-02 | 2017-09-08 | 厦门美图之家科技有限公司 | 一种人脸图像的融合方法、装置及计算设备 |
-
2017
- 2017-12-28 CN CN201711462802.4A patent/CN108197555B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140168216A1 (en) * | 2012-12-14 | 2014-06-19 | Electronics And Telecommunications Research Institute | 3d avatar output device and method |
CN103646416A (zh) * | 2013-12-18 | 2014-03-19 | 中国科学院计算技术研究所 | 一种三维卡通人脸纹理生成方法及设备 |
CN106652037A (zh) * | 2015-10-30 | 2017-05-10 | 深圳超多维光电子有限公司 | 一种人脸贴图处理方法及装置 |
CN107146199A (zh) * | 2017-05-02 | 2017-09-08 | 厦门美图之家科技有限公司 | 一种人脸图像的融合方法、装置及计算设备 |
Non-Patent Citations (1)
Title |
---|
CHEN CAO ET AL.: ""Real-time Facial Animation with Image-based Dynamic Avatars"", 《ACM TRANSACTIONS ON GRAPHICS》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111836058A (zh) * | 2019-04-22 | 2020-10-27 | 腾讯科技(深圳)有限公司 | 用于实时视频播放方法、装置、设备以及存储介质 |
CN111836058B (zh) * | 2019-04-22 | 2023-02-24 | 腾讯科技(深圳)有限公司 | 用于实时视频播放方法、装置、设备以及存储介质 |
CN110232730A (zh) * | 2019-06-03 | 2019-09-13 | 深圳市三维人工智能科技有限公司 | 一种三维人脸模型贴图融合方法和计算机处理设备 |
CN110232730B (zh) * | 2019-06-03 | 2024-01-19 | 深圳市三维人工智能科技有限公司 | 一种三维人脸模型贴图融合方法和计算机处理设备 |
CN110784773A (zh) * | 2019-11-26 | 2020-02-11 | 北京奇艺世纪科技有限公司 | 弹幕生成方法、装置、电子设备及存储介质 |
WO2021180114A1 (zh) * | 2020-03-11 | 2021-09-16 | 广州虎牙科技有限公司 | 人脸重构方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108197555B (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109859098B (zh) | 人脸图像融合方法、装置、计算机设备及可读存储介质 | |
Apollonio et al. | A photogrammetry-based workflow for the accurate 3D construction and visualization of museums assets | |
CN109829930B (zh) | 人脸图像处理方法、装置、计算机设备及可读存储介质 | |
CN108197555A (zh) | 一种基于人脸追踪的实时人脸融合方法 | |
US7953275B1 (en) | Image shader for digital image modification | |
CN109584327B (zh) | 人脸老化模拟方法、装置以及设备 | |
US8019182B1 (en) | Digital image modification using pyramid vignettes | |
Herrera et al. | Lighting hair from the inside: A thermal approach to hair reconstruction | |
CN106909875A (zh) | 人脸脸型分类方法和系统 | |
US11727628B2 (en) | Neural opacity point cloud | |
EP4036790A1 (en) | Image display method and device | |
US20230260443A1 (en) | Two-dimensional compositing | |
CN107507269A (zh) | 个性化三维模型生成方法、装置和终端设备 | |
CN106875437A (zh) | 一种面向rgbd三维重建的关键帧提取方法 | |
Xiao et al. | Example-based color transfer for gradient meshes | |
Barringer et al. | High-quality curve rendering using line sampled visibility | |
US11955246B2 (en) | Unified anisotropic volume and surface mesh storage | |
Jenny et al. | Challenges in adapting example-based texture synthesis for panoramic map creation: a case study | |
JP5661381B2 (ja) | 画像処理装置およびその方法 | |
CN116977539A (zh) | 图像处理方法、装置、计算机设备、存储介质和程序产品 | |
dos Passos et al. | Sample-based synthesis of illustrative patterns | |
CN114596213A (zh) | 一种图像处理方法及装置 | |
CN109949400A (zh) | 适于ar虚拟软装合成的光影估计和重构方法 | |
Krumpen et al. | OctreeBTFs–A compact, seamless and distortion-free reflectance representation | |
Nguyen et al. | Inspire: An interactive image assisted non-photorealistic rendering system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |