一种实时的人脸交互方法及其系统的制作方法

文档序号:9929287阅读:772来源:国知局
一种实时的人脸交互方法及其系统的制作方法
【技术领域】
[0001] 本公开涉及计算机图形图像处理领域,特别是一种实时的人脸交互方法及其系 统。
【背景技术】
[0002] 随着科技的发展,硬件设备的性能提升和图像处理技术的增强,使得很多摄像头 设备可以自身进行图像处理,而其中一些图像处理可以产生卡通或文字渲染,但是当前这 类处理都是基于静态图片,且是通过人工添加卡通或文字渲染,也不能对视频进行实时处 理,更不能进行人机交互。目前大多人机交互的系统,都是基于语音或者肢体的动作,不能 真实地反映操作者的喜怒哀乐。

【发明内容】

[0003] 针对上述部分问题,本公开提供了一种实时的人脸交互方法及系统,所述方法及 系统能够通过脸部动作状态智能控制视频中的输出对象,通过输出对象真实地反映操作者 的喜怒哀乐等脸部动作变化。
[0004] -种实时的人脸交互方法,所述方法包括下述步骤:
[0005] S100、获取电子哈哈镜前的、当前用户的实时视频;
[0006] S200、基于所述实时视频获取视频帧图像,对所述视频帧图像进行人脸检测识别;
[0007] S300、在人脸检测识别之后,使用级联回归模型提取人脸特征,并进行人脸变形;
[0008] S400、在电子哈哈镜上实时呈现当前用户人脸变形后的哈哈镜视觉画面。
[0009] 基于所述方法,实现了一种实时的人脸交互系统,所述系统包括下述模块:
[0010] M1 〇〇、视频获取模块:获取电子哈哈镜前的、当前用户的实时视频;
[0011] M200、人脸检测识别模块:基于所述实时视频获取视频帧图像,对所述视频帧图像 进行人脸检测识别;
[0012] M300、人脸变形模块:在人脸检测识别之后,使用级联回归模型提取人脸特征,并 进行人脸变形;
[0013] M400、视觉呈现模块:在电子哈哈镜上实时呈现当前用户人脸变形后的哈哈镜视 觉画面。
【附图说明】
[0014] 图1本公开一个实施例中的方法流程示意图。
【具体实施方式】
[0015] 在一个基础的实施例中,提供了一种实时的人脸交互方法,所述方法包括下述步 骤,如图1所示:
[0016] S100、获取电子哈哈镜前的、当前用户的实时视频;
[0017] S200、基于所述实时视频获取视频帧图像,对所述视频帧图像进行人脸检测识别;
[0018] S300、在人脸检测识别之后,使用级联回归模型提取人脸特征,并进行人脸变形;
[0019] S400、在电子哈哈镜上实时呈现当前用户人脸变形后的哈哈镜视觉画面。
[0020] 在这个实施例中,所述方法可以应用于手机、平板、带摄像头的广告机、带摄像头 的电脑等场合,能够通过脸部动作状态智能控制视频中的输出对象,通过输出对象真实地 反映操作者的喜怒哀乐等脸部动作变化。在通过摄像头拍摄获得脸部后,摄像机拍摄的同 时,就完全实时地对屏幕上的视频做出同步脸部动作控制效果。比如在捕捉到摄像头前对 象的眨眼动作,每捕捉到一次,将在视频输出时重新生成并实时显示另一对象同样的眨眼 动作。摄像头前对象和重新生成的另一对象可以是人,也可以是动物,或者其他具有脸部的 对象。当摄像头前对象是人,重新生成的另一对象是动物或卡通形象时,就相当于把摄像头 前对象拟动物化或拟卡通化。
[0021] 优选的,所述S300中所述使用级联回归模型提取人脸特征包括下述步骤:
[0022] S 3 01、通过自动识别方式确定要提取的特征点的数量;
[0023] S302、获取包括眼球中心点、眼角、鼻尖、嘴角9个点在内的特征点,并根据该9个点 的位置关系评估人脸角度;
[0024] S303、根据所述人脸角度选择适合该人脸角度范围的级联回归模型,将检测的图 像作为输入,获取人脸特征点。
[0025] 优选的,所述S300中所述人脸变形包括下述步骤:
[0026] S311、确定某个要变形五官的特征点,基于确定的特征点及其影响半径,计算受变 形影响的每个像素点的新位置和新灰度值;
[0027] S312、利用步骤S311中计算得到的每个像素点的新位置和新灰度值更新图像上相 关的像素点。
[0028] 在通过摄像头拍摄获得人脸后,检测人脸,并对人脸进行跟踪,对体现五官、人脸 轮廓的特征点进行提取,所述特征点的数量可以是21点,106点,或者是196点。在提取到特 征点后,可以基于多个要变形的五官的特征点,按照不同影响半径,计算变形区域像素点的 几何位置变化,制作出一些变形效果,比如五官的放大缩小,脸型正反三角,方形圆形,嘴角 上扬下垂等等,类似哈哈镜,可以变成独眼龙、蛤蟆嘴,大方脸,大鼻子,等等搞笑的结果。摄 像机拍摄的同时,就对屏幕上的视频作出效果,完全实时。
[0029] 这里的变形是指在人脸图像的一小部分区域内做变形,只改变某些范围的特征, 但是保持其它区域不发生变化。在现有技术中常用的变形方法有:基于网格的变形,即在图 像上嵌入一张网格,通过改变网格的形状实现图像变形,包括后续发展出的自由变形(FFD) 和建立网格的层次结构等;基于特征线的变形,如Beier和Neely等人提出的根据像素点相 对于图像中一系列线段的位置而决定变形的方法;基于散乱点插值的变形,即在图像上指 定一系列点后,用径向基函数方法完成指定点对的插值。对后一个问题,主要使用插值技术 来解决,包括三次卷积、s inc函数、线性函数和三次B样条等。
[0030] 优选的,所述步骤S311中新灰度值计算使用双线性插值进行求解,可使变形自然。 设(x,y)的4个最邻近像素为A,B,C,D,它们的坐标分别为(i,j),( i+1,j),( i,j+1),( i+1,j+ 1),它们的灰度值分别为g(A),g(B),g(C),g(D),则插值点(x,y)的灰度值为:
[0031] G(x,y) = (x-i){(y-j)[g(D)-g(B)]+g(B)-(y-j)[g(C)-g(A)]-g(A)} + (y-j)[g (C)-g(A)]-g(A)
[0032]可选的,所述步骤S312中更新使用OpenGL GPU对视频帧图像进行渲染,加快图像 更新。使用OpenGL GPU可以能够帮助得到更加流畅的界面体验,其处理过程为:像素和顶点 数据可以选择存储在显示列表中,我们可以把显示列表看成是存储数据的媒介,用于加速 渲染速度。顶点数据经过求值器,产生法向量、纹理坐标、点的空间坐标等,通过顶点操作和 图元装配,生成相应的像素信息,进行光栅化处理,光栅化是把几何和像素数据转化成片 段,每个片段块对应帧缓冲区中的一个像素。其中,顶点操作和图元装配中又可以细分出一 条渲染管线,这里称为顶点处理管线。在光栅化完成后,还可以根据命令,对每个像素进行 处理,最后写入帧缓冲区内。
[0033]优选的,所述自动识别方式根据检测到的人脸区域的清晰度来确定要采集的特征 点的数量,以满足实时性的要求。更优地,所述人脸区域的清晰度通过采用图像模糊检测方 法来度量。本申请不限制具体的方法,可以采用现有技术中的适当图像模糊检测方法。 [0034]可选的,所述自动识别方式考虑实施本公开方法的硬件性能确定,以满足实时性 的要求。
[0035] 进
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1