人脸皱纹的生成方法、装置、计算机存储介质和终端与流程

文档序号:17664593发布日期:2019-05-15 22:37阅读:246来源:国知局
人脸皱纹的生成方法、装置、计算机存储介质和终端与流程

本发明涉及计算机技术领域,具体而言,本发明涉及一种人脸皱纹的生成方法、装置、存储介质和终端。



背景技术:

随着移动网络的发展,用户通过视频特效进行娱乐已经越来越常见。视频动画效果一般通过骨骼k动画和混合变形编辑器blendshape来实现。骨骼k动画是在三维角色的身体里设计类似于人体的骨骼,角色的动作由骨骼驱动;但做角色的表情时,如果也用骨骼做,需要在角色面部添加很多骨骼点,还需在细节上频繁地调整表情中骨骼的位置,非常麻烦,故一般通过blendshape来生成角色的人脸动画。人脸动画中的皱纹生成方法可分为两类,一类是建模的方法,另一类是图像处理的方法。建模的方法是对人脸的面部肌肉进行建模,根据面部肌肉的形变,预测皱纹的出现位置和时机,将肌肉的形变量化为面部的褶皱。图像处理的方法是将一张含有皱纹的人脸图片(往往是一张老人的图片)与人脸模型渲染出的图片进行合成,为了使合成效果变得自然,往往使用图像的泊松编辑技术。但这两种皱纹的生成方法对设备性能的消耗都非常大,不适用于移动终端的应用。



技术实现要素:

本发明针对现有方式的缺点,提出一种人脸皱纹的生成方法、装置、存储介质和终端,用以解决在移动终端快速生成人脸皱纹的问题。

本发明提出的人脸皱纹的生成方法,包括:

获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

获取待渲染的人脸模型;

将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

进一步地,所述获取待渲染的人脸模型之后,还包括:

识别所述人脸模型中的眉毛位置和/或眉毛形状;

若所述眉毛位置和/或眉毛形状发生预设变化,则继续所述将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标的步骤。

进一步地,所述预设变化包括所述眉毛位置的向上移动。

进一步地,所述将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图,包括:

获取与所述人脸模型对应的无皱纹渲染图;

将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到与所述人脸模型对应的有皱纹渲染图;

获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α;

根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图。

进一步地,所述获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α,包括:

在所述眉毛位置向上移动前,获取所述人脸模型中眉毛到额头的初始距离l;

在所述眉毛位置向上移动后,获取所述人脸模型中眉毛到额头的距离l’;

计算得到权重比α=(l-l’)/δl,其中,δl为预设的变化距离,0<δl<l,且0≤α≤1。

进一步地,所述根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图,包括:

将所述有皱纹渲染图进行透明混合处理,得到每个像素点的第一像素值,将所述第一像素值乘以所述权重比α,得到第一像素占比;

将所述无皱纹渲染图进行透明混合处理,得到每个像素点的第二像素值,将所述第二像素值乘以(1-α),得到第二像素占比;

将每个像素点的所述第一像素占比与所述第二像素占比相加,得到每个像素点的综合像素值;

根据所述每个像素点的综合像素值,得到具有皱纹效果的人脸模型渲染图。

本发明还提出一种人脸皱纹的生成方法,该方法包括:

第一终端获取有皱纹的第一人脸图像与无皱纹的第二人脸图像;

根据人脸特征点,将所述第一人脸图像仿射变换至与所述第二人脸图像一致的脸部轮廓;

根据泊松编辑,将所述第一人脸图像仿射变换后的脸部轮廓与所述第二人脸进行融合,得到所述第二人脸图像老化后的图片;

将所述老化后的图片中的皱纹区域取出,与所述第二人脸图像进行透明混合处理,得到具有皱纹效果的第二人脸图像;

将所述具有皱纹效果的第二人脸图像中每个像素点的像素值除以所述无皱纹的第二人脸图像中每个像素点的像素值,得到皱纹纹理图;

生成配置文件,所述配置文件中包括所述第二人脸图像的人脸特征点位置和相对于所述人脸特征点位置的皱纹纹理图;

第二终端获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

获取待渲染的人脸模型;

将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

本发明还提出一种人脸皱纹的生成装置,该装置包括:

配置文件获取模块,用于获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

人脸模型获取模块,用于获取待渲染的人脸模型;

皱纹渲染模块,用于将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

进一步地,该人脸皱纹的生成装置,还包括:

眉毛识别模块,用于识别所述人脸模型中的眉毛位置和/或眉毛形状;所述皱纹渲染模块,具体用于,若所述眉毛位置和/或眉毛形状发生预设变化,将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标。

进一步地,所述眉毛识别模块中的所述预设变化包括所述眉毛位置的向上移动。

进一步地,所述皱纹渲染模块包括:

无皱纹渲染图单元,用于获取与所述人脸模型对应的无皱纹渲染图;

皱纹像素合成单元,用于将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到与所述人脸模型对应的有皱纹渲染图;

皱纹权重计算单元,用于获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α;

皱纹效果合成单元,用于根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图。

进一步地,所述皱纹权重计算单元包括:

初始距离获取子单元,用于在所述眉毛位置向上移动前,获取所述人脸模型中眉毛到额头的初始距离l;

移动距离获取子单元,用于在所述眉毛位置向上移动后,获取所述人脸模型中眉毛到额头的距离l’;

权重比计算子单元,用于计算得到权重比α=(l-l’)/δl,其中,δl为预设的变化距离,0<δl<l,且0≤α≤1。

进一步地,所述皱纹效果合成单元包括:

第一像素占比子单元,用于将所述有皱纹渲染图进行透明混合处理,得到每个像素点的第一像素值,将所述第一像素值乘以所述权重比α,得到第一像素占比;

第二像素占比子单元,用于将所述无皱纹渲染图进行透明混合处理,得到每个像素点的第二像素值,将所述第二像素值乘以(1-α),得到第二像素占比;

综合像素值确定子单元,用于将每个像素点的所述第一像素占比与所述第二像素占比相加,得到每个像素点的综合像素值;

人脸模型渲染子单元,用于根据所述每个像素点的综合像素值,得到具有皱纹效果的人脸模型渲染图。

本发明还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任意一项所述的人脸皱纹的生成方法。

本发明还提出一种终端,所述终端包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现前述任意一项所述的人脸皱纹的生成方法。

本发明具有以下有益效果:

1、本发明通过预设的配置文件,可降低在移动端动态实时生成皱纹的性能消耗,有利于视频娱乐在多种性能的移动终端上运行,扩大了视频娱乐的视频范围;且所述配置文件可由性能较高的台式终端或服务器生成,从而可提高移动端根据所述配置文件生成的皱纹纹理图的效果,进而使得移动端可得到更加逼真的人脸模型渲染图,提升了用户体验。

2、本发明还可将所述眉毛位置和/或眉毛形状的预设变化作为生成皱纹效果的触发时机,以在用户做出皱眉、挑眉等动作时,根据识别的用户表情自动生成皱纹效果;还可根据眉毛位置向上移动的变化比例,得到具有不同皱纹效果的人脸模型渲染图,进一步丰富了用户通过眉毛生成皱纹的互动效果。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明人脸皱纹的生成方法第一实施例的流程示意图;

图2为本发明人脸皱纹的生成方法第二实施例的流程示意图;

图3为本发明人脸皱纹的生成方法第三实施例的流程示意图;

图4为本发明人脸皱纹的生成方法另一种实施例的流程示意图;

图5为本发明人脸皱纹的生成装置一种实施例的模块示意图;

图6为本发明人脸皱纹的生成装置另一种实施例的模块示意图;

图7为本发明终端实施例的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式,这里使用的“第一”、“第二”仅用于区别同一技术特征,并不对该技术特征的顺序和数量等加以限定。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personalcommunicationsservice,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personaldigitalassistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(globalpositioningsystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobileinternetdevice,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。

在移动终端中,用户常常会借助于移动终端的摄像装置进行视频娱乐,例如直播、自拍视频等。在这些视频娱乐中,如果能配合用户的动作或表情自动生成对应的视频特效,将极大地增加动画的真实感,提升用户体验。故,本发明提出一种人脸皱纹的生成方法,以在用户做出皱眉或挑眉等动作时生成对应的皱纹效果,如图1所示,本发明的生成方法包括如下步骤:

步骤s10:获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

步骤s20:获取待渲染的人脸模型;

步骤s30:将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

其中,每个步骤具体如下:

步骤s10:获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图。

所述配置文件可在终端安装应用程序时获取,亦可在需要时通过网络从对应的服务器获取。所述配置文件可用于存储预设的有皱纹的人脸图片中的人脸特征信息,例如人脸形状、人脸图像中的人脸特征点的坐标位置、对应于每个坐标位置的皱纹纹理等。

在本发明的部分实施例中,还可在所述配置文件中直接存储对应于所述坐标位置的纹理坐标,以便将对应的皱纹纹理根据所述纹理坐标直接渲染至需要增加皱纹的人脸图像上。所述纹理坐标位于纹理空间中,当将纹理图片上的纹理应用于特定图片时,由于所述纹理图片与所述特定图片的形状大小存在差异,故纹理像素地址必须映射到所述特定图片的坐标系中,然后再将映射后的纹理图片移动到对应的屏幕坐标系或像素位置。

所述预设人脸形状可为一张有皱纹的人脸图片中的人脸形状,该有皱纹的人脸图片可通过一张无皱纹的人脸图片与一张皱纹图进行合成,或通过一张无皱纹的人脸图片与一张有皱纹的人脸图片进行映射合成。所述皱纹可能位于人脸形状的额头和/或眼角等特征点所在的位置。所述配置文件可在台式电脑或服务器等计算能力较强的终端生成。

所述配置文件的具体生成过程可采用如下实施例:

步骤s01:在台式端,获取一张正面无皱纹的人脸图片i_y与一张具有皱纹的老人人脸图片i_o;先检测并存储人脸图片i_y与人脸图片i_o的人脸特征点,然后将老人人脸从人脸图片i_o原图中抠出,根据人脸特征点一一对应的关系,使用仿射变换将人脸图片i_o中的老人人脸变形到与人脸图片i_y中的人脸相同的形状;接着,采用泊松编辑,将变形后的老人人脸图片与无皱纹的人脸图片i_y进行融合,得到原始的人脸图片i_y老化之后的人脸图片i_a。所述人脸图片i_y中包括所述预设人脸形状中的人脸特征点位置。

步骤s02:根据所述人脸特征点中额头部分的特征点,将老化之后的人脸图片i_a中额头有皱纹的区域抠出,与原始的人脸图片i_y融合并进行透明混合处理,即alphablending;在透明混合处理的同时,还可软化所述额头区域的边界,以使经过透明混合处理后的合成图片更真实,得到对应于原始人脸图片i_y的有皱纹的人脸图片i_w。

步骤s03:将人脸图片i_w和人脸图片i_y中对应像素的像素值逐像素地相除,得到皱纹纹理图i_f。所述像素值可以为灰度值或彩色分量值,故皱纹纹理图i_f中各像素的像素值可为人脸图片i_w中对应像素的灰度值除以人脸图片i_y对应像素的灰度值,或皱纹纹理图i_f中各像素的像素值为人脸图片i_w中对应像素的彩色分量除以人脸图片i_y对应像素的彩色分量。

步骤s04:生成配置文件,所述配置文件中包括所述皱纹纹理图i_f、人脸图片i_y中的人脸特征点位置,以及所述人脸特征点位置与所述皱纹纹理图i_f的相对位置;或所述配置文件中也可包括皱纹纹理图i_f以及根据人脸图片i_y中的人脸特征点位置变换的纹理坐标对应像素的像素值。至此,台式端的准备工作完成,得到一张包括皱纹纹理图与人脸特征点位置的配置文件。

在计算机图形处理中,每个像素可用r,g,b三个颜色分量表示;还可以增加alpha通道,即alphachannel,用来表示该像素产生的透明效果。在每个计算机图形像素中可保存一个alpha通道值,用于表示这个像素的透明程度,实现透明效果,例如游戏画面中的透明光影效果。加入alpha通道值后,一个包括rgb数值的像素值将变为包括rgba数值的像素值。渲染包含alpha通道值的图形即称为alphablending。渲染即是将包含alpha通道值的像素附着于目标物体上。所述目标物体可以为本来就有背景色或背景图片的虚拟物体,也可以是真正的显示屏,也可以是内存中的一块逻辑屏。进行alphablending处理时,通常是将源像素的rgb值,分别与目标像素(如背景)的rgb按比例混合,最后得到一个混合后的rgb值。以下为alphablending的一个具体算法实施例:

1)先将源像素和目标像素的rgb三个颜色分量分离;

2)然后把源像素的三个颜色分量分别乘以alpha通道值,并把目标像素的三个颜色分量分别乘以alpha通道值的反值;

3)把将相乘得到的结果按对应的颜色分量进行相加;

4)对相加求得的每个颜色分量的结果除以alpha通道值的最大值;

5)最后将三个颜色分量重新合成为一个像素值输出。

从以上算法中可以看出,alpha通道值越大,像素值的透明效果就越弱;当alpha通道值达到最大时,像素变不透明;如果alpha通道值为零,则像素为全透明。alpha通道值一般为0到255。alpha通道值为0时,对应像素为全透明,即该像素是看不见的;alpha通道值为255时,对应像素为原始图;alpha通道值为中间值时,对应像素为半透明状态。

所述将老人人脸从人脸图片i_o原图中抠出、仿射变换、泊松编辑、像素相除、人脸特征点位置变换为纹理坐标均为现有技术,可通过多种应用软件实现,或在不同编程框架下通过调用对应函数等方式实现,在此不再赘述。

步骤s20:获取待渲染的人脸模型。

获取所述待渲染的人脸模型可通过本终端摄像头实时获取,亦可通过远程摄像头或视频文件获取。例如,当本发明应用于特定应用程序时,可通过所述特定应用程序调用本终端的摄像头,以获取用户通过摄像头拍摄的实时视频,并从所述实时视频中识别出待渲染的人脸模型,以根据所述实时视频的动作,在人脸模型上增加皱纹。通过远程摄像头或视频文件获取的人脸模型可预先经过美颜处理,以避免人脸模型上原本的皱纹与后期生成的皱纹互相干扰;当然,亦可根据具体情况,不进行美颜处理,或直接根据从人脸模型上获取到的皱纹,对所述人脸模型渲染出皱纹效果。

步骤s30:将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

在绘制纹理映射场景时,需要给每个场景的顶点定义几何坐标,同时需要定义相应的纹理坐标。经过多种变换后,几何坐标决定场景的顶点在屏幕上绘制的位置,而纹理坐标决定将纹理图像中的哪一个纹素赋予所述顶点;所述顶点之间的纹理坐标插值可与平滑着色插值方法相同,在此不再赘述。

由于预设于步骤s10中的配置文件中的人脸形状,一般不与步骤s20中获取的待渲染的人脸模型相同,故将相对于所述人脸形状的人脸特征点位置的皱纹纹理图映射至待渲染的人脸模型时,需要先将所述人脸形状处理为与所述人脸模型一致的形状,再将对应于所述人脸特征点位置的皱纹纹理图映射至所述人脸模型上。本步骤先将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,以解决生成所述人脸模型的皱纹纹理图时,步骤s20中所述的人脸模型的人脸形状与步骤s10中的人脸形状不匹配的问题;再将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,可改变额头、眼部等部位的亮度分布,从而形成皱纹效果。

本发明的第一实施例通过预设的配置文件,可降低在移动端动态实时生成皱纹的性能消耗,有利于视频娱乐在多种性能的移动终端上运行,扩大了视频娱乐的视频范围;且所述配置文件可由性能较高的台式终端或服务器生成,从而可提高根据所述配置文件生成的皱纹纹理图的效果,进而使得用户可在移动端得到真实逼真的人脸模型渲染图,提升了用户体验。

所述配置文件中可直接存储预设人脸形状的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;亦可存储预设人脸的人脸特征点的位置和位于所述预设人脸上的皱纹纹理图,当需要渲染的人脸模型时,才根据所述人脸特征点的位置、所述皱纹纹理图以及所述人脸模型,生成相对于所述人脸模型的纹理坐标。亦即,可在台式终端将所述皱纹纹理图与所述人脸特征点的位置关联存储,亦可在渲染所述人脸模型时,才根据所述人脸模型生成相对于所述人脸模型的纹理坐标。

在本发明的又一实施例中,所述获取待渲染的人脸模型之后,如图2所示,还可包括:

步骤s21:识别所述人脸模型中的眉毛位置和/或眉毛形状;

步骤s22:若所述眉毛位置和/或眉毛形状发生预设变化,则继续所述步骤s30,即:继续所述将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标的步骤。

为了提高画面的真实性和娱乐性,本实施例可将所述眉毛位置和/或眉毛形状的预设变化作为生成皱纹效果的触发时机,以在用户做出皱眉、挑眉等动作的时候,根据识别的用户表情自动生成皱纹效果。

进一步地,结合图3中所示的步骤s321:所述预设变化可包括所述眉毛位置的向上移动。所述眉毛位置向上移动的变化可在符合人机友好互动的同时,简化识别触发时机的难度。例如,当用户故意挑眉时,眉毛向上移动,出现皱纹效果;当用户做出眨眼等动作时,虽然眉毛形状或位置出现变化,但不是向上移动的变化,则不出现皱纹效果。

在实际生活中,人脸额头上的皱纹形状和/或数量一般与用户挑眉的程度相关,例如当用户用力挑眉毛时,所述额头上的皱纹较多且较深。为使所述皱纹效果与用户的动作相关联,本发明还提出另一实施例,如图3所示:

所述将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图,包括:

步骤s23:获取与所述人脸模型对应的无皱纹渲染图;

步骤s24:将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到与所述人脸模型对应的有皱纹渲染图;

步骤s25:获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α;

步骤s26:根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图。

本实施例通过所述眉毛位置向上移动的变化比例,得到皱纹权重比α;再将皱纹权重比α作为所述无皱纹渲染图和所述有皱纹渲染图合成所述具有皱纹效果的人脸模型渲染图的参考因子,从而可根据所述眉毛位置向上移动的变化比例,得到具有不同皱纹效果的人脸模型渲染图,进一步丰富了用户通过眉毛生成皱纹的互动效果。

在本发明的又一实施例中,所述获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α,包括:

在所述眉毛位置向上移动前,获取所述人脸模型中眉毛到额头的初始距离l;

在所述眉毛位置向上移动后,获取所述人脸模型中眉毛到额头的距离l’;

计算得到权重比α=(l-l’)/δl,其中,δl为预设的变化距离,0<δl<l,且0≤α≤1。

本实施例可将预设的变化距离δl作为眉毛的极限变化距离,当眉毛变化距离l-l’达到或超过δl皱纹效果时,则所述权重比α=1,以使人脸模型渲染图的皱纹效果最多最深;当眉毛的位置没有变化时,则距离l-l’的差值为零,所述权重比α=0,以使人脸模型渲染图没有皱纹效果;当所述权重比0<α<1时,则可根据权重比α,将所述无皱纹渲染图和所述有皱纹渲染图中的对应的像素值进行叠加计算,以得出具有中间皱纹效果的人脸模型渲染图。

本发明还提出一种中间皱纹效果的具体计算方式,所述根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图,包括:

将所述有皱纹渲染图进行透明混合处理,即进行alphablending处理,得到每个像素点的第一像素值,将所述第一像素值乘以所述权重比α,得到第一像素占比;

将所述无皱纹渲染图进行透明混合处理,即进行alphablending处理,得到每个像素点的第二像素值,将所述第二像素值乘以(1-α),得到第二像素占比;

将每个像素点的所述第一像素占比与所述第二像素占比相加,得到每个像素点的综合像素值;

根据所述每个像素点的综合像素值,得到具有皱纹效果的人脸模型渲染图。

本实施例根据所述权重比α,为所述第一像素值和所述第二像素值分配不同的权重,从而将所述眉毛位置向上移动的变化比例与所述人脸模型渲染图中的皱纹效果对应,达到了根据识别的用户的眉毛动作动态生成额头皱纹的效果。

本发明还提出一种人脸皱纹的生成方法,如图4所示,该方法包括如下步骤:

步骤s01:第一终端获取有皱纹的第一人脸图像与无皱纹的第二人脸图像;

步骤s02:根据人脸特征点,将所述第一人脸图像仿射变换至与所述第二人脸图像一致的脸部轮廓;

步骤s03:根据泊松编辑,将所述第一人脸图像仿射变换后的脸部轮廓与所述第二人脸进行融合,得到所述第二人脸图像老化后的图片;

步骤s04:将所述老化后的图片中的皱纹区域取出,与所述第二人脸图像进行透明混合处理,得到具有皱纹效果的第二人脸图像;

步骤s05:将所述具有皱纹效果的第二人脸图像中每个像素点的像素值除以所述无皱纹的第二人脸图像中每个像素点的像素值,得到皱纹纹理图;

步骤s06:生成配置文件,所述配置文件中包括所述第二人脸图像的人脸特征点位置和相对于所述人脸特征点位置的皱纹纹理图;

步骤s10:第二终端获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

步骤s20:获取待渲染的人脸模型;

步骤s30:将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

本实施例中的第一终端可以为性能较好的台式终端或服务器等,所述第二终端可以移动终端,例如智能手机、ipad等。本实施例可在其它终端上进行较为复杂的仿射变换和泊松编辑,以生成所述配置文件供运算性能较弱的移动终端使用,从而使得用户可在移动终端上实现较为复杂的动态皱纹效果。

本发明还提出一种人脸皱纹的生成装置,如图5所示,该装置包括:

配置文件获取模块10,用于获取预设的配置文件,根据所述配置文件得到预设人脸形状中的人脸特征点位置,以及相对于所述人脸特征点位置的皱纹纹理图;

人脸模型获取模块20,用于获取待渲染的人脸模型;

皱纹渲染模块30,用于将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到具有皱纹效果的人脸模型渲染图。

在本发明人脸皱纹的生成装置的另一实施例中,结合图6所示,该装置还包括:

眉毛识别模块21,用于识别所述人脸模型中的眉毛位置和/或眉毛形状;所述皱纹渲染模块,具体用于,若所述眉毛位置和/或眉毛形状发生预设变化,将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标。

在人脸皱纹的生成装置的另一实施例中,所述眉毛识别模块中的所述预设变化包括所述眉毛位置的向上移动。

在人脸皱纹的生成装置的另一实施例中,结合图6所示,所述皱纹渲染模块30还包括:

无皱纹渲染图单元301,用于获取与所述人脸模型对应的无皱纹渲染图;

皱纹像素合成单元302,用于将所述人脸特征点位置变换为对应于所述人脸模型的纹理坐标,将所述纹理坐标对应的皱纹纹理图的像素值与所述人脸模型中对应像素点的像素值相乘,得到与所述人脸模型对应的有皱纹渲染图;

皱纹权重计算单元303,用于获取所述眉毛位置向上移动的变化比例,根据所述变化比例,得到皱纹权重比α;

皱纹效果合成单元304,用于根据所述权重比α、所述无皱纹渲染图、所述有皱纹渲染图,得到具有皱纹效果的人脸模型渲染图。

在人脸皱纹的生成装置的又一实施例中,所述皱纹权重计算单元包括:

初始距离获取子单元,用于在所述眉毛位置向上移动前,获取所述人脸模型中眉毛到额头的初始距离l;

移动距离获取子单元,用于在所述眉毛位置向上移动后,获取所述人脸模型中眉毛到额头的距离l’;

权重比计算子单元,用于计算得到权重比α=(l-l’)/δl,其中,δl为预设的变化距离,0<δl<l,且0≤α≤1。

在人脸皱纹的生成装置的又一实施例中,所述皱纹效果合成单元包括:

第一像素占比子单元,用于将所述有皱纹渲染图进行透明混合处理,得到每个像素点的第一像素值,将所述第一像素值乘以所述权重比α,得到第一像素占比;

第二像素占比子单元,用于将所述无皱纹渲染图进行透明混合处理,得到每个像素点的第二像素值,将所述第二像素值乘以(1-α),得到第二像素占比;

综合像素值确定子单元,用于将每个像素点的所述第一像素占比与所述第二像素占比相加,得到每个像素点的综合像素值;

人脸模型渲染子单元,用于根据所述每个像素点的综合像素值,得到具有皱纹效果的人脸模型渲染图。

上述人脸皱纹的生成装置中的技术特征与上述人脸皱纹的生成方法中对应的技术特征相同,在此不予赘述。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意一项所述的人脸皱纹的生成方法。其中,所述存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随即存储器)、eprom(erasableprogrammableread-onlymemory,可擦写可编程只读存储器)、eeprom(electricallyerasableprogrammableread-onlymemory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。可以是只读存储器,磁盘或光盘等。

本发明实施例还提供一种终端,所述终端包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任意一项所述的人脸皱纹的生成方法。

如图7所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、pda(personaldigitalassistant,个人数字助理)、pos(pointofsales,销售终端)、车载电脑、服务器等任意终端设备,以终端为手机为例:

图7示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图7,手机包括:射频(radiofrequency,rf)电路1510、存储器1520、输入单元1530、显示单元1540、传感器1550、音频电路1560、无线保真(wirelessfidelity,wi-fi)模块1570、处理器1580、以及电源1590等部件。本领域技术人员可以理解,图7中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图7对手机的各个构成部件进行具体的介绍:

rf电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1580处理;另外,将设计上行的数据发送给基站。通常,rf电路1510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路1510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte)、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如视频录制等)等;存储数据区可存储根据手机的使用所创建的数据(比如配置文件等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元1530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1530可包括触控面板1531以及其他输入设备1532。触控面板1531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1531上或在触控面板1531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1580,并能接收处理器1580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1531。除了触控面板1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1541。进一步的,触控面板1531可覆盖显示面板1541,当触控面板1531检测到在其上或附近的触摸操作后,传送给处理器1580以确定触摸事件的类型,随后处理器1580根据触摸事件的类型在显示面板1541上提供相应的视觉输出。虽然在图7中,触控面板1531与显示面板1541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1531与显示面板1541集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器1550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路1560、扬声器1561,传声器1562可提供用户与手机之间的音频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声纹信号输出;另一方面,传声器1562将收集的声纹信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经rf电路1510以发送给比如另一手机,或者将音频数据输出至存储器1520以便进一步处理。

wi-fi属于短距离无线传输技术,手机通过wi-fi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了wi-fi模块1570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器1580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理单元;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。

手机还包括给各个部件供电的电源1590(比如电池),优选的,电源可以通过电源管理系统与处理器1580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

应该理解的是,在本发明各实施例中的各功能单元可集成在一个处理模块中,也可以各个单元单独物理存在,也可以两个或两个以上单元集成于一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1