一种调整图像/视频色彩饱和度的方法和系统的制作方法

文档序号:7931167阅读:207来源:国知局
专利名称:一种调整图像/视频色彩饱和度的方法和系统的制作方法
技术领域
本发明涉及视频以及图像处理技术领域,尤其涉及一种调整图像/视频色彩饱和度的方法和系统。
背景技术
RGB(红、绿、蓝)色彩空间是计算机中常见的色彩空间,它通过红、绿、蓝三基色的相加来产生其他的颜色。其中RGB24使用24比特位表示一个像素点的色彩,红、绿、蓝各占8位,可以得到256*256*256种颜色。YUV色彩空间被欧洲电视系统所采用的一种颜色编码方法。其中"Y"表示明亮度(Luminance或Luma),也就是灰阶值;而"U"和"V"表示的则是色度(Chrominance或 Chroma)。彩色电视采用YUV空间正是为了用亮度信号Y解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。我们经常提出的YUV又称为YCbC;, YCbCr则是在世界数字组织视频标准研制过程中作为ITU-R BT. 601建议的一部分,其中Y指明亮度,Cb, Cr指色度。在YUV家族中,YCbCr是在计算机系统中应用最多的成员,其应用领域很广泛,JPEG、MPEG均采用此格式。现有技术中,在图像/视频处理时,经常有调整图像/视频色彩饱和度的需求。通常把RGB转换成YUV或把RGB转换成HSV/HSL,然后在YUV空间或HSV空间进行图像/视频色彩饱和度的调整。在实现本发明的过程中,发明人发现现有技术存在以下技术问题由于调整图像/视频色彩饱和度需要在不同色彩空间之间进行转换,需要耗费大量系统资源和时间,效率低。

发明内容
本发明实施例提供了一种调整图像/视频色彩饱和度的方法和系统,通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。本发明实施例提供了一种调整图像/视频色彩饱和度的方法,包括以下步骤预置图像/视频调整色彩饱和度后对应的第一 RGB值与图像/视频调整色彩饱和度前对应的第二 RGB值的关系式;获取至少一个像素的所述第二 RGB值;接收饱和度调整系数;根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述至少一个像素的所述第一 RGB值;根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调

iF. O
所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到。所述关系式具体为R' /G1 /B' = Y*(1-factor)+R/G/B*factor ;其中R' /G' /B'为所述至少一个像素的调整色彩饱和度后的R、G和B值,R/G/B为所述至少一个像素的调整色彩饱和度前的R、G和B值,factor为饱和度调整系数;Y = coef_R*R+coef_G*G+coef_B*B ;其中coef_R、coef_G和coef_B为所述至少一个像素的所述第二 RGB的R、G和B分量的系数。
所述至少一个像素的第一 RGB值的计算采用intel的SMD增强指令集SSE2。本发明实施例的技术方案带来的有益效果如下通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。本发明实施例提供了一种调整图像/视频色彩饱和度的系统,包括存储单元,用于存储一预置图像/视频调整色彩饱和度后对应的第一 RGB值与图像/视频调整色彩饱和度前对应的第二 RGB值的关系式;RGB值获取单元,用于获取至少一个像素的所述第二 RGB值;接口单元,用于接收饱和度调整系数;计算单元,用于根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述至少一个像素的所述第一 RGB值;调整单元,用于根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调整。所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到。所述关系式具体为R' /G1 /B' = Y*(1-factor)+R/G/B*factor ;其中R' /G' /B'为所述至少一个像素的调整色彩饱和度后的R、G和B值,R/G/B为所述至少一个像素的调整色彩饱和度前的R、G和B值,factor为饱和度调整系数;Y = coef_R*R+coef_G*G+coef_B*B ;其中coef_R、coef_G和coef_B为所述至少一个像素的所述第二 RGB的R、G和B分量的系数。所述至少一个像素的第一 RGB值的计算采用intel的SMD增强指令集SSE2。本发明实施例的技术方案带来的有益效果如下通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I是本发明实施例中一种调整图像/视频色彩饱和度的方法流程图;图2是本发明采用intel的SMD增强指令集SSE2进行调整色彩饱和度后RGB值计算的流程图;图3是本发明实施例中一种调整图像/视频色彩饱和度的系统结构图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 本发明实施例一提供一种调整图像/视频色彩饱和度的方法,如图I所示,包括以下步骤步骤S101,预置图像/视频调整色彩饱和度后对应的第一 RGB值与图像/视频调整色彩饱和度前对应的第二 RGB值的关系式;所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到;所述关系式具体为R' /G1 /B' = Y*(1-factor)+R/G/B*factor ;其中R' /G/ /B/为调整色彩饱和度后的R、G和B值,R/G/B为调整色彩饱和度前的R、G和B,factor为饱和度调整系数;Y = coef_R*R+coef_G*G+coef_B*B ;其中coef_R、coef_G和coef_B为为调整色彩饱和度前的RGB值R、G、B分量的系数。步骤S102,获取至少一个像素的所述第二 RGB值。步骤S103,接收饱和度调整系数。步骤S104,根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述至少一个像素的所述第一 RGB值。步骤S105,根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调整。其中YUV色彩空间具有多种标准,可以为BT. 601标准、BT709标准或其他YUV标准,本领域技术人员可以根据不同的YUV标准可对以上公式进行适应性修改,不影响本发明的实施。本发明实施例的技术方案带来的有益效果如下通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。本发明图像/视频调整色彩饱和度后RGB值与图像/视频调整色彩饱和度前RGB值的关系式的推导过程如下
YUV空间中,Y有如下表达式Y = R*coef_R+G*coef_G+B*coef_B (I)其中,coef_R,coef_G、coef_B 分别是 R、G、B 分量的系数。YUV空间转换成RGB空间时,R、G、B分量都是关于Y、U、V的多项表达式,而在YUV空间调整色彩饱和度时,调整的是U和V,而Y不变,假设饱和度调整的系数为factor,那么调整之后的U和V分别为U*factor和V*factor,转换成RGB空间后,R、G、B分量变成了都是关于Y、U*factor、V*factor的多项表达式,那么如果我们简化一下,写成一个通用的多项表达式如下调整饱和度前公式R/G/B = Y+f (U, V)(2)调整饱和度后公式R' /G' /B' = Y+f (U, V)*factor (3)其中,R'、G'、B'分别为调整后的R、G、B值,f (U,V)表示U和V的多项表达式。将调整饱和度前的公式变换得到f (U, V) = R/G/B-Y (4)根据公式(4),代入饱和度调整系数factor,得到公式(5)如下R' /G' /B' = Y+(R/G/B-Y) *factor (5)整理得到R' /G1 /B' = Y* (1-factor)+R/G/B*factor (6)由前面Y的表达式可知,Y是关于R、G、B的多项表达式,所以调整饱和度之后的R'、G'、B'值是只关于R、G、B值的表达式,即直接在RGB空间就可以做到色彩饱和度的调整,无需再做其他空间变换。在实际应用中,有如下数据参考ITU-R BT. 601 标准 R、G、B 分量的系数coef_R = 0. 299,coef_G = 0. 587,coef_B = O. 114 ;ITU-R BT. 709 标准 R、G、B 分量的系数coef_R = 0. 2125, coef_G = 0. 7154,coef_B = O. 0721。如图2所述,本发明采用intel的SMD增强指令集SSE2进行调整色彩饱和度后RGB值计算,并运用多线程/超线程技术,将计算平均分配到每个核上或硬件线程上,包括以下步骤步骤S201,从原始图像将4个像素点(BGRA)的数据读入到一个ml28i类型变量xmm_bgra中(SSE2每个寄存器16字节长)。步骤S202,将 xmm_bgra 变换为 4 个 _ml28 类型变量 xmm_b_ps、xmm_g_ps、xmm_r_ps、xmm_a_ps,分别保存图像4个像素点的blue、green、red和alpha四个通道的值。步骤S203,用 blue、green 和 red 通道的值 xmm_b_ps、xmm_g_ps、xmm_r_ps 与各通道相应的系数xmm_coef_b_ps、xmm_coef_g_ps、xmm_coef_r_ps计算相应的亮度通道的值xmm_y_ps0步骤S204,首先用xmm_y_ps、xmm_b_ps和饱和度增益的值xmm_factor_ps计算色彩饱和度调整后图像blue通道的值,保存到Xmm_b_ps中;然后用同样的方法分别计算色彩、饱和度调整后图像green和red通道的值,分别保存到xmm_g_ps和xmm_r_ps中。步骤S205,将调整之后的四个通道的值xmm_b_ps、xmm_g_ps、xmm_r_ps和xmm_a_ps交错之后写入到目标图像中,然后处理后面4个像素点。本发明实施例的技术方案带来的有益效果如下通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。本发明实施例二提供了一种调整图像/视频色彩饱和度的系统,如图3所示,包括存储单元301,用于存储一预置图像/视频调整色彩饱和度后RGB值与图像/视频调整色彩饱和度前RGB值的关系式;
RGB值获取单元302,用于获取至少一个像素的第二 RGB值;接口单元303,用于接收饱和度调整系数;计算单元304,用于根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述至少一个像素的所述第一 RGB值;调整单元305,用于根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调整。所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到。所述关系式具体为R' /G1 /B' = Y*(1-factor)+R/G/B*factor ;其中R' /G' /B'为所述至少一个像素的调整色彩饱和度后的R、G和B值,R/G/B为所述至少一个像素的调整色彩饱和度前的R、G和B值,factor为饱和度调整系数;Y = coef_R*R+coef_G*G+coef_B*B ;其中coef_R、coef_G和coef_B为所述至少一个像素的所述第二 RGB的R、G和B分量的系数。所述至少一个像素的第一 RGB值的计算采用intel的SMD增强指令集SSE2。本发明实施例的技术方案带来的有益效果如下通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整图像/视频色彩饱和度的效率。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是⑶-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种调整图像/视频色彩饱和度的方法,其特征在于,包括以下步骤 预置图像/视频调整色彩饱和度后对应的第一 RGB值与图像/视频调整色彩饱和度前对应的第二 RGB值的关系式; 获取至少一个像素的所述第二 RGB值; 接收饱和度调整系数; 根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述至少一个像素的所述第一 RGB值; 根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调整。
2.如权利要求I所述一种调整图像/视频色彩饱和度的方法,其特征在于,所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到。
3.如权利要求I或2所述一种调整图像/视频色彩饱和度的方法,其特征在于,所述关系式具体为R' /G1 /B' = Y*(1-factor)+R/G/B*factor ; 其中R' /G' /B/为所述至少一个像素的调整色彩饱和度后的R、G和B值,R/G/B为所述至少一个像素的调整色彩饱和度前的R、G和B值,factor为饱和度调整系数;Y= coef—R*R+coef—G*G+coef—B*B ; 其中coef_R、coef_G和coef_B为所述至少一个像素的所述第二 RGB的R、G和B分量的系数。
4.如权利要求I至3任一项所述一种调整图像/视频色彩饱和度的方法,其特征在于,所述至少一个像素的第一 RGB值的计算采用intel的SMD增强指令集SSE2。
5.一种调整图像/视频色彩饱和度的系统,包括 存储单元,用于存储一预置图像/视频调整色彩饱和度后对应的第一 RGB值与图像/视频调整色彩饱和度前对应的第二 RGB值的关系式; RGB值获取单元,用于获取所述第二 RGB值; 接口单元,用于接收饱和度调整系数; 计算单元,用于根据所述第二 RGB值、所述关系式和所述饱和度调整系数计算所述第一 RGB 值; 调整单元,用于根据所述第一 RGB值替换所述第二 RGB值,完成所述图像/视频色彩饱和度的调整。
6.如权利要求5所述一种调整图像/视频色彩饱和度的系统,其特征在于,所述关系式由RGB色彩空间转换为YUV色彩空间的公式、调整图像/视频色彩饱和度的公式以及YUV色彩空间转换为RGB色彩空间的公式计算得到。
7.如权利要求5或6所述一种调整图像/视频色彩饱和度的系统,其特征在于,所述关系式具体为R1 /G1 /B' = Y*(1-factor)+R/G/B*factor ; 其中R' /G/ /B/为所述至少一个像素的调整色彩饱和度后的R、G和B值,R/G/B为所述至少一个像素的调整色彩饱和度前的R、G和B值,factor为饱和度调整系数;Y= coef—R*R+coef—G*G+coef—B*B ;其中coef_R、coef_G和coef_B为所述至少一个像素的所述第二 RGB的R、G和B分量的系数。
8.如权利要求5至7任一项所述一种调整图像/视频色彩饱和度的系统,其特征在于,所述至少一个像素的第一 RGB值的计算采用intel的SMD增强指令集SSE2。
全文摘要
本发明实施例公开了一种调整图像/视频色彩饱和度的方法和系统,所述方法包括以下步骤预置图像/视频调整色彩饱和度后对应的第一RGB值与图像/视频调整色彩饱和度前对应的第二RGB值的关系式;获取至少一个像素的所述第二RGB;接收饱和度调整系数;根据所述关系式计算所述至少一个像素的所述第一RGB值;完成所述图像/视频色彩饱和度的调整。本发明实施例中,通过预置图像/视频调整色彩饱和度前后的RGB值关系式,不需要与YUV空间或HSV/HSL空间进行转换,只在RGB空间进行计算,简化了调整的过程,节省了计算资源,提高了调整的效率。
文档编号H04N9/64GK102752605SQ20111030187
公开日2012年10月24日 申请日期2011年9月30日 优先权日2011年9月30日
发明者黄裔 申请人:新奥特(北京)视频技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1