图像处理方法、装置、计算机可读存储介质和电子设备转让专利

申请号 : CN201711240703.1

文献号 : CN107993209B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜成鹏

申请人 : OPPO广东移动通信有限公司

摘要 :

本申请涉及一种图像处理方法、装置、计算机可读存储介质和电子设备。所述方法包括:获取待处理图像中的目标区域及对应的区域面积;根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;根据所述区域面积和美颜参数模型获取对应的目标美颜参数;根据所述目标美颜参数对所述待处理图像进行美颜处理。上述图像处理方法、装置、计算机可读存储介质和电子设备,提高了图像处理的准确率。

权利要求 :

1.一种图像处理方法,其特征在于,所述方法包括:

获取待处理图像中的目标区域及对应的区域面积;所述目标区域为一个独立的连通区域;

根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于根据区域面积计算美颜参数的模型;其中,不同的区域面积对应不同的美颜参数模型;

根据所述区域面积和美颜参数模型获取对应的目标美颜参数;所述目标美颜参数包括美颜基础参数和美颜系数;所述美颜基础参数表征进行美颜处理的参考值;所述美颜系数用于表示获取所述目标美颜参数的权重;

根据所述目标美颜参数对所述待处理图像进行美颜处理。

2.根据权利要求1所述的图像处理方法,其特征在于,所述获取待处理图像中的目标区域及对应的区域面积包括以下方法中的一种:检测待处理图像中的人脸区域,并获取所述人脸区域对应的区域面积;

检测待处理图像中的人脸区域,根据所述人脸区域获取对应的皮肤区域,并获取所述皮肤区域对应的区域面积。

3.根据权利要求2所述的图像处理方法,其特征在于,所述根据所述人脸区域获取对应的皮肤区域包括:根据所述人脸区域对应的颜色信息生成颜色直方图;

获取所述颜色直方图中的峰值及对应的颜色区间;

根据所述颜色区间划分皮肤颜色区间,将所述人脸区域中所述皮肤颜色区间所对应的区域作为皮肤区域。

4.根据权利要求1所述的图像处理方法,其特征在于,所述根据所述区域面积获取对应的美颜参数模型包括:确定所述区域面积所处的面积区间,获取所述面积区间对应的美颜参数模型。

5.根据权利要求1至4任一项所述的图像处理方法,其特征在于,所述根据所述区域面积和美颜参数模型获取对应的目标美颜参数包括:获取所述目标区域对应的美颜基础参数;

根据所述区域面积和美颜参数模型计算美颜系数,并根据所述美颜基础参数和美颜系数获取目标美颜参数。

6.根据权利要求5所述的图像处理方法,其特征在于,所述获取所述目标区域对应的美颜基础参数包括:获取所述目标区域对应的人物属性特征,并根据所述人物属性特征获取对应的美颜基础参数。

7.根据权利要求5所述的图像处理方法,其特征在于,所述美颜基础参数包括第一美颜基础参数和第二美颜基础参数;

所述根据所述区域面积和美颜参数模型获取对应的目标美颜参数包括:根据所述区域面积和美颜参数模型计算美颜系数,根据所述第一美颜基础参数和美颜系数获取对应的第一美颜参数,并将所述第二美颜基础参数作为第二美颜参数;

根据所述第一美颜参数和第二美颜参数获取目标美颜参数。

8.一种图像处理装置,其特征在于,所述装置包括:

图像获取模块,用于获取待处理图像中的目标区域及对应的区域面积;所述目标区域为一个独立的连通区域;

模型获取模块,用于根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于根据区域面积计算美颜参数的模型;其中,不同的区域面积对应不同的美颜参数模型;

参数获取模块,用于根据所述区域面积和美颜参数模型获取对应的目标美颜参数;所述目标美颜参数包括美颜基础参数和美颜系数;所述美颜基础参数表征进行美颜处理的参考值;所述美颜系数用于表示获取所述目标美颜参数的权重;

美颜处理模块,用于根据所述目标美颜参数对所述待处理图像进行美颜处理。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的图像处理方法。

10.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述的图像处理方法。

说明书 :

图像处理方法、装置、计算机可读存储介质和电子设备

技术领域

[0001] 本申请涉及图像处理技术领域,特别是涉及图像处理方法、装置、计算机可读存储介质和电子设备。

背景技术

[0002] 无论是在工作还是生活中,拍照都是一项必不可少的技能。为了拍出一张让人满意的照片,不仅需要在拍摄过程中对拍摄参数进行改善,还需要在拍摄完成之后对照片本身进行改善。美颜处理就是指对照片进行美化的一种方法,经过美颜处理之后,会让照片中的人物看起来更加符合人类的审美。

发明内容

[0003] 本申请实施例提供一种图像处理方法、装置、计算机可读存储介质和电子设备,可以提高图像处理的准确率。
[0004] 一种图像处理方法,所述方法包括:
[0005] 获取待处理图像中的目标区域及对应的区域面积;
[0006] 根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;
[0007] 根据所述区域面积和美颜参数模型获取对应的目标美颜参数;
[0008] 根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0009] 一种图像处理装置,所述装置包括:
[0010] 图像获取模块,用于获取待处理图像中的目标区域及对应的区域面积;
[0011] 模型获取模块,用于根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;
[0012] 参数获取模块,用于根据所述区域面积和美颜参数模型获取对应的目标美颜参数;
[0013] 美颜处理模块,用于根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0014] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
[0015] 获取待处理图像中的目标区域及对应的区域面积;
[0016] 根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;
[0017] 根据所述区域面积和美颜参数模型获取对应的目标美颜参数;
[0018] 根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0019] 一种电子设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行如下步骤:
[0020] 获取待处理图像中的目标区域及对应的区域面积;
[0021] 根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;
[0022] 根据所述区域面积和美颜参数模型获取对应的目标美颜参数;
[0023] 根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0024] 上述图像处理方法、装置、计算机可读存储介质和电子设备,根据待处理图像中目标区域对应的区域面积获取对应的美颜参数模型,根据区域面积和美颜参数模型获取对应的目标美颜参数,并根据获取的目标美颜参数对待处理图像进行美颜处理。这样可以根据不同面积大小的目标区域进行不同的美颜处理,提高了美颜处理的准确率。

附图说明

[0025] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026] 图1为一个实施例中图像处理方法的应用环境图;
[0027] 图2为一个实施例中图像处理方法的流程图;
[0028] 图3为另一个实施例中图像处理方法的流程图;
[0029] 图4为又一个实施例中图像处理方法的流程图;
[0030] 图5为一个实施例中生成的颜色直方图;
[0031] 图6为又一个实施例中图像处理方法的流程图;
[0032] 图7为一个实施例中美颜系数的变化曲线图;
[0033] 图8为一个实施例中图像处理装置的结构示意图;
[0034] 图9为一个实施例中图像处理电路的示意图。

具体实施方式

[0035] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0036] 可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一获取模块称为第二获取模块,且类似地,可将第二获取模块称为第一获取模块。第一获取模块和第二获取模块两者都是获取模块,但其不是同一获取模块。
[0037] 图1为一个实施例中图像处理方法的应用环境图。如图1所示,该应用环境中包括用户终端102和服务器104。用户终端102中可以用于采集待处理图像,将待处理图像发送到服务器104中。服务器104接收到待处理图像之后,获取待处理图像中的目标区域及对应的区域面积;根据区域面积获取对应的美颜参数模型;根据区域面积和美颜参数模型获取对应的目标美颜参数;根据目标美颜参数对待处理图像进行美颜处理。最后服务器104将美颜处理后的待处理图像集合返回给用户终端102。可以理解的是,服务器也可以将获取的目标美颜参数发送给用户终端102,用户终端102根据目标美颜参数对待处理图像进行美颜处理。其中,用户终端102是处于计算机网络最外围,主要用于输入用户信息以及输出处理结果的电子设备,例如可以是个人电脑、移动终端、个人数字助理、可穿戴电子设备等。服务器104是用于响应服务请求,同时提供计算服务的设备,例如可以是一台或者多台计算机。可以理解的是,在本申请提供的其他实施例中,该图像处理方法的应用环境中可以只包括用户终端102,即用户终端102用于采集待处理图像,并将待处理图像进行美颜处理。
[0038] 图2为一个实施例中图像处理方法的流程图。如图2所示,该图像处理方法包括步骤202至步骤208。其中:
[0039] 步骤202,获取待处理图像中的目标区域及对应的区域面积。
[0040] 在一个实施例中,待处理图像是指需要进行美颜处理的图像。待处理图像可以是由移动终端进行采集的。移动终端上安装有可以用于拍摄的摄像头,用户可以通过移动终端发起拍照指令,移动终端在检测到拍照指令之后,通过摄像头采集拍摄图像。移动终端会将采集的图像进行存储,形成一个图像集合。可以理解的是,待处理图像还可以是通过其他途径获取的,在此不做限定。例如,待处理图像还可以是从网页中下载的,或者是从外接存储设备中导入的等等。获取待处理图像具体可以包括:接收用户输入的美颜指令,并根据美颜指令获取待处理图像,其中美颜指令中包含图像标识。图像标识是指区分不同待处理图像的唯一标识,根据图像标识获取待处理图像。例如,图像标识可以是图像名称、图像编码、图像存储地址等中的一种或多种。具体地,移动终端在获取到待处理图像之后,可以在移动终端本地进行美颜处理,也可以将待处理图像发送至服务器进行美颜处理。
[0041] 目标区域一般是用户比较关注的区域,具体可以是指待处理图像中需要进行美颜处理的区域。例如,目标区域可以是指人脸区域、人像区域、皮肤区域、嘴唇区域等,在此不做限定。可以理解的是,待处理图像是由若干个像素点构成的,目标区域则是由待处理图像中的若干个像素点构成的。区域面积是指目标区域所占面积的大小,可以表示为目标区域内所包含的像素点的总数量,也可以表示为目标区域与对应的待处理图像的面积比例。
[0042] 步骤204,根据区域面积获取对应的美颜参数模型,美颜参数模型是指用于计算美颜参数的模型。
[0043] 具体地,美颜参数模型是指用于计算美颜参数的模型,一般来说美颜参数模型可以表示为一个函数模型,该函数模型可以表示输入变量和输出结果的函数关系。可以理解的是,这种函数关系可以是线性的,也可以是非线性的。将输入变量输入到该函数模型中,可以获取对应输出的输出结果。例如,该函数模型可以表示为Y=X+1,其中,Y为输出结果,X为输入的变量。那么当输入变量X为1时,对应得到的输出结果Y就为2。预先建立区域面积与美颜参数模型的对应关系,根据区域面积可以获取对应的美颜参数模型。当区域面积不同时,获取的美颜参数模型可以不同,从而实现根据不同的区域面积,采用不同的美颜参数模型来计算目标美颜参数。
[0044] 步骤206,根据区域面积和美颜参数模型获取对应的目标美颜参数。
[0045] 在本申请提供的实施例中,目标美颜参数是指将目标区域进行美颜处理的参数。美颜处理就是指对图像进行美化的一种方法。例如,对图像中的人像进行美白、磨皮处理,也可以是指对人像进行美妆、瘦脸、瘦身等处理。美颜参数模型可表示区域面积和美颜参数之间的函数关系。获取到区域面积和美颜参数模型之后,将区域面积作为美颜参数模型的输入变量,通过美颜参数模型进行计算,得到的输出结果即为目标美颜参数。
[0046] 可以理解的是,目标区域一般在图像中表现为独立的连通区域,连通区域是指一个封闭的区域。例如,图像中的每一张人脸会对应一个独立的连通区域,当图像中存在多张人脸的时候,就会存在多个连通区域,每一张人脸对应一个独立的连通区域。若检测到待处理图像中存在多个目标区域,则可以分别针对每一个目标区域获取对应的区域面积,并分别根据区域面积和美颜参数模型获取对应的目标美颜参数。
[0047] 步骤208,根据目标美颜参数对待处理图像进行美颜处理。
[0048] 获取到目标美颜参数之后,根据目标美颜参数对待处理图像进行美颜处理。可以理解的是,可以是针对整张图像进行美颜处理,也可以只对目标区域进行美颜处理。例如,美白处理可以针对整张图像进行处理,提高整张图像的亮度,也可以只是针对皮肤区域进行处理,瘦脸处理可以只是针对人脸区域进行的处理。具体地,待处理图像是由若干个像素点构成的,每个像素点可以由多个颜色通道构成,每个颜色通道表示一个颜色分量。例如,图像可以由RGB(Red Green Blue,红,绿,蓝)三通道构成,也可以是由HSV(Hue Saturation Value,色调,饱和度,明度)三通道构成,还可以是由CMY(Cyan Magenta Yellow,洋红,青,黄)三通道构成。则在对图像进行美颜处理的时候,可以分别对图像的各个颜色通道进行美颜处理,每个颜色通道的处理程度可以不相同。具体地,可以根据区域面积和各个颜色通道对应的美颜参数模型,获取各个颜色通道的对应的美颜参数,并根据美颜参数对目标区域的各个颜色通道进行美颜处理。
[0049] 上述实施例提供的图像处理方法,根据待处理图像中目标区域对应的区域面积获取对应的美颜参数模型,根据区域面积和美颜参数模型获取对应的目标美颜参数,并根据获取的目标美颜参数对待处理图像进行美颜处理。这样可以根据不同面积大小的目标区域进行不同的美颜处理,提高了美颜处理的准确率。
[0050] 图3为另一个实施例中图像处理方法的流程图。如图3所示,该图像处理方法包括步骤302至步骤310。其中:
[0051] 步骤302,获取待处理图像中的目标区域及对应的区域面积。
[0052] 若在服务器上进行美颜处理,则各个移动终端可以将待处理图像发送到服务器,服务器在接收到该待处理图像之后,对待处理图像中的待处理图像进行美颜处理。移动终端发送待处理图像时,同时发送对应的终端标识,服务器处理完成之后,根据终端标识查找对应的移动终端,把处理完成之后的待处理图像发送到移动终端。其中,终端标识是指用户终端的唯一标识。例如,终端标识可以是IP(Internet Protocol,网络之间互连的协议)地址、MAC(Media Access Control,媒体访问控制)地址等中的至少一种。
[0053] 在一个实施例中,目标区域可以是指待处理图像中的人脸区域或人脸区域所对应的皮肤区域。则步骤302具体可以包括:检测待处理图像中的人脸区域,并获取人脸区域对应的区域面积;检测待处理图像中的人脸区域,根据人脸区域获取对应的皮肤区域,并获取皮肤区域对应的区域面积。具体可以通过人脸检测算法获取待处理图像的人脸区域,人脸检测算法可以包括基于几何特征的检测方法、特征脸检测方法、线性判别分析方法、基于隐马尔柯夫模型检测方法等,在此不做限定。皮肤区域是指皮肤所在的区域,根据人脸区域获取对应的皮肤区域的方法具体可以包括:
[0054] 步骤402,根据人脸区域对应的颜色信息生成颜色直方图。
[0055] 颜色直方图用于描述不同色彩在人脸区域中所占的比例,颜色信息是指用来表示图像的色彩的相关参数。例如,在HSV颜色空间中,颜色信息可以包括图像中色彩的H(Hue,色调)、S(Saturation,饱和度)及V(Value,明度)等信息。获取人脸区域对应的颜色信息,可将颜色信息划分为多个小的颜色区间,并分别计算人脸区域中落入各个颜色区间的像素点的数量,从而得到颜色直方图。其中,颜色直方图可以是RGB颜色直方图、HSV颜色直方图或是YUV颜色直方图等,并不限于此。在HSV颜色空间中,分量可包括H(Hue,色调)、S(Saturation,饱和度)及V(Value,明度),H表示角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°;S表示颜色接近光谱色的程度,光谱色所占的比例越大,颜色接近光谱色的程度就越高,颜色的饱和度也越高,饱和度高,颜色一般深而艳;V表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值和物体的透射比或反射比有关,V通常取值范围为0%(黑)到100%(白)。具体地,生成HSV颜色直方图的方法可以包括:将人脸区域从RGB颜色空间转换至HSV颜色空间;分别对HSV中的H、S、V三个分量进行量化,并将量化后的H、S、V三个分量合成一维的特征向量;根据人脸区域中各个像素点在HSV颜色空间中的值,确定像素点在H、S、V三个分量的量化级别;根据像素点的量化级别计算对应的特征向量,并根据特征向量统计在各个量化级别上分布的像素点的数量;根据统计结果生成颜色直方图。
[0056] 其中,特征向量的取值可在0~255之间,共256个值,也即可将HSV颜色空间划分为256个颜色区间,每个颜色区间对应一个特征向量的值。例如,可将H分量量化为16级,将S分量及V分量分别量化为4级,合成一维的特征向量可如下式所示:
[0057] L=H*QS*QV+S*QV+V;
[0058] L表示量化后的H、S及V三个分量合成的一维的特征向量;QS表示S分量的量化级数,QV表示V分量的量化级数。
[0059] 步骤404,获取颜色直方图中的峰值及对应的颜色区间。
[0060] 波峰指的是在颜色直方图形成的一段波内波幅的最大值,可通过求取颜色直方图中各个点的一阶差分进行确定,峰值则为波峰上的最大值。获取到颜色直方图中的峰值之后,获取峰值对应的量化的颜色区间,该颜色区间可以是HSV颜色空间中与峰值对应的特征向量的值。图5为一个实施例中生成的颜色直方图。如图5所示,颜色直方图的纵轴表示像素点的分布情况,即对应颜色区间的像素点的数量。横轴表示HSV颜色空间的特征向量,也即HSV颜色空间划分的多个颜色区间。可以看出,图5中的颜色直方图包含波峰502,波峰502对应的峰值为850,该峰值对应的颜色区间为150,也即统计图像中有850个像素点的特征向量值为150。
[0061] 步骤406,根据颜色区间划分皮肤颜色区间,将人脸区域中皮肤颜色区间所对应的区域作为皮肤区域。
[0062] 根据颜色直方图的峰值对应的颜色区间划分人脸区域的皮肤颜色区间,可预先设定皮肤颜色区间的范围值,再根据峰值对应的颜色区间及预设的范围值计算皮肤颜色区间。可选地,计算机设备可将峰值对应的颜色区间与预设的范围值相乘,其中,预设的范围值可包括上限值与下限值,可将峰值对应的颜色区间分别与上限值及下限值相乘,得到皮肤颜色区间。例如,计算机设备可预先设定皮肤颜色区间的范围值为80%~120%,若颜色直方图的峰值对应的颜色区间为150的值,则可计算得到皮肤颜色区间为120~180。
[0063] 将人脸区域中皮肤颜色区间所对应的区域作为皮肤区域,可选地,计算机设备可获取人脸区域中各个像素点在HSV颜色空间的特征向量,并判断特征向量是否落入皮肤颜色区间,若落入,则可将对应的像素点定义为皮肤区域的像素点。例如,计算得到皮肤颜色区间为120~180,则计算机设备可将人脸区域中在HSV颜色空间的特征向量在120~180之间的像素点,定义为皮肤区域中的像素点。
[0064] 步骤304,确定区域面积所处的面积区间,获取面积区间对应的美颜参数模型。
[0065] 对待处理图像中的目标区域进行美颜处理,一般来说如果目标区域的面积太小,那么目标区域中的细节信息就会比较多,美颜处理之后很容易导致细节信息的丢失,降低图像的美感。在进行美颜处理的时候可以考虑相应地减轻美颜处理的程度,这样更好地保留一些细节信息,不会导致图像的失真。具体地,将图像的区域面积划分为不同的面积区间,当区域面积在不同的面积区间时,对应进行不同程度的美颜处理。例如,区域面积可以通过目标区域与待处理图像的面积比例进行表示,那么目标区域的区域面积的取值就为0到1,区域面积为0时,表示待处理图像中不存在目标区域,区域面积为1时表示待处理图像的整个图像区域都为目标区域。则将区域面积进行划分,每一个面积区间对应一个美颜参数模型。在获取到待处理图像中的目标区域之后,获取目标区域对应的面积区域,然后根据面积区域所处的面积区间获取对应的美颜参数模型。例如,区域面积可以分为0~0.2、0.2~0.6、0.6~0.8和0.8~1等四个面积区间,分别对应模型1、模型2、模型3、和模型4。则当目标区域的区域面积为0.5时,获取的美颜参数模型就为模型2。
[0066] 步骤306,获取目标区域对应的美颜基础参数。
[0067] 步骤308,根据区域面积和美颜参数模型计算美颜系数,并根据美颜基础参数和美颜系数获取目标美颜参数。
[0068] 在一个实施例中,目标区域可以与美颜基础参数对应,根据目标区域获取对应的美颜基础参数。不同的目标区域可以对应同一个美颜基础参数,也可以对应不同的美颜基础参数。根据区域面积和美颜参数模型计算美颜系数,然后根据美颜基础参数和美颜系数获取目标美颜参数。其中,美颜基础参数是指进行美颜处理的参考值,美颜系数是指获取美颜参数的权重。根据美颜基础参数和美颜系数获取目标美颜参数。
[0069] 步骤310,根据目标美颜参数对待处理图像进行美颜处理。
[0070] 在获取到目标区域之后,可以对每一个目标区域建立一个区域标识,然后建立区域标识、位置坐标和目标美颜参数的关系,根据位置坐标获取对应的目标区域,然后根据对应的目标美颜参数对目标区域进行美颜出来。例如,检测到待处理图像“pic.jpg”中包含人脸1、人脸2和人脸3等三个人脸区域,对应的人脸标识分别为face1、face2和face3,对应的目标美颜参数分别为1级美白、2级美白和1级祛痘。
[0071] 上述实施例提供的图像处理方法,将区域面积划分为多个面积区间,根据待处理图像中目标区域对应的区域面积,并根据面积区域所处的面积区间获取对应的美颜参数模型,根据区域面积和美颜参数模型获取对应的目标美颜参数,并根据获取的目标美颜参数对待处理图像进行美颜处理。这样可以根据不同面积大小的目标区域进行不同的美颜处理,提高了美颜处理的准确率。
[0072] 图6为又一个实施例中图像处理方法的流程图。如图6所示,该图像处理方法包括步骤602至步骤612。其中:
[0073] 步骤602,获取待处理图像中的目标区域及对应的区域面积。
[0074] 待处理图像中的目标区域可以为一个或多个,例如待处理图像中可以有一张人脸,也可以有多张人脸,将人脸所在的区域作为目标区域。可以理解的是,待处理图像中也可以不存在目标区域,不存在目标区域的待处理图像可以不进行美颜处理。待处理图像中的目标区域可以通过区域标记进行获取,也可以直接在待处理图像中进行检测得到。区域标记是指待处理图像中用于表示目标区域的范围的标记,例如在待处理图像中用红色矩形框将目标区域进行标记,该红色矩形框中的区域就认为是目标区域。将待处理图像中的目标区域单独提取出来,并与待处理图像的图像标识和位置坐标建立对应关系,如果一张待处理图像中存在多个目标区域,则将每个目标区域单独与图像标识和位置坐标建立对应关系。其中,位置坐标是指表示目标区域在待处理图像中的位置的坐标。例如,位置坐标可以是目标区域中心位置在待处理图像中的位置的坐标,也可以是左上角位置在待处理图像中的位置的坐标。对目标区域处理完之后,通过图像标识查找对应的待处理图像,然后通过位置坐标查找该目标区域在该待处理图像中的具体位置,将该目标区域进行还原。
[0075] 步骤604,根据区域面积获取对应的美颜参数模型,美颜参数模型是指用于计算美颜参数的模型。
[0076] 步骤606,获取目标区域对应的人物属性特征,并根据人物属性特征获取对应的美颜基础参数,美颜基础参数包括第一美颜基础参数和第二美颜基础参数。
[0077] 人物属性特征是指表示图像中人物的人物属性的特征,例如人物属性特征可以是指性别特征、年龄特征、人种特征等中的一种或多种。具体地,获取待处理图像中的人脸区域,然后根据人脸区域来识别对应的人物属性特征。更进一步地,获取待处理图像中的人脸区域,通过特征识别模型获取人脸区域对应的人物属性特征。其中,特征识别模型是指识别人物属性特征的模型,特征识别模型是通过人脸样本集合训练得到的。人脸样本集合是指由若干张人脸图像构成的图像集合,根据人脸样本集合训练得到特征识别模型,一般地人脸样本集合中的人脸图像越多,训练得到的特征识别模型越精确。例如,在监督学习中,将人脸样本集合中的每一张人脸图像打上相应的标签,用于标记人脸图像的类型,通过对人脸样本集合的训练可以得到特征识别模型。特征识别模型可以将人脸区域进行分类,得到对应的人物属性特征。例如,将人脸区域可以分为黄种人、黑种人和白种人,那么得到的对应的人物属性特征就是黄种人、黑种人或白种人中的一种。也就是说,通过特征识别模型进行分类是基于同一标准的。若要得到人脸区域的不同维度的人物属性特征,则可以通过不同的特征识别模型分别进行获取。
[0078] 具体地,人物属性特征可以包括人种特征参数、性别特征参数、年龄特征参数、肤色特征参数、肤质特征参数、脸型特征参数、妆容特征参数,在此不做限定。例如,通过人种识别模型得到人脸区域对应的人种特征参数,根据年龄识别模型得到人脸区域对应的年龄特征参数,根据性别识别模型得到人脸区域对应的性别特征参数。预先建立人物属性特征与美颜基础参数之间的关系,根据人物属性特征去获取对应的美颜基础参数。例如,人物属性特征可以包括男性和女性,当识别人脸为男性时,对应的美颜基础参数磨皮处理,当识别人脸为女性时,对应的美颜基础参数为美白处理。人物属性特征与美颜基础参数之间的对应关系,可以是用户设置的,也可以是系统通过大数据进行学习得到的。
[0079] 步骤608,根据区域面积和美颜参数模型计算美颜系数,根据第一美颜基础参数和美颜系数获取对应的第一美颜参数,并将第二美颜基础参数作为第二美颜参数。
[0080] 美颜处理可以包括磨皮、瘦脸、大眼、祛斑、祛黑眼圈、美白提亮、锐化、红唇、亮眼等不同的处理,而其中一部分处理会因为受到目标区域的区域面积的影响,而一部分处理与目标区域的区域面积没有直接关联。例如,磨皮、瘦脸、大眼、祛斑、祛黑眼圈等处理会改变人脸的尺寸和细节信息,若人脸面积太小,再对人脸进行磨皮、瘦脸等处理,就可能会造成人脸区域的五官变形,导致图像失真;而美白提亮、锐化、红唇、亮眼这些处理不会对尺寸进行改变,就不会造成五官变形。则目标美颜参数可以包括第一美颜参数和第二美颜参数,第一美颜参数会受到区域面积的影响,与区域面积存在对应关系,第二美颜参数则不会受到区域面积的影响。具体地,美颜基础参数包括第一美颜基础参数和第二美颜基础参数。根据区域面积和美颜参数模型计算美颜系数,根据第一美颜基础参数和美颜系数获取对应的第一美颜参数,并将第二美颜基础参数作为第二美颜参数。
[0081] 更进一步地,当目标区域的面积太小的时候,可以不对目标区域进行美颜处理,或者进行一部分处理。例如,只对目标区域进行小程度的磨皮处理或美白处理,这样可以保证处理后的图像失真不会太严重。则可以设置一个面积阈值,同时将美颜系数分为第一美颜系数和第二美颜系数。当区域面积大于该面积阈值时,根据区域面积和美颜参数模型计算第一美颜系数,根据第一美颜基础参数和第一美颜系数获取对应的第一美颜参数,并将第二美颜基础参数作为第二美颜参数。当区域面积小于面积阈值时,获取第一美颜系数和第二美颜系数,根据第一美颜系数和第一美颜基础参数获取第一美颜参数,根据第二美颜系数和第二美颜基础参数获取第二美颜参数。其中,第一美颜参数和第二美颜参数为设定的一个较小的值,则最后获取的第一美颜系数和第二美颜系数就会是一个比较小的值。
[0082] 步骤610,根据第一美颜参数和第二美颜参数获取目标美颜参数。
[0083] 在一个实施例中,假设美颜基础参数为defaultParam,其中美颜基础参数分为第一美颜基础参数adjustParam和第二美颜基础参数unchangedParam。美颜处理可以分别包括磨皮、瘦脸、大眼、祛斑、祛黑眼圈、美白提亮、锐化、红唇、亮眼等处理,则:
[0084] defaultParam=[adjustParam|unchangedParam];
[0085] djustParam=[softenP,faceSlenderP,eyeLargerP,deblemishP,depouchP];
[0086] unchangedParam=[skinBrightenP,sharpP,lipP,eyeBrightenP];
[0087] 其中,softenP表示磨皮基础参数,faceSlenderP表示瘦脸基础参数,eyeLargerP表示大眼基础参数,deblemishP表示祛斑基础参数,depouchP表示祛黑眼圈基础参数。skinBrightenP美白提亮基础参数,sharpP锐化基础参数,lipP表示红唇基础参数,eyeBrightenP表示亮眼基础参数。
[0088] 假设美颜系数为Factor,美颜系数包括第一美颜系数adjustFactor和第二美颜系数unchangedFactor。根据第一美颜系数和第一美颜基础参数可以获取第一美颜参数,根据第二美颜系数和第二美颜基础参数可以获取第二美颜参数。
[0089] Factor=[adjustFactor|unchangedFactor];
[0090] adjustFactor=[softenF,faceSlenderF,eyeLargerF,deblemishF,depouchF];
[0091] unchangedFactor=[skinBrightenF,sharpF,lipF,eyeBrightenF];
[0092] 其中,softenF表示磨皮系数,faceSlenderF表示瘦脸系数,eyeLargerF表示大眼系数,deblemishF表示祛斑系数,depouchF表示祛黑眼圈系数。skinBrightenF美白提亮系数,sharpF锐化系数,lipF表示红唇系数,eyeBrightenF表示亮眼系数。
[0093] 获取的目标区域的区域面积为FaceArea,则可以通过大数据分析最佳区域面积的取值范围,也可以由用户自定义该取值范围。假设定义最佳区域面积的取值范围为[stdAreamin,stdAreamax],区域面积在该取值范围内时,可以直接将第一美颜基础参数作为第一美颜参数,即第一美颜系数adjustFactor就为[1,1,1,1,1]。当区域面积超出该取值范围时,可以通过一个函数来获取对应的美颜系数,一般地区域面积越小,第一美颜系数越小,区域面积越大,第一美颜系数越大。为了避免美颜处理程度过深或过浅,可以对区域面积设置一个下限值minArea和一个上限值maxArea,当区域面积大于该上限值或低于该下限值时,第一美颜系数的取值不变。具体地,可以自定义该上限值和下限值,假设定义该下限值和上限值分别为minArea=0.25*stdAreamin,maxArea=1.75*stdAreamax,则,获取第一美颜系数的公式如下:
[0094]
[0095] 当区域面积FaceArea大于minArea时,可以根据上式可以获取第一美颜系数,根据第一美颜系数可以第一美颜基础参数可以获取第一美颜参数,将第二美颜基础参数直接作为第二美颜参数,也即第二美颜系数为[1,1,1,1]。当区域面积FaceArea小于minArea时,可以选择不对目标区域进行美颜处理,也可以对目标区域进行小程度的美颜处理。定义第一美颜系数和第二美颜系数为较小的值,根据获取的第一美颜系数和第一美颜基础参数获取第一美颜参数,并根据获取的第二美颜系数和第二美颜基础参数获取第二美颜参数,那么得到的第一美颜参数和第二美颜参数也是一个较小的值。例如,当FaceArea小于minArea时,可以令第一美颜系数为adjustFactor=[0.5,0,0,0,0],第二美颜系数为unchangedFactor=[0,0,0,0]。根据获取的美颜系数和美颜基础参数获取对应的目标美颜参数,则目标美颜参数adjustParam即为:
[0096] adjustParam=defaultParam*FactorT
[0097] 图7为一个实施例中美颜系数的变化曲线图。如图7所示,当区域面积FaceArea大于minArea时,第一美颜系数的变化呈阶梯性增长,一共分为四个阶段,第一阶段:当minAreamaxArea时,第一美颜系数保持不变。
[0098] 步骤612,根据目标美颜参数对待处理图像进行美颜处理。
[0099] 系统中可以包括多个美颜模块,每个美颜模块可以进行一种美颜处理。例如,系统中可以包括磨皮模块、美白模块、大眼模块、瘦脸模块、肤色调整模块,可以分别对待处理图像进行磨皮处理、美白处理、大眼处理、瘦脸处理、肤色调整处理。在一个实施例中,各个美颜模块可以是一个代码函数模块,通过该代码函数模块来实现对图像的美颜处理。每个代码函数模块都对应一个标志位,通过该标志位来决定是否进行对应的处理。例如,每个美颜模块都对应一个标志位Stat,当该标志位Stat的取值为1或ture时,说明需要进行该美颜模块对应的美颜处理;当该标志位Stat的取值为0或fals时,说明不需要进行该美颜模块对应的美颜处理。
[0100] 具体地,根据目标美颜参数对各个美颜模块的标志位进行赋值,根据标志位获取用于美颜处理的美颜模块,并将目标美颜参数输入到获取的各个美颜模块中对待处理图像进行美颜处理。例如,目标美颜参数中包括对人脸进行美白处理,则将美白模块对应的标志位赋值为1,若不需要进行大眼处理,则将大眼模块对应的标志位赋值为0。在进行美颜处理的时候,遍历各个美颜模块根据标志位判断是否需要进行对应的处理。可以理解的是,各个美颜模块进行的美颜处理是相互独立,互不影响的。假设图像需要进行多种美颜处理,则可以依次通过各个美颜模块进行处理,得到最终的美颜图像。
[0101] 当待处理图像中存在多个目标区域的时候,可以遍历每一个目标区域,并获取每一个目标区域对应的目标美颜参数,根据获取的目标美颜参数分别对目标区域进行美颜处理。若只对待处理图像中的目标区域进行美颜处理,而未对待处理图像中除目标区域之外的剩余区域做美颜处理,在处理之后可能会导致目标区域和剩余区域之间有明显的差异。例如,对目标区域进行美白处理之后,目标区域的亮度明显比剩余区域的亮度高,这样使图像看起来很不自然。那么可以在生成的美颜图像中,将目标区域的边界进行过渡处理,使得到的美颜图像看起来更加自然。
[0102] 上述实施例提供的图像处理方法,根据待处理图像中目标区域对应的区域面积获取对应的美颜参数模型,根据目标区域的人物属性特征获取对应的美颜基础参数,并根据区域面积和美颜参数模型获取对应的美颜系数。美颜基础参数和美颜系数获取目标美颜参数,然后根据获取的目标美颜参数对待处理图像进行美颜处理。这样可以根据不同面积大小的目标区域进行不同的美颜处理,提高了美颜处理的准确率。
[0103] 图8为一个实施例中图像处理装置的结构示意图。如图8所示,该图像处理装置800包括图像获取模块802、模型获取模块804、参数获取模块806和美颜处理模块808。其中:
[0104] 图像获取模块802,用于获取待处理图像中的目标区域及对应的区域面积。
[0105] 模型获取模块804,用于根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型。
[0106] 参数获取模块806,用于根据所述区域面积和美颜参数模型获取对应的目标美颜参数。
[0107] 美颜处理模块808,用于根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0108] 上述实施例提供的图像处理装置,根据待处理图像中目标区域对应的区域面积获取对应的美颜参数模型,根据区域面积和美颜参数模型获取对应的目标美颜参数,并根据获取的目标美颜参数对待处理图像进行美颜处理。这样可以根据不同面积大小的目标区域进行不同的美颜处理,提高了美颜处理的准确率。
[0109] 在一个实施例中,图像获取模块802还用于检测待处理图像中的人脸区域,并获取所述人脸区域对应的区域面积;或检测待处理图像中的人脸区域,根据所述人脸区域获取对应的皮肤区域,并获取所述皮肤区域对应的区域面积。
[0110] 在一个实施例中,图像获取模块802还用于根据所述人脸区域对应的颜色信息生成颜色直方图;获取所述颜色直方图中的峰值及对应的颜色区间;根据所述颜色区间划分皮肤颜色区间,将所述人脸区域中所述皮肤颜色区间所对应的区域作为皮肤区域。
[0111] 在一个实施例中,模型获取模块804还用于确定所述区域面积所处的面积区间,获取所述面积区间对应的美颜参数模型。
[0112] 在一个实施例中,参数获取模块806还用于获取所述目标区域对应的美颜基础参数;根据所述区域面积和美颜参数模型计算美颜系数,并根据所述美颜基础参数和美颜系数获取目标美颜参数。
[0113] 在一个实施例中,参数获取模块806还用于获取所述目标区域对应的人物属性特征,并根据所述人物属性特征获取对应的美颜基础参数。
[0114] 在一个实施例中,参数获取模块806还用于根据所述区域面积和美颜参数模型计算美颜系数,根据所述第一美颜基础参数和美颜系数获取对应的第一美颜参数,并将所述第二美颜基础参数作为第二美颜参数;根据所述第一美颜参数和第二美颜参数获取目标美颜参数。
[0115] 上述图像处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将图像处理装置按照需要划分为不同的模块,以完成上述图像处理装置的全部或部分功能。
[0116] 本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机程序的非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行以下步骤:
[0117] 获取待处理图像中的目标区域及对应的区域面积;
[0118] 根据所述区域面积获取对应的美颜参数模型,所述美颜参数模型是指用于计算美颜参数的模型;
[0119] 根据所述区域面积和美颜参数模型获取对应的目标美颜参数;
[0120] 根据所述目标美颜参数对所述待处理图像进行美颜处理。
[0121] 在一个实施例中,所述处理器执行的所述获取待处理图像中的目标区域及对应的区域面积包括以下方法中的一种:
[0122] 检测待处理图像中的人脸区域,并获取所述人脸区域对应的区域面积;
[0123] 检测待处理图像中的人脸区域,根据所述人脸区域获取对应的皮肤区域,并获取所述皮肤区域对应的区域面积。
[0124] 在一个实施例中,所述处理器执行的所述根据所述人脸区域获取对应的皮肤区域包括:
[0125] 根据所述人脸区域对应的颜色信息生成颜色直方图;
[0126] 获取所述颜色直方图中的峰值及对应的颜色区间;
[0127] 根据所述颜色区间划分皮肤颜色区间,将所述人脸区域中所述皮肤颜色区间所对应的区域作为皮肤区域。
[0128] 在一个实施例中,所述处理器执行的所述根据所述区域面积获取对应的美颜参数模型包括:
[0129] 确定所述区域面积所处的面积区间,获取所述面积区间对应的美颜参数模型。
[0130] 在一个实施例中,所述处理器执行的所述根据所述区域面积和美颜参数模型获取对应的目标美颜参数包括:
[0131] 获取所述目标区域对应的美颜基础参数;
[0132] 根据所述区域面积和美颜参数模型计算美颜系数,并根据所述美颜基础参数和美颜系数获取目标美颜参数。
[0133] 在一个实施例中,所述处理器执行的所述获取所述目标区域对应的美颜基础参数包括:
[0134] 获取所述目标区域对应的人物属性特征,并根据所述人物属性特征获取对应的美颜基础参数。
[0135] 在一个实施例中,所述美颜基础参数包括第一美颜基础参数和第二美颜基础参数;
[0136] 所述处理器执行的所述根据所述区域面积和美颜参数模型获取对应的目标美颜参数包括:
[0137] 根据所述区域面积和美颜参数模型计算美颜系数,根据所述第一美颜基础参数和美颜系数获取对应的第一美颜参数,并将所述第二美颜基础参数作为第二美颜参数;
[0138] 根据所述第一美颜参数和第二美颜参数获取目标美颜参数。
[0139] 本申请实施例还提供一种电子设备。上述电子设备中包括图像处理电路,图像处理电路可以利用硬件和/或软件组件实现,可包括定义ISP(Image Signal Processing,图像信号处理)管线的各种处理单元。图9为一个实施例中图像处理电路的示意图。如图9所示,为便于说明,仅示出与本申请实施例相关的图像处理技术的各个方面。
[0140] 如图9所示,图像处理电路包括ISP处理器940和控制逻辑器950。成像设备910捕捉的图像数据首先由ISP处理器940处理,ISP处理器940对图像数据进行分析以捕捉可用于确定和/或成像设备910的一个或多个控制参数的图像统计信息。成像设备910可包括具有一个或多个透镜912和图像传感器914的照相机。图像传感器914可包括色彩滤镜阵列(如Bayer滤镜),图像传感器914可获取用图像传感器914的每个成像像素捕捉的光强度和波长信息,并提供可由ISP处理器940处理的一组原始图像数据。传感器920(如陀螺仪)可基于传感器920接口类型把采集的图像处理的参数(如防抖参数)提供给ISP处理器940。传感器920接口可以利用SMIA(Standard Mobile Imaging Architecture,标准移动成像架构)接口、其它串行或并行照相机接口或上述接口的组合。
[0141] 此外,图像传感器914也可将原始图像数据发送给传感器920,传感器920可基于传感器920接口类型把原始图像数据提供给ISP处理器940,或者传感器920将原始图像数据存储到图像存储器930中。
[0142] ISP处理器940按多种格式逐个像素地处理原始图像数据。例如,每个图像像素可具有8、10、12或14比特的位深度,ISP处理器940可对原始图像数据进行一个或多个图像处理操作、收集关于图像数据的统计信息。其中,图像处理操作可按相同或不同的位深度精度进行。
[0143] ISP处理器940还可从图像存储器930接收图像数据。例如,传感器920接口将原始图像数据发送给图像存储器930,图像存储器930中的原始图像数据再提供给ISP处理器940以供处理。图像存储器930可为存储器装置的一部分、存储设备、或电子设备内的独立的专用存储器,并可包括DMA(Direct Memory Access,直接直接存储器存取)特征。
[0144] 当接收到来自图像传感器914接口或来自传感器920接口或来自图像存储器930的原始图像数据时,ISP处理器940可进行一个或多个图像处理操作,如时域滤波。处理后的图像数据可发送给图像存储器930,以便在被显示之前进行另外的处理。ISP处理器940还可从图像存储器930接收处理数据,对所述处理数据进行原始域中以及RGB和YCbCr颜色空间中的图像数据处理。处理后的图像数据可输出给显示器980,以供用户观看和/或由图形引擎或GPU(Graphics Processing Unit,图形处理器)进一步处理。此外,ISP处理器940的输出还可发送给图像存储器930,且显示器980可从图像存储器930读取图像数据。在一个实施例中,图像存储器930可被配置为实现一个或多个帧缓冲器。此外,ISP处理器940的输出可发送给编码器/解码器970,以便编码/解码图像数据。编码的图像数据可被保存,并在显示于显示器980设备上之前解压缩。
[0145] ISP处理器940处理图像数据的步骤包括:对图像数据进行VFE(Video Front End,视频前端)处理和CPP(Camera Post Processing,摄像头后处理)处理。对图像数据的VFE处理可包括修正图像数据的对比度或亮度、修改以数字方式记录的光照状态数据、对图像数据进行补偿处理(如白平衡,自动增益控制,γ校正等)、对图像数据进行滤波处理等。对图像数据的CPP处理可包括对图像进行缩放、向每个路径提供预览帧和记录帧。其中,CPP可使用不同的编解码器来处理预览帧和记录帧。ISP处理器940处理后的图像数据可发送给美颜模块960,以便在被显示之前对图像进行美颜处理。美颜模块960对图像数据美颜处理可包括:美白、祛斑、磨皮、瘦脸、祛痘、增大眼睛等。其中,美颜模块960可为移动终端中CPU(Central Processing Unit,中央处理器)、GPU或协处理器等。美颜模块960处理后的数据可发送给编码器/解码器970,以便编码/解码图像数据。编码的图像数据可被保存,并在显示于显示器980设备上之前解压缩。其中,美颜模块960还可位于编码器/解码器970与显示器980之间,即美颜模块对已成像的图像进行美颜处理。上述编码器/解码器970可为移动终端中CPU、GPU或协处理器等。
[0146] ISP处理器940确定的统计数据可发送给控制逻辑器950单元。例如,统计数据可包括自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿、透镜912阴影校正等图像传感器914统计信息。控制逻辑器950可包括执行一个或多个例程(如固件)的处理器和/或微控制器,一个或多个例程可根据接收的统计数据,确定成像设备910的控制参数以及ISP处理器940的控制参数。例如,成像设备910的控制参数可包括传感器920控制参数(例如增益、曝光控制的积分时间)、照相机闪光控制参数、透镜912控制参数(例如聚焦或变焦用焦距)、或这些参数的组合。ISP控制参数可包括用于自动白平衡和颜色调整(例如,在RGB处理期间)的增益水平和色彩校正矩阵,以及透镜912阴影校正参数。
[0147] 运用图9中图像处理技术可实现上述实施例提供的图像处理方法。
[0148] 一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的图像处理方法。
[0149] 本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
[0150] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。