CN108171648B - 一种美颜肤色变换的方法和装置 - Google Patents
一种美颜肤色变换的方法和装置 Download PDFInfo
- Publication number
- CN108171648B CN108171648B CN201711210303.6A CN201711210303A CN108171648B CN 108171648 B CN108171648 B CN 108171648B CN 201711210303 A CN201711210303 A CN 201711210303A CN 108171648 B CN108171648 B CN 108171648B
- Authority
- CN
- China
- Prior art keywords
- pixel point
- color
- value
- pixel
- space
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000003796 beauty Effects 0.000 title claims abstract description 17
- 230000009466 transformation Effects 0.000 claims abstract description 71
- 239000011159 matrix material Substances 0.000 claims abstract description 43
- 238000013507 mapping Methods 0.000 claims description 124
- 230000002087 whitening effect Effects 0.000 claims description 69
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 claims description 6
- 230000010363 phase shift Effects 0.000 claims description 6
- 235000019642 color hue Nutrition 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 26
- 230000006870 function Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 239000003086 colorant Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000005282 brightening Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- 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/10024—Color image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Color Image Communication Systems (AREA)
Abstract
本发明提供了一种美颜肤色变换的方法和装置。所述方法包括:获取原始图像,对所述原始图像发送操作指令并判断所述操作指令;若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;计算红色色相区域中每个像素点的HSV空间色度,偏移权重及实际需要偏移角度;再将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作后通过矩阵运算增加饱和度;将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点,从而得到所述原始图像对应的红润图像。本申请可以实现对图片肤色美颜变换效果与效率的提升。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种美颜肤色变换的方法和装置。
背景技术
在图像处理后期以及移动终端的app中,通常可对用户图片中的肤色进行色彩的处理,如美白,红润等。在传统肤色美颜变换算法中,通常有插值法和色度增亮法,通过线性映射或对数曲线映射对图片整体亮度提升。现有技术的算法中要么是美颜肤色处理效果好,但是计算复杂,效率低,要么是计算简单,但是效果不好,无法兼顾两者。
发明内容
本发明提供一种美颜肤色变换的方法及装置,以实现在保证肤色美颜变换效果的前提下提高肤色美颜变换的效率。
本发明提供了一种美颜肤色变换的方法,包括:
获取原始图像;
对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度;
将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作;
分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度;
将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
基于转换后的像素点,得到所述原始图像对应的红润图像。
优选地,所述对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重包括:
所述红色色相区域中的每个像素点表示为Ci(ri,gi,bi),所述Ci(ri,gi,bi)的HSV空间色度hi计算方法为:
根据所述HSV空间色度hi计算所述像素点的偏移权重wi=f(hi;r),所述像素点的偏移权重wi表示像素点属于红色色相的程度,r为4元素向量表示红色色相区域;,f(hi;r)表示HSV空间色度hi与红色色相区域r的函数关系。。
优选地,所述分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度,包括:
通过θi=θ×wi,计算像素点的实际需要偏移角度θi,其中θ为原始图像角度偏移,wi表示像素点的偏移权重。
优选地,所述将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作,包括:
Ui=ui×cosθi-vi×sinθi,Vi=ui×sinθi+vi×cosθi
其中θi为像素点实际需要偏移角度,ui和vi为在YUV空间中对所述像素点进行色相偏移前的U,V通道颜色值,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的U,V通道颜色值。
优选地,所述分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度,包括:
(U′i,V′i)=(Ui,Vi)×(1+λ×wi)
其中λ为饱和度增量,wi为像素点的偏移权重,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的U,V通道颜色值,U′i和V′i为在YUV空间中对所述像素点增加图像饱和度后的U,V通道颜色值。
优选地,所述方法还包括:
若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
获取所述原始图像的各像素点的颜色值;
针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
优选地,所述若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存,包括:
获取第一图像所有像素的第一颜色值,生成第一颜色值组;
根据贝塞尔映射曲线函数,得到所述第一图像所有像素的第一颜色值对应的第一映射值,生成第一映射值组;
将所述第一颜色值组与所述第一映射值组存入映射表中,生成预存色彩变换映射表并缓存。
优选地,所述针对各像素点的像素值,查询色彩变换映射表,获得相应美白值,包括:
依据所述原始图像的各像素点的颜色值,查询所述预存色彩变换映射表中的第一颜色值组;
若原始图像的像素点的颜色值,与所述预存色彩变换映射表中的第一颜色值组中的第二颜色值相同,则得到第一映射值组中的第二映射值,第二映射值即相应像素点的美白值。
本发明提供了一种美颜肤色变换的装置,包括:
原始图像获取模块,用于获取原始图像;
操作指令判断模块,用于对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
红色色相区域获取模块,用于若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
HSV空间色度模块,用于对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
偏移权重模块,用于分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
实际需要偏移角度模块,用于分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度;
色相偏移操作模块,用于将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作;
饱和度模块,用于分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度;
空间转换模块,用于将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
红润成像模块,用于基于转换后的像素点,得到所述原始图像对应的红润图像。
优选地,所述装置还包括:
色彩变换映射表生成模块,用于若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
颜色值获取模块,用于获取所述原始图像的各像素点的颜色值;
预存映射表查询模块,用于针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
美白成像模块,用于基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
与现有技术相比,本申请包括以下优点:
本申请在对图片肤色进行美颜时,通过对操作指令进行判断,来实现对图片肤色红润或美白。对图片肤色红润时,在RGB空间找出原始图片红色色相区域后计算出图片中每个像素点的HSV空间色度及偏移权重,其次得到像素点的实际需要偏移角度,最后对像素点转换到空间YUV后进行色相偏移操作与增加饱和度,在色相偏移操作中大量使用了矩阵运算,而使用矩阵用算可以使得GPU在处理时提高效率,即提高肤色红润的效率,同时使用色相偏移操作避免了插值法与色度增量法造成的整体变红以及饱和度增加的问题,更加优化了红润的效果;对图片肤色美白时,通过色彩空间映射查询预存色彩变换映射表,使得只需要查表即可完成色彩变换,处理时间等于查表时间,极大的提升了算法效率,同时色彩空间映射的方法得到美白后的像素相比其它方法美白效果更好。本申请实现了图片肤色美颜效率与效果的提升。
附图说明
图1示出了本发明实施例的一种美颜肤色变换的方法的流程图;
图2示出了本发明实施例的一种美颜肤色变换的方法的原始图像效果图;
图3示出了本发明实施例的一种美颜肤色变换的方法的色相权重函数关系图;
图4示出了本发明实施例的一种美颜肤色变换的方法的肤色红润效果图;
图5示出了本发明实施例的一种美颜肤色变换的方法的流程图;
图6示出了本申请本发明实施例的一种美颜肤色变换的方法的肤色美白效果图;
图7示出了本申请实施例的一种美颜肤色变换装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
实施例一
参照图1,示出了本发明的一种美颜肤色变换的方法的流程图,具体可以包括如下步骤:
步骤101,获取原始图像;
在具体实现中,首先获取原始图像,对原始图像展开图片肤色美颜的处理,该原始图像可以是用户希望进行美颜肤色处理的图像。参照图2,给出了一原始图像,此图像未做任何肤色美颜处理。
步骤102,对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
在本申请中,用户发送操作指令,通过对指令判断来实现对图片肤色的红润或美白的处理。
步骤103,若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
在具体实现中,若操作指令为红润操作指令,则对原始图像展开红润效果的处理。未进行色彩处理前的图片即原始图像处于RGB空间中,RGB空间即RGB颜色空间,以R(Red红),G(Green绿),B(Blue蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,一般称之为三基色模式。本实施例中将处于RGB空间中图像红色色相区域找出来,对此红色色相区域的像素进行红润效果的处理。其中,获取的红色色相区域可表示为r(r1,r2,r3,r4)为4元素的向量,即将未色彩处理前的原始图像中的红色色相区域表示在水平坐标轴上,将其划分为三个不同的区域,r1至r2为一个区域,r2至r3为另一个区域,r3至r4为不同于前两个区域的其它区域。在本申请实施例中,默认为r1<r2<r3<r4。
步骤104,对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
在得到未色彩处理前的原始图像的红色色相区域后,针对所述图像红色色相区域中的每个像素,计算像素点的HSV空间色度。HSV空间是根据颜色的直观特性创建的一种颜色空间,H表示为色调,S表示为饱和度,V表示为明度。本申请实施例中需要针对每个像素点进行计算,每个像素点的计算方法相同。
其中对所述红色色相区域中每个像素点计算HSV空间色度的方法为:
将图片红色色相区域中像素点表示为Ci(ri,gi,bi),根据Ci(ri,gi,bi)计算像素点的HSV空间色度hi为:
其中上式中,ri,gi,bi表示像素点Ci(ri,gi,bi)在RGB空间中的R,G,B三通道的颜色值,由ri,gi,bi计算得到αi,βi,再由αi,βi代入反三角函数得到HSV空间色度hi。
此处需要说明的是,所述像素点表示当下正在进行肤色红润处理的某一红色色相区域中的某一像素。在本申请实施例中需要得到红色色相区域的每个像素的HSV空间色度,此处及下述步骤均以所述像素点为例进行说明。
步骤105,分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
在计算得到HSV空间色度后,根据hi计算像素点的偏移权重wi=f(hi;r),其中r为4元素向量表示红色色相区域,即r(r1,r2,r3,r4);偏移权重wi表示像素点属于红色色相的程度,其中所述像素点即当下正在肤色红润处理的某一红色色相区域中的某一像素。偏移权重wi计算方式如下:
其中,f(hi;r)表示hi与红色色相区域r的函数关系,即上述表示的函数关系式。
如附图3所示,可知,本实施例中由步骤101得到原始图像的RGB空间中图像红色色相区域后,将红色色相区域在水平坐标轴上划分区域表示,正在进行肤色红润处理的像素点的HSV空间色度hi落在哪个区域,就以相应的函数关系式计算得到所述像素点的偏移权重wi,从而获得该像素点属于红色色相的程度。
步骤106,分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度。
在具体实现中,以图片肤色红色色相中的某一像素点的红润为例进行说明,在具体实施过程中,需要将本申请实施例中的所有算法应用于图片红色色相区域中的所有像素。其中在基于前述计算得到的偏移权重wi计算像素点的实际需要偏移角度方式为:
通过θi=θ×wi,计算像素点的实际需要偏移角度θi,其中θ为原始图像角度偏移。
步骤107,将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作。
在具体实现中,前述算法图片的像素点均处于RGB空间中,将像素点转换至YUV空间中,并对其进行像素的色相偏移操作。YUV空间是一种颜色编码方法,Y表示亮度信号,U,V表示色度信号。由于本申请需要对图片进行红润,即色度的调整,而RGB空间仅表示图片像素的颜色(即红色R,绿色G,蓝色B),故需要将图片的像素点转换到YUV空间中继续处理。
将像素点Ci(ri,gi,bi)转换至YUV空间表示为Di(yi,ui,vi),其中Di(yi,ui,vi)即表示在YUV空间中的亮度和色度,将像素点Ci(ri,gi,bi)转换至YUV空间Di(yi,ui,vi)矩阵运算为:
上述矩阵运算中等式左侧表示像素点处于YUV空间中Y,U,V通道的颜色值,等式右侧表示对RGB空间中的像素点进行矩阵运算转换至YUV空间的过程。
在YUV空间Di(yi,ui,vi)中对像素点Ci(ri,gi,bi)进行色相偏移操作的矩阵运算为:
上述矩阵运算中等式左侧表示色相偏移操作后的像素点,等式右侧表示对色相偏移操作前的像素点进行色相偏移操作。
即可表示为,Ui=ui×cosθi-vi×sinθi,Vi=ui×sinθi-vi×cosθi
其中θi为像素点实际需要偏移角度,ui和vi为在YUV空间中对所述像素点进行色相偏移前的在U,V通道的颜色值,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的在U,V通道的颜色值。
获得色相偏移操作后的像素点后,就基本实现了图片肤色的红润,使得进行过色相偏移操作的红色色相区域更加红润,红润效果更好。
步骤108,分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度。
在具体实现中,为了使得进行色相偏移操作后的图像像素的红润效果更加,就需要对像素点少量增加图像的饱和度,对像素点少量增加图像饱和度为:
(U′i,V′i)=(Ui,Vi)×(1+λ×wi)
其中λ为饱和度增量,wi为像素点的偏移权重,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的U,V通道的颜色值,U′i和V′i为在YUV空间中对所述像素点增加图像饱和度后的U,V通道的颜色值。
上述少量增加图像饱和度运算表示为矩阵形式为:
上述矩阵运算中等式左侧表示增加饱和度后的像素点的U,V通道的颜色值,等式右侧表示对已经进行过色相偏移操作的像素点进行图像饱和度的矩阵运算。
步骤109,将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
对YUV空间Di(yi,ui,vi)中的像素点增加图像饱和度后即完成图像肤色红润的效果,再将其转换至最初RGB空间中表示,转换方式为:
上述矩阵运算中等式左侧表示转换回RGB空间中的像素点的R,G,B通道的颜色值,等式右侧表示将处于YUV空间中已经增加图像饱和度的像素点转换回RGB空间的矩阵运算。
步骤110,基于转换后的像素点,得到所述原始图像对应的红润图像。
通过上述系列运算即可得到对原始图像红润后的图像,完成对图片肤色的红润,效果图见附图4,为图片肤色红润后的效果,与附图2中的原始图像有明显对比。
本申请在对图片肤色进行美颜时,通过对操作指令进行判断,来实现对图片肤色红润或美白。对图片肤色红润时,在RGB空间找出原始图片红色色相区域后计算出图片中每个像素点的HSV空间色度及偏移权重,其次得到像素点的实际需要偏移角度,最后对像素点转换到空间YUV后进行色相偏移操作与增加饱和度,在色相偏移操作中大量使用了矩阵运算,而使用矩阵用算可以使得GPU在处理时提高效率,即提高肤色红润的效率,同时使用色相偏移操作避免了插值法与色度增量法造成的整体变红以及饱和度增加的问题,更加优化了红润的效果。
实施例二
参照图5,示出了本发明的一种美颜肤色变换的方法的流程图,具体还可以包括如下步骤:
在本申请实施例中,若操作指令变化,则对图片美颜的方式也有所变化。若为美白操作指令,则实现对图片肤色的美白变化,对图片肤色的红润变化不再赘述,请参见实施例1.
步骤501:获取原始图像;
步骤502:对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
上述步骤501~502参考前述步骤101~102,不再赘述。
步骤503,若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
在具体实现中,未进行色彩处理前的原始图片处于RGB空间中,原始图片的效果图见附图2。由于RGB三个通道使用相同的贝塞尔映射曲线,故以下说明均以其中一条通道为例进行说明。在本发明实施例中,预先生成预存色彩变换映射表并缓存,使得对图片进行色彩处理时,通过查询预存色彩变换映射表即可完成色彩空间映射,实现图片的美白,而在预存色彩变换映射表中,RGB像素点的原始值与色彩变换后美白值之间的具有对应关系。
所述针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存,包括如下子步骤:
1)获取第一图像所有像素的第一颜色值,生成第一颜色值组;
在本发明实施例中,第一图像指未进行肤色美白前的图像,即未进行色彩处理的图像。每个像素均有各自的颜色值,所述针对RGB空间中的每种RGB像素点的取值即为获取各个像素点的颜色值,第一图像中每个像素对应的各自颜色值即为第一颜色值。将获得的每个像素对应的颜色值组成一个集合,即为第一颜色值组。第一颜色值组即表示未进行肤色美白前的像素颜色值组。
2)根据贝塞尔映射曲线函数,得到所述第一图像所有像素的第一颜色值对应的第一映射值,生成第一映射值组;
在本发明实施例中,贝塞尔映射曲线函数为:
其中t为像素RGB空间取值,范围为[0,1],Pi为二维控制点,n为控制点个数,n值可根据实际需要决定。
将第一图像中所有像素点的第一颜色值代入上述贝塞尔映射曲线函数中,得到第一映射值,即像素美白后的颜色值。由每个像素点的第一映射值所形成的集合生成第一映射值组。
例如,在对图片进行肤色美白的时候,假设图像里所有像素的颜色值是(0.5,0.5,0.5),代入上述贝塞尔映射曲线函数曲线映射成(0.6,0.6,0.6)。将这样一对值存入映射表即可。
3)将所述第一颜色值组与所述第一映射值组存入映射表中,生成预存色彩变换映射表并缓存。
在本发明中,将上述得到的第一颜色值组和第一映射值组即可生成预存色彩变换映射表,以供后续进行色彩变换时查表即可,大大提高了美白效率。
步骤504,获取所述原始图像的各像素点的颜色值;
在具体实施中,对图片肤色进行美白时,获取原始图像的各个像素点的颜色值,即获取附图2中的各个像素点颜色值。
步骤505,针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
在具体实施中,每个图像像素均对应各自的颜色值,依据每个像素的颜色值查询预存色彩变换映射表,即可直接得到美白后像素的颜色值。
上述步骤505包括如下子步骤:
1)依据所述获取图像像素的颜色值,查询所述预存色彩变换映射表中的第一颜色值组;
2)若原始图像的像素点的颜色值,与所述预存色彩变换映射表中的第一颜色值组中的第二颜色值相同,则得到第一映射值组中的第二映射值,第二映射值即相应像素点的美白值。
在肤色美白时,由于提前生成了预存色彩变换映射表,在下次进行图片肤色美白时,在获取到图片像素的颜色值后,直接查询预存映射表,节省美白时间与效率。由于预存色彩变换映射表中包括了第一颜色值组与第一映射值组,则查询预存色彩变换映射表时,将图像像素的颜色值与第一颜色值组比对,若第一颜色值组中某一颜色值与图片像素的颜色值相同时,则可直接输出第一颜色值组中某一颜色值对应的映射值,即直接输出与第一颜色值组中某一颜色值对应的第一映射值组中的第二映射值。第二映射值为此像素点图片肤色美白后的颜色值,即此像素点完成了肤色的美白。
例如,在对图片进行肤色美白的时候,假设图像里所有像素的颜色值是(0.5,0.5,0.5),代入贝塞尔映射曲线函数曲线映射成(0.6,0.6,0.6)。存进映射表的也是这样一对值,查表的时候只要看到(0.5,0.5,0.5),就知道它对应的映射值是(0.6,0.6,0.6),输出映射值(0.6,0.6,0.6)为像素点美白后的颜色值,即完成了肤色像素点的美白。
步骤506,基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
对所有图像像素点查询预存色彩变换映射表,就可得到原始图像对应的美白图像,完成图片肤色的美白。
通过上述方法,完成对图片肤色的美白,效果图见附图6,为图片肤色美白后的效果图。
本申请在对图片肤色进行美颜时,通过对操作指令进行判断,来实现对图片肤色红润或美白。对图片肤色红润时,在RGB空间找出原始图片红色色相区域后计算出图片中每个像素点的HSV空间色度及偏移权重,其次得到像素点的实际需要偏移角度,最后对像素点转换到空间YUV后进行色相偏移操作与增加饱和度,在色相偏移操作中大量使用了矩阵运算,而使用矩阵用算可以使得GPU在处理时提高效率,即提高肤色红润的效率,同时使用色相偏移操作避免了插值法与色度增量法造成的整体变红以及饱和度增加的问题,更加优化了红润的效果;对图片肤色美白时,通过色彩空间映射查询预存色彩变换映射表,使得只需要查表即可完成色彩变换,处理时间等于查表时间,极大的提升了算法效率,同时色彩空间映射的方法得到美白后的像素相比其它方法美白效果更好。本申请实现了图片肤色美颜效率与效果的提升。
实施例三
参照图7,示出了本申请实施例的一种美颜肤色变换的方法的结构框图,具体可以包括:
原始图像获取模块701,用于获取原始图像;
操作指令判断模块702,用于对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
红色色相区域获取模块703,用于若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
HSV空间色度模块704,用于对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
偏移权重模块705,用于分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
实际需要偏移角度模块706,用于分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度;
色相偏移操作模块707,用于将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作;
饱和度模块708,用于分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度;
空间转换模块709,用于将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
红润成像模块710,用于基于转换后的像素点,得到所述原始图像对应的红润图像。
所述装置还包括:
色彩变换映射表生成模块711,用于若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
颜色值获取模块712,用于获取所述原始图像的各像素点的颜色值;
预存映射表查询模块713,用于针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
美白成像模块714,用于基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
其中,所述预存色彩变换映射表生成模块711,包括如下子模块:
第一颜色值组模块7111,获取第一图像所有像素的第一颜色值,生成第一颜色值组;
第一映射值组模块7112,根据贝塞尔映射曲线函数,得到所述第一图像所有像素的第一颜色值对应的第一映射值,生成第一映射值组。
本申请在对图片肤色进行美颜时,通过对操作指令进行判断,来实现对图片肤色红润或美白。对图片肤色红润时,在RGB空间找出原始图片红色色相区域后计算出图片中每个像素点的HSV空间色度及偏移权重,其次得到像素点的实际需要偏移角度,最后对像素点转换到空间YUV后进行色相偏移操作与增加饱和度,在色相偏移操作中大量使用了矩阵运算,而使用矩阵用算可以使得GPU在处理时提高效率,即提高肤色红润的效率,同时使用色相偏移操作避免了插值法与色度增量法造成的整体变红以及饱和度增加的问题,更加优化了红润的效果;对图片肤色美白时,通过色彩空间映射查询预存色彩变换映射表,使得只需要查表即可完成色彩变换,处理时间等于查表时间,极大的提升了算法效率,同时色彩空间映射的方法得到美白后的像素相比其它方法美白效果更好。本申请实现了图片肤色美颜效率与效果的提升。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种美颜肤色变换的方法和装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种美颜肤色变换的方法,包括:
获取原始图像;
对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度;
将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作;
分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度;
将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
基于转换后的像素点,得到所述原始图像对应的红润图像。
3.根据权利要求1所述的方法,其特征在于,所述分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度,包括:
通过θi=θ×wi,计算像素点的实际需要偏移角度θi,其中θ为原始图像角度偏移,wi表示像素点的偏移权重。
4.根据权利要求1所述的方法,其特征在于,所述将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作,包括:
Ui=ui×cosθi-vi×sinθi,Vi=ui×sinθi+vi×cosθi
其中θi为像素点实际需要偏移角度,ui和vi为在YUV空间中对所述像素点进行色相偏移前的U,V通道颜色值,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的U,V通道颜色值。
5.根据权利要求1所述的方法,其特征在于,所述分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度,包括:
(U′i,Vi′)=(Ui,Vi)×(1+λ×wi)
其中λ为饱和度增量,wi为像素点的偏移权重,Ui和Vi为在YUV空间中对所述像素点进行色相偏移后的U,V通道颜色值,U′i和Vi′为在YUV空间中对所述像素点增加图像饱和度后的U,V通道颜色值。
6.根据权利要求1所述的方法,其特征在于,还包括:
若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
获取所述原始图像的各像素点的颜色值;
针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
7.根据权利要求6所述的方法,其特征在于,所述若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存,包括:
获取第一图像所有像素的第一颜色值,生成第一颜色值组;
根据贝塞尔映射曲线函数,得到所述第一图像所有像素的第一颜色值对应的第一映射值,生成第一映射值组;
将所述第一颜色值组与所述第一映射值组存入映射表中,生成预存色彩变换映射表并缓存。
8.根据权利要求6所述的方法,其特征在于,所述针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值,包括:
依据所述原始图像的各像素点的颜色值,查询预存色彩变换映射表中的第一颜色值组;
若原始图像的像素点的颜色值,与所述预存色彩变换映射表中的第一颜色值组中的第二颜色值相同,则得到第一映射值组中的第二映射值,第二映射值即相应像素点的美白值。
9.一种美颜肤色变换的装置,其特征在于,包括:
原始图像获取模块,用于获取原始图像;
操作指令判断模块,用于对所述原始图像发送操作指令,判断所述操作指令为红润操作指令还是美白操作指令;
红色色相区域获取模块,用于若所述操作指令为红润操作指令,则获取所述原始图像的RGB空间中图像红色色相区域;
HSV空间色度模块,用于对所述红色色相区域中的每个像素点,计算所述像素点的HSV空间色度;
偏移权重模块,用于分别根据每个像素点的所述HSV空间色度,计算所述像素点的偏移权重;
实际需要偏移角度模块,用于分别根据每个像素点的所述偏移权重,计算所述像素点的实际需要偏移角度;
色相偏移操作模块,用于将每个像素点转换至YUV空间,并根据所述实际需要偏移角度,对所述像素点通过矩阵运算进行色相偏移操作;
饱和度模块,用于分别根据每个像素点的所述色相偏移操作,对所述像素点通过矩阵运算增加饱和度;
空间转换模块,用于将在YUV空间中增加饱和度后的像素点通过矩阵运算转换为RGB空间的像素点;
红润成像模块,用于基于转换后的像素点,得到所述原始图像对应的红润图像。
10.根据权利要求9所述的装置,其特征在于,还包括:
色彩变换映射表生成模块,用于若所述操作指令为美白操作指令,则针对RGB空间中的每种RGB像素点的取值,根据贝塞尔映射曲线函数生成色彩变换映射表并缓存;所述色彩变换映射表包括:RGB像素点的原始值与色彩变换后美白值之间的对应关系;
颜色值获取模块,用于获取所述原始图像的各像素点的颜色值;
预存映射表查询模块,用于针对各像素点的颜色值,查询色彩变换映射表,获得相应美白值;
美白成像模块,用于基于查询得到的各像素点的美白值,得到所述原始图像对应的美白图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210303.6A CN108171648B (zh) | 2017-11-27 | 2017-11-27 | 一种美颜肤色变换的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210303.6A CN108171648B (zh) | 2017-11-27 | 2017-11-27 | 一种美颜肤色变换的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108171648A CN108171648A (zh) | 2018-06-15 |
CN108171648B true CN108171648B (zh) | 2021-09-03 |
Family
ID=62524515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711210303.6A Active CN108171648B (zh) | 2017-11-27 | 2017-11-27 | 一种美颜肤色变换的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108171648B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111243039B (zh) * | 2020-01-07 | 2023-10-10 | 卡莱特云科技股份有限公司 | 一种调整图像颜色的方法及装置 |
CN111369470B (zh) * | 2020-03-10 | 2024-05-31 | 昇显微电子(苏州)股份有限公司 | 图像区域色调调整方法、装置、存储介质及设备 |
CN112907459B (zh) * | 2021-01-25 | 2024-04-09 | 北京达佳互联信息技术有限公司 | 图像处理方法及装置 |
CN114092571B (zh) * | 2021-07-13 | 2024-08-16 | 漳州万利达科技有限公司 | 一种图像色彩调整方法和系统 |
CN113989139B (zh) * | 2021-10-21 | 2024-08-13 | 武汉博视电子有限公司 | 脸部肌肤图像红血丝提取并形成血丝光谱的处理方法 |
CN117372615A (zh) * | 2023-10-16 | 2024-01-09 | 北京百度网讯科技有限公司 | 图像处理方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163193A (zh) * | 2006-10-12 | 2008-04-16 | 三星电子株式会社 | 校准灰度数据的系统、介质和方法 |
CN104093010A (zh) * | 2013-11-15 | 2014-10-08 | 腾讯科技(深圳)有限公司 | 一种图像处理方法及装置 |
CN104581103A (zh) * | 2013-10-21 | 2015-04-29 | 腾讯科技(深圳)有限公司 | 一种图片处理方法及装置 |
CN105184757A (zh) * | 2015-06-11 | 2015-12-23 | 西安电子科技大学 | 基于颜色空间特点的食物图像色彩增强方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7689035B2 (en) * | 2005-06-17 | 2010-03-30 | The Regents Of The University Of California | Methods for identifying, separating and editing reflection components in multi-channel images and videos |
-
2017
- 2017-11-27 CN CN201711210303.6A patent/CN108171648B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163193A (zh) * | 2006-10-12 | 2008-04-16 | 三星电子株式会社 | 校准灰度数据的系统、介质和方法 |
CN104581103A (zh) * | 2013-10-21 | 2015-04-29 | 腾讯科技(深圳)有限公司 | 一种图片处理方法及装置 |
CN104093010A (zh) * | 2013-11-15 | 2014-10-08 | 腾讯科技(深圳)有限公司 | 一种图像处理方法及装置 |
CN105184757A (zh) * | 2015-06-11 | 2015-12-23 | 西安电子科技大学 | 基于颜色空间特点的食物图像色彩增强方法 |
Non-Patent Citations (1)
Title |
---|
Android平台特效相机软件系统的设计与实现;吴昊雨;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170315;第1-61页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108171648A (zh) | 2018-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108171648B (zh) | 一种美颜肤色变换的方法和装置 | |
US10535125B2 (en) | Dynamic global tone mapping with integrated 3D color look-up table | |
US9554109B2 (en) | Identifying gray regions for auto white balancing | |
JP6752831B2 (ja) | 色相を変える色域マッピング | |
US11120725B2 (en) | Method and apparatus for color gamut mapping color gradient preservation | |
JP2017536735A (ja) | ダイナミックレンジマッピングのための彩度処理仕様 | |
JP6288943B2 (ja) | 映像表示装置 | |
US9961236B2 (en) | 3D color mapping and tuning in an image processing pipeline | |
KR20090087084A (ko) | 범위 적합화 | |
JP2004356930A (ja) | 色彩調整装置及びその方法 | |
US8064693B2 (en) | Methods of and apparatus for adjusting colour saturation in an input image | |
CN108846871B (zh) | 一种图像处理方法及装置 | |
WO2019200640A1 (zh) | 色域映射的方法和装置 | |
CN107680142B (zh) | 改善域外色重叠映射的方法 | |
CN116485979B (zh) | 映射关系计算方法、颜色校准方法及电子设备 | |
KR20240001264A (ko) | 이미지의 컬러들을 확장하기 위한 저비용 컬러 확장 모듈 | |
CN115023729A (zh) | 用于对图像进行转换的方法及对应的设备 | |
KR102617117B1 (ko) | 색상 변경 컬러 색역 매핑 | |
JP2014220815A (ja) | 画像色調整方法及びその電子装置 | |
JP2001014454A (ja) | 画像処理装置 | |
US11032446B2 (en) | Image processing device, image processing method, and program for correcting color in an image | |
CN114999363B (zh) | 色偏校正方法、装置、设备、存储介质及程序产品 | |
US10242461B1 (en) | Method to improve overlay mapping of out-of-gamut | |
CN115187487A (zh) | 图像处理方法及装置、电子设备、存储介质 | |
US20200329174A1 (en) | High precision gamut mapping |
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 |