CN102447913A - 一种移色处理方法及系统 - Google Patents

一种移色处理方法及系统 Download PDF

Info

Publication number
CN102447913A
CN102447913A CN2011104345430A CN201110434543A CN102447913A CN 102447913 A CN102447913 A CN 102447913A CN 2011104345430 A CN2011104345430 A CN 2011104345430A CN 201110434543 A CN201110434543 A CN 201110434543A CN 102447913 A CN102447913 A CN 102447913A
Authority
CN
China
Prior art keywords
pixel
value
brightness
color
color channel
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.)
Granted
Application number
CN2011104345430A
Other languages
English (en)
Other versions
CN102447913B (zh
Inventor
李云夕
谢军波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wanxing Polytron Technologies Inc
Original Assignee
Shenzhen Wondershare Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Wondershare Software Co Ltd filed Critical Shenzhen Wondershare Software Co Ltd
Priority to CN201110434543.0A priority Critical patent/CN102447913B/zh
Publication of CN102447913A publication Critical patent/CN102447913A/zh
Application granted granted Critical
Publication of CN102447913B publication Critical patent/CN102447913B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Abstract

本发明实施例公开了一种移色处理方法,包括:采集视频帧并确定目标颜色的色相值要求;针对每个视频帧,根据预置的色相计算公式计算所述视频帧中每个像素的色相值;将所述视频帧中色相值不满足所述目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将所述待转换像素转换为灰色像素,生成移色处理后的新视频帧。本发明实施例还公开了一种移色处理系统。采用本发明,加快了移色处理的速度,可以实时地对视频流进行移色处理,以所见即所得的实时方式呈现给用户,不仅能处理单个图片,还能实时处理视频和摄像头数据,提升了用户体验。

Description

一种移色处理方法及系统
技术领域
本发明涉及图像处理领域,尤其涉及一种移色处理方法及系统。
背景技术
目前,随着技术的发展,手机或PC(Personal Computer,个人计算机)等中越来越多地具备了摄像和拍照功能。用户使用手机或PC机进行摄像或拍照后,希望对拍摄的图像或图片进行处理,比如移色处理。移色处理的核心思想是保留图片帧中的某种色调的颜色,而将其他色调的颜色转换为灰色。它一般有两种与用户的交互方式:一是用户指定需要保留某个颜色,移色算法将其他颜色移去变为灰色;二是用户指定某个区域,移色算法确定该区域内的主要颜色,将图片中的其他颜色移去变为灰色。移色可以作为图像处理软件中的一个效果,给用户一种快速有趣的处理反馈,具有一定的娱乐价值。
手机工具软件Camera360中就具有这种移色功能,它的使用方式是在拍照前预览的时候选定一定的区域,在拍照后对图片进行移色处理。设选定的区域内主要颜色是c,该移色处理将图像中其他非c的颜色变成灰色。但是,类似于Camera360中的这些现有移色方案只能对拍摄好的图片进行移色处理,即只能处理单张图片,而不能处理视频流,且现有的移色方案在进行移色处理时速度较慢。
发明内容
本发明实施例所要解决的技术问题在于,提供一种移色处理方法及系统。可快速对视频流进行移色处理。
为了解决上述技术问题,本发明实施例提供了一种移色处理方法,包括:
采集视频帧并确定目标颜色的色相值要求;;
针对每个视频帧,根据预置的色相计算公式计算所述视频帧中每个像素的色相值; 
将所述视频帧中色相值不满足所述目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将所述待转换像素转换为灰色像素,生成移色处理后的新视频帧。
其中,所述采集视频帧并确定目标颜色的色相值要求的步骤具体包括:
采集视频帧;
获取所采集的视频帧上的参考区域;
根据所述参考区域中的像素的色相值分布确定目标颜色的色相值范围。
其中,在RGB颜色空间中,所述预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为所述待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为所述灰色像素的亮度值,第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,第四转换系数为512,第五转换系数为10。 
其中,所述根据预置的色相计算公式计算所述视频帧中每个像素的色相值的步骤具体包括:
在RGB颜色空间中,分别确定所述视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的的亮度最大值,将最小的亮度值作为该像素的亮度最小值;
判断所述像素的亮度最大值和亮度最小值是否相等;
若判断所述像素的亮度最大值和亮度最小值是否相等的判断结果为是,则所述像素的色相值H=0;
若判断所述像素的亮度最大值和亮度最小值是否相等的判断结果为否,则根据所述亮度最大值对应的颜色通道确定所述像素的色相值。
其中,所述根据所述亮度最大值对应的颜色通道确定所述像素的色相值的步骤具体包括:
若所述亮度最大值对应于R颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;
若所述亮度最大值对应于G颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;
若所述亮度最大值对应于B颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits;
其中,R、G、B分别为所述像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,MAX为所述像素的亮度最大值,MIN为所述像素的亮度最小值,查找表Table为预先设置的固定长度为256的表,在所述查找表Table中,Table[i]=(43<<Bits)/i,其中Bits为任意合适的正整数。
相应地,本发明实施例还提供一种移色处理系统,包括:
数据采集模块,用于采集视频帧;
目标颜色确定模块,用于确定目标颜色的色相值要求;
色相值获取模块,用于针对每个视频帧,根据预置的色相计算公式计算所述视频帧中每个像素的色相值; 
新帧生成模块,用于将所述视频帧中色相值不满足所述目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将所述待转换像素转换为灰色像素,生成移色处理后的新视频帧。
其中,所述目标颜色确定模块具体包括:
参考区域获取模块,用于获取所述数据采集模块采集的视频帧上的参考区域;
色相值范围确定模块,用于根据所述参考区域中的像素的色相值分布确定目标颜色的色相值范围。
其中,在RGB颜色空间中,所述预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为所述待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为所述灰色像素的亮度值,第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,第四转换系数为512,第五转换系数为10。 
其中,所述色相值获取模块具体包括:
亮度极值确定模块,用于在RGB颜色空间中,分别确定所述视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的的亮度最大值,将最小的亮度值作为该像素的亮度最小值;
判断模块,用于判断所述像素的亮度最大值和亮度最小值是否相等;
色相值确定模块,用于在所述判断模块的判断结果为是时,确定所述像素的色相值H=0;还用于在所述判断模块的判断结果为否时,根据所述亮度最大值对应的颜色通道确定所述像素的色相值。
其中,所述色相值确定模块具体包括:
查找表存储模块,用于存储预先设置的固定长度为256的查找表Table,在所述查找表Table中,Table[i]=(43<<Bits)/i,其中Bits为任意合适的正整数;
零值模块,用于在所述判断模块的判断结果为是时,确定所述像素的色相值H=0;
R颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于R颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;
G颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于G颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;
B颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于B颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,确定所述像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits;
其中,R、G、B分别为所述像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,MAX为所述像素的亮度最大值,MIN为所述像素的亮度最小值。
实施本发明实施例,具有如下有益效果:通过像素的色相值来判断该像素的颜色是否为需要保留的目标颜色,加快了移色处理的速度,可以实时地对视频流进行移色处理,以所见即所得的实时方式呈现给用户,不仅能处理单个图片,还能实时处理视频和摄像头数据,提升了用户体验。 
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的移色处理方法的第一实施例流程图;
图2是本发明提供的移色处理方法的第二实施例流程图;
图3是本发明提供的移色处理方法的第三实施例流程图;
图4是本发明提供的移色处理系统的第一实施例结构示意图;
图5是本发明提供的移色处理系统的第二实施例结构示意图;
图6是本发明提供的移色处理系统的第三实施例结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明提供的移色处理方法的第一实施例流程图,所述方法包括: 
在步骤S100,采集视频帧并确定目标颜色的色相值要求。
在步骤S101,针对每个视频帧,根据预置的色相计算公式计算该视频帧中每个像素的色相值。 
在步骤S102,将该视频帧中色相值不满足目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,生成移色处理后的新视频帧。
本发明实施例提供的移色处理方法,通过像素的色相值来判断该像素的颜色是否为需要保留的目标颜色,加快了移色处理的速度,可以实时地对视频流进行移色处理,以所见即所得的实时方式呈现给用户,不仅能处理单个图片,还能实时处理视频和摄像头数据,提升了用户体验。
参见图2,是本发明提供的移色处理方法的第二实施例流程图,所述方法包括:
在步骤S200,采集视频帧。可以采集摄像头捕捉的视频帧,也可以采集正在播放的视频文件中的视频帧。当采集摄像头捕捉的视频帧时,可以在录像模式下进行,也可以在拍照预览模式下进行。也就是说,本发明可以实时地对视频流数据进行移色处理,而不仅限于对静态的图片进行移色处理。
在步骤S201,获取所采集的视频帧上的参考区域。具体地,可以接收用户输入的参考区域选择指令。例如,用户可以通过选框工具或魔棒工具等在显示窗口当前显示的视频帧图像中选择一定大小的带有其想保留的目标颜色的典型区域作为参考区域,参考区域在图像中的位置和大小都可以由用户自行确定。又例如,可以在显示窗口中提供一个边长为r的正方形框Rect,用户可以随时移动框Rect来指定当前显示的视频帧图像中带有其想保留的目标颜色的典型区域作为参考区域,一般地,在640*480的屏幕分辨率下,可以取r=40。
在步骤S202,根据获取的参考区域中的像素的色相值分布确定目标颜色的色相值范围。
除了RGB颜色空间以外,还可以用HSL颜色空间来表示颜色。HSL颜色空间采用3个分量H(Hue,色相)、S(Saturation,饱和度)和L(Lightness,明度)来表示颜色。传统RGB颜色空间是基于物体对光源红绿蓝分量反射量大小来表示颜色,即发光加色原理。而HSL颜色空间是基于人们对色彩的感知来表示颜色。HSL的H分量,代表的是人眼所能感知的颜色范围,这些颜色分布在一个平面的色相环上,取值范围是0°到360°的圆心角,每个角度可以代表一种颜色;HSL的S分量,指的是色彩的饱和度,它用0%至100%的值描述了相同色相、明度下色彩纯度的变化,数值越大,颜色中的灰色越少,颜色越鲜艳;HSL的L分量,指的是色彩的明度,作用是控制色彩的明暗变化,它的取值也是0%至100%,数值越小,色彩越暗,越接近于黑色,数值越大,色彩越亮,越接近于白色。
在本步骤S202中,可以将整个色相环360度切分为若干个区间,根据落入每个区间中的参考区域像素的个数确定参考区域的主要颜色,即目标颜色。例如,可以将整个色相环360度切分为5度为一个区间,共72个区间,再针对框Rect中的像素点的色相值H进行这72个区间的桶分类,即H值落在哪个区间内,该区间内像素个数增加1,那么可以直接将该区间的色相值范围作为目标颜色的色相值范围。
优选地,为了更精确地确定目标颜色,可以设落入第K个区间内的像素个数最多,为n个,它们的色相值之和为SumHue,则目标颜色的色相值Hue_Target =SumHue / n。需要说明的是,不限于以5度为一个区间,可以取[4,10]度为一个区间。可以直接将目标颜色的色相值作为判断标准,也可以设置一定的容差。例如,可以设置色相容差Threshold,那么目标颜色的色相值范围为[Hue_Target-Threshold,Hue_Target+ Threshold],在该范围内的两个色相值可以认为是同一种色调,一般将Threshold的值设置为15。需要说明的是,Threshold的值不限于15,还可以取[10,20]。通过确定目标颜色的色相值范围,可以更精确地确定用户想要保留的目标颜色,有利于提升用户体验。
在步骤S203,针对每个视频帧,根据预置的色相计算公式计算该视频帧中每个像素的色相值。 
在步骤S204,将该视频帧中色相值属于目标颜色的色相值范围的像素保留下来,并将该视频帧中色相值不属于目标颜色的色相值范围的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,从而生成移色处理后的新视频帧。具体地,在RGB颜色空间中,预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为灰色像素的亮度值。根据国际标准,第一转换系数为0.299,第二转换系数为0.587,第三转换系数为0.114,第四转换系数为0,第五转换系数为0,但是这种浮点计算可能降低运算速率,影响视频处理的效果。优选地,可以进行放大处理,即,可以对该公式进行改写,将浮点计算转化成整数计算,使得整个过程只需使用整数计算,当各转换系数放大1024倍时(注: 1024是2的10次方),第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,更加优选地,第一转换系数为306,第二转换系数为601,第三转换系数为117,第四转换系数为512,第五转换系数为10。当然,也可以类似地进行2的8次方,16次方,20次方的放大处理等。这种整式运算大大加快了移色处理的速度,提升了用户体验。
除了以上实施例中列举的通过视频帧上的参考区域获取目标颜色的方案以外,还可以采用其他方案获取目标颜色,例如由用户直接输入目标颜色的色相值。
参见图3,是本发明提供的移色处理方法的第三实施例流程图,所述方法包括:
在步骤S300,采集视频帧。
在步骤S301,获取所采集的视频帧上的参考区域。
在步骤S302,根据获取的参考区域中的像素的色相值分布确定目标颜色的色相值范围。可以采用步骤S303-S306中描述的方法计算像素的色相值。
在步骤S303,针对每个视频帧,在RGB颜色空间中,分别确定该视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的的亮度最大值,将最小的亮度值作为该像素的亮度最小值。具体地,分别确定视频帧中每个像素在R颜色通道的亮度值R、在G颜色通道的亮度值G和在B颜色通道的亮度值B,用MAX表示R、G、B中的最大值,用MIN表示R、G、B中的最小值,MAX即为像素的亮度最大值,MIN即为像素的亮度最小值。
在步骤S304,针对每个像素,判断该像素的亮度最大值和亮度最小值是否相等。
若步骤S304的判断结果为是,则执行步骤S305。在步骤S305,确定该像素的色相值H=0。
若步骤S304的判断结果为否,则执行步骤S306。在步骤S306,根据该像素的亮度最大值对应的颜色通道确定该像素的色相值。具体地,在360度色相环中,若该像素的亮度最大值对应于R颜色通道,即MAX=R,则确定该像素的色相值H=360+60*(G-B)/(MAX-MIN);若该像素的亮度最大值对应于G颜色通道,即MAX=G,则确定该像素的色相值H=120+60*(B-R)/(MAX-MIN);若该像素的亮度最大值对应于B颜色通道,即MAX=B,则确定该像素的色相值H=240+60*(R-G)/(MAX-MIN)。
在步骤S307,将该视频帧中色相值属于目标颜色的色相值范围的像素保留下来,并将该视频帧中色相值不属于目标颜色的色相值范围的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,从而生成移色处理后的新视频帧。
在上述步骤S306中,示出了一种根据像素的亮度最大值对应的颜色通道确定该像素的色相值的方法,但这仅仅用于举例说明,而不用于限制。
优选地,为了加快移色处理的速度,实现在移动平台(如智能手机)上实时地进行视频的移色操作,可以将色相环范围[0,360]线性映射到一个字节能表示的范围[0,255]。在色相范围[0,255]中,若该像素的亮度最大值对应于R颜色通道,即MAX=R,则确定该像素的色相值H=255+43*(G-B)/(MAX-MIN);若该像素的亮度最大值对应于G颜色通道,即MAX=G,则确定该像素的色相值H=84+43*(B-R)/(MAX-MIN);若该像素的亮度最大值对应于B颜色通道,即MAX=B,则确定该像素的色相值H=171+43*(R-G)/(MAX-MIN)。
更加优选地,为了进一步加快处理速度,可以减少以上计算式中的整数除法的运算。由于MAX-MIN的取值范围为[0,255],可以预先设置一个固定长度为256的查找表Table,定义该查找表为Table[i]=(43<<Bits)/i,其中左移Bits(<<Bits)是为了保留整数除法中尽量多的有效位数,Bits的取值可以为20。此时,在步骤S306,若该像素的亮度最大值对应于R颜色通道,即MAX=R,则在查找表Table中查找Table[MAX-MIN]的值,并确定该像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;若该像素的亮度最大值对应于G颜色通道,即MAX=G,则在查找表Table中查找Table[MAX-MIN]的值,并确定该像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;若该像素的亮度最大值对应于B颜色通道,即MAX=B,则在查找表Table中查找Table[MAX-MIN]的值,并确定该像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits。当使用进一步优化后的公式计算像素的色相时,效率可以大幅提高。经大规模测试,本实施例提供的移色处理方法在iPhone4手机上运行的帧率可达到20帧/秒以上,达到了实时的要求。
参见图4,是本发明提供的移色处理系统的第一实施例结构示意图,所述系统包括: 
数据采集模块410,用于采集视频帧。
目标颜色确定模块420,用于确定目标颜色的色相值要求。
色相值获取模块430,用于针对每个视频帧,根据预置的色相计算公式计算该视频帧中每个像素的色相值。 
新帧生成模块440,用于将该视频帧中色相值不满足目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,生成移色处理后的新视频帧。
本发明实施例提供的移色处理系统,通过像素的色相值来判断该像素的颜色是否为需要保留的目标颜色,加快了移色处理的速度,可以实时地对视频流进行移色处理,以所见即所得的实时方式呈现给用户,不仅能处理单个图片,还能实时处理视频和摄像头数据,提升了用户体验。
参见图5,是本发明提供的移色处理系统的第二实施例结构示意图,所述系统包括数据采集模块510、目标颜色确定模块520、色相值获取模块530和新帧生成模块540,其中目标颜色确定模块520又可以包括参考区域获取模块521和色相值范围确定模块522。
数据采集模块510,用于采集视频帧。数据采集模块510可以采集摄像头捕捉的视频帧,也可以采集正在播放的视频文件中的视频帧。当采集摄像头捕捉的视频帧时,数据采集模块510可以在录像模式下采集视频帧,也可以在拍照预览模式下采集视频帧。也就是说,本发明可以实时地对视频流数据进行移色处理,而不仅限于对静态的图片进行移色处理。
参考区域获取模块521,用于获取数据采集模块510采集的视频帧上的参考区域。具体地,参考区域获取模块521可以用于接收用户输入的参考区域选择指令。例如,用户可以通过参考区域获取模块521提供的选框工具或魔棒工具等在显示窗口当前显示的视频帧图像中选择一定大小的带有其想保留的目标颜色的典型区域作为参考区域,参考区域在图像中的位置和大小都可以由用户自行确定。又例如,参考区域获取模块521可以在显示窗口中提供一个边长为r的正方形框Rect,用户可以随时移动框Rect来指定当前显示的视频帧图像中带有其想保留的目标颜色的典型区域作为参考区域,一般地,在640*480的屏幕分辨率下,可以取r=40。
色相值范围确定模块522,用于根据参考区域获取模块521获取的参考区域中的像素的色相值分布确定目标颜色的色相值范围。
除了RGB颜色空间以外,还可以用HSL颜色空间来表示颜色。HSL颜色空间采用3个分量H(Hue,色相)、S(Saturation,饱和度)和L(Lightness,明度)来表示颜色。传统RGB颜色空间是基于物体对光源红绿蓝分量反射量大小来表示颜色,即发光加色原理。而HSL颜色空间是基于人们对色彩的感知来表示颜色。HSL的H分量,代表的是人眼所能感知的颜色范围,这些颜色分布在一个平面的色相环上,取值范围是0°到360°的圆心角,每个角度可以代表一种颜色;HSL的S分量,指的是色彩的饱和度,它用0%至100%的值描述了相同色相、明度下色彩纯度的变化,数值越大,颜色中的灰色越少,颜色越鲜艳;HSL的L分量,指的是色彩的明度,作用是控制色彩的明暗变化,它的取值也是0%至100%,数值越小,色彩越暗,越接近于黑色,数值越大,色彩越亮,越接近于白色。
色相值范围确定模块522可以将整个色相环360度切分为若干个区间,根据落入每个区间中的参考区域像素的个数确定参考区域的主要颜色,即目标颜色。例如,色相值范围确定模块522可以将整个色相环360度切分为5度为一个区间,共72个区间,再针对框Rect中的像素点的色相值H进行这72个区间的桶分类,即H值落在哪个区间内,该区间内像素个数增加1,那么可以直接将该区间的色相值范围作为目标颜色的色相值范围。
优选地,为了更精确地确定目标颜色,可以设落入第K个区间内的像素个数最多,为n个,它们的色相值之和为SumHue,则目标颜色的色相值Hue_Target =SumHue / n。需要说明的是,不限于以5度为一个区间,色相值范围确定模块522可以取[4,10]度为一个区间。色相值范围确定模块522可以直接将目标颜色的色相值作为判断标准,也可以设置一定的容差。例如,色相值范围确定模块522可以设置色相容差Threshold,那么目标颜色的色相值范围为[Hue_Target-Threshold,Hue_Target+ Threshold],在该范围内的两个色相值可以认为是同一种色调,一般将Threshold的值设置为15。需要说明的是,Threshold的值不限于15,还可以取[10,20]。通过确定目标颜色的色相值范围,可以更精确地确定用户想要保留的目标颜色,有利于提升用户体验。
色相值获取模块530,用于针对每个视频帧,根据预置的色相计算公式计算该视频帧中每个像素的色相值。 
新帧生成模块540,用于将该视频帧中色相值属于目标颜色的色相值范围的像素保留下来,并将该视频帧中色相值不属于目标颜色的色相值范围的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,从而生成移色处理后的新视频帧。具体地,在RGB颜色空间中,预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为灰色像素的亮度值。根据国际标准,第一转换系数为0.299,第二转换系数为0.587,第三转换系数为0.114,第四转换系数为0,第五转换系数为0,但是这种浮点计算可能降低运算速率,影响视频处理的效果。优选地,可以进行放大处理,即,可以对该公式进行改写,将浮点计算转化成整数计算,使得整个过程只需使用整数计算,当各转换系数放大1024倍时(注: 1024是2的10次方),第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,更加优选地,第一转换系数为306,第二转换系数为601,第三转换系数为117,第四转换系数为512,第五转换系数为10。当然,也可以类似地进行2的8次方,16次方,20次方的放大处理等。这种整式运算大大加快了移色处理的速度,提升了用户体验。
除了以上实施例中列举的通过视频帧上的参考区域获取目标颜色的方案以外,还可以采用其他方案获取目标颜色,例如目标颜色确定模块410接收用户直接输入的目标颜色的色相值。
参见图6,是本发明提供的移色处理系统的第三实施例结构示意图,所述系统包括数据采集模块610、目标颜色确定模块620、色相值获取模块630和新帧生成模块640,其中目标颜色确定模块620又可以包括参考区域获取模块621和色相值范围确定模块622,色相值获取模块630又可以包括亮度极值确定模块631、判断模块632和色相值确定模块633。
数据采集模块610,用于采集视频帧。
参考区域获取模块621,用于获取数据采集模块610采集的视频帧上的参考区域。
色相值范围确定模块622,用于根据获取的参考区域中的像素的色相值分布确定目标颜色的色相值范围。色相值范围确定模块622可以采用与色相值获取模块630相同的方式计算像素的色相值。
亮度极值确定模块631,用于针对每个视频帧,在RGB颜色空间中,分别确定该视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的的亮度最大值,将最小的亮度值作为该像素的亮度最小值。具体地,亮度极值确定模块631可以分别确定视频帧中每个像素在R颜色通道的亮度值R、在G颜色通道的亮度值G和在B颜色通道的亮度值B,用MAX表示R、G、B中的最大值,用MIN表示R、G、B中的最小值,MAX即为像素的亮度最大值,MIN即为像素的亮度最小值。
判断模块632,用于针对每个像素,判断该像素的亮度最大值和亮度最小值是否相等。
色相值确定模块633,用于在判断模块632的判断结果为是时,确定该像素的色相值H=0;还用于在判断模块632的判断结果为否时,根据该像素的亮度最大值对应的颜色通道确定该像素的色相值。
具体地,色相值确定模块633又可以包括零值模块、R颜色通道模块、G颜色通道模块和B颜色通道模块。在360度色相环中,零值模块用于在判断模块632的判断结果为是时,确定该像素的色相值H=0;R颜色通道模块用于在判断模块632的判断结果为否且该像素的亮度最大值对应于R颜色通道(即MAX=R)时,确定该像素的色相值H=360+60*(G-B)/(MAX-MIN);G颜色通道模块用于在判断模块632的判断结果为否且该像素的亮度最大值对应于G颜色通道(即MAX=G)时,确定该像素的色相值H=120+60*(B-R)/(MAX-MIN);B颜色通道模块用于在判断模块632的判断结果为否且该像素的亮度最大值对应于B颜色通道(即MAX=B)时,确定该像素的色相值H=240+60*(R-G)/(MAX-MIN)。
新帧生成模块640,用于将该视频帧中色相值属于目标颜色的色相值范围的像素保留下来,并将该视频帧中色相值不属于目标颜色的色相值范围的像素作为待转换像素,根据预置的像素转换公式将待转换像素转换为灰色像素,从而生成移色处理后的新视频帧。 
优选地,为了加快移色处理的速度,实现在移动平台(如智能手机)上实时地进行视频的移色操作,可以将色相环范围[0,360]线性映射到一个字节能表示的范围[0,255]。在色相范围[0,255]中,R颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于R颜色通道(即MAX=R)时,确定该像素的色相值H=255+43*(G-B)/(MAX-MIN);G颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于G颜色通道(即MAX=G)时,确定该像素的色相值H=84+43*(B-R)/(MAX-MIN);B颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于B颜色通道(即MAX=B)时,确定该像素的色相值H=171+43*(R-G)/(MAX-MIN)。
更加优选地,为了进一步加快处理速度,可以减少以上计算式中的整数除法的运算。此时,色相值确定模块633还可以包括查找表存储模块,由于MAX-MIN的取值范围为[0,255],查找表存储模块中可以预先存储有一个固定长度为256的查找表Table,定义该查找表为Table[i]=(43<<Bits)/i,其中左移Bits(<<Bits)是为了保留整数除法中尽量多的有效位数,Bits的取值可以为20。此时,R颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于R颜色通道(即MAX=R)时,在查找表存储模块中查找Table[MAX-MIN]的值,然后确定该像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;G颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于G颜色通道(即MAX=G)时,在查找表存储模块中查找Table[MAX-MIN]的值,然后确定该像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;B颜色通道模块可以用于在判断模块632的判断结果为否且该像素的亮度最大值对应于B颜色通道(即MAX=B)时,在查找表存储模块中查找Table[MAX-MIN]的值,然后确定该像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits。当使用进一步优化后的公式计算像素的色相时,效率可以大幅提高。经大规模测试,本实施例提供的移色处理系统在iPhone4手机上运行的帧率可达到20帧/秒以上,达到了实时的要求。
本发明实施例提供的移色处理方法及系统,可以在移动平台(如手机和平板电脑等)上实时运行,且与人的交互方式简单自然;可以只保留用户喜欢的颜色,如草丛中的一朵花,可以只保留花是彩色的,而其他区域为灰色,形成强烈的对比。该方法和系统有很强的易用性和可玩性,相比Camera360的移色处理,本发明实施例提供的移色处理方案以所见即所得的实时方式呈现给用户,即在照相模式下,可以在用户预览的时候实时地将其它颜色移除,在摄像模式下,可以在录制的时候实时地将其它颜色移除。也就是说,本发明实施例不仅能处理静态图片,而且还能实时处理视频和摄像头数据,给用户以一种所见即所得的反馈。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (10)

1.一种移色处理方法,其特征在于,包括:
采集视频帧并确定目标颜色的色相值要求;
针对每个视频帧,根据预置的色相计算公式计算所述视频帧中每个像素的色相值; 
将所述视频帧中色相值不满足所述目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将所述待转换像素转换为灰色像素,生成移色处理后的新视频帧。
2.根据权利要求1所述的移色处理方法,其特征在于,所述采集视频帧并确定目标颜色的色相值要求的步骤具体包括:
采集视频帧;
获取所采集的视频帧上的参考区域;
根据所述参考区域中的像素的色相值分布确定目标颜色的色相值范围。
3.根据权利要求1所述的移色处理方法,其特征在于,在RGB颜色空间中,所述预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为所述待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为所述灰色像素的亮度值,第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,第四转换系数为512,第五转换系数为10。
4.根据权利要求2所述的移色处理方法,其特征在于,所述根据预置的色相计算公式计算所述视频帧中每个像素的色相值的步骤具体包括:
在RGB颜色空间中,分别确定所述视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的亮度最大值,将最小的亮度值作为该像素的亮度最小值;
判断所述像素的亮度最大值和亮度最小值是否相等;
若判断所述像素的亮度最大值和亮度最小值是否相等的判断结果为是,则所述像素的色相值H=0;
若判断所述像素的亮度最大值和亮度最小值是否相等的判断结果为否,则根据所述亮度最大值对应的颜色通道确定所述像素的色相值。
5.根据权利要求4所述的移色处理方法,其特征在于,所述根据所述亮度最大值对应的颜色通道确定所述像素的色相值的步骤具体包括:
若所述亮度最大值对应于R颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;
若所述亮度最大值对应于G颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;
若所述亮度最大值对应于B颜色通道,则在查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits;
其中,R、G、B分别为所述像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,MAX为所述像素的亮度最大值,MIN为所述像素的亮度最小值,查找表Table为预先设置的固定长度为256的表,在所述查找表Table中,Table[i]=(43<<Bits)/i,其中Bits为任意合适的正整数。
6.系统,其特征在于,包括:
数据采集模块,用于采集视频帧;
目标颜色确定模块,用于确定目标颜色的色相值要求;色相值获取模块,用于针对每个视频帧,根据预置的色相计算公式计算所述视频帧中每个像素的色相值; 
新帧生成模块,用于将所述视频帧中色相值不满足所述目标颜色的色相值要求的像素作为待转换像素,根据预置的像素转换公式将所述待转换像素转换为灰色像素,生成移色处理后的新视频帧。
7.根据权利要求6所述的移色处理系统,其特征在于,所述目标颜色确定模块具体包括:
参考区域获取模块,用于获取所述数据采集模块采集的视频帧上的参考区域;
色相值范围确定模块,用于根据所述参考区域中的像素的色相值分布确定目标颜色的色相值范围。
8.根据权利要求6所述的移色处理系统,其特征在于,在RGB颜色空间中,所述预置的像素转换公式为:Y=(R*第一转换系数+G*第二转换系数+B*第三转换系数+第四转换系数)>>第五转换系数,其中R、G、B分别为所述待转换像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,Y为所述灰色像素的亮度值,第一转换系数的取值范围为300~310,第二转换系数的取值范围为596~605,第三转换系数的取值范围为112~122,第四转换系数为512,第五转换系数为10。
9.根据权利要求7所述的移色处理系统,其特征在于,所述色相值获取模块具体包括:
亮度极值确定模块,用于在RGB颜色空间中,分别确定所述视频帧中每个像素在R颜色通道、G颜色通道和B颜色通道的亮度值,将最大的亮度值作为该像素的的亮度最大值,将最小的亮度值作为该像素的亮度最小值;
判断模块,用于判断所述像素的亮度最大值和亮度最小值是否相等;
色相值确定模块,用于在所述判断模块的判断结果为是时,确定所述像素的色相值H=0;还用于在所述判断模块的判断结果为否时,根据所述亮度最大值对应的颜色通道确定所述像素的色相值。
10.根据权利要求9所述的移色处理系统,其特征在于,所述色相值确定模块具体包括:
查找表存储模块,用于存储预先设置的固定长度为256的查找表Table,在所述查找表Table中,Table[i]=(43<<Bits)/i,其中Bits为任意合适的正整数;
零值模块,用于在所述判断模块的判断结果为是时,确定所述像素的色相值H=0;
R颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于R颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=255+((G-B)*Table[MAX-MIN])>>Bits;
G颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于G颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,并确定所述像素的色相值H=84+((B-R)*Table[MAX-MIN])>>Bits;
B颜色通道模块,用于在所述判断模块的判断结果为否且所述亮度最大值对应于B颜色通道时,在所述查找表Table中查找Table[MAX-MIN]的值,确定所述像素的色相值H=171+((R-G)*Table[MAX-MIN])>>Bits;
其中,R、G、B分别为所述像素在R颜色通道的亮度值、在G颜色通道的亮度值和在B颜色通道的亮度值,MAX为所述像素的亮度最大值,MIN为所述像素的亮度最小值。
CN201110434543.0A 2011-12-22 2011-12-22 一种移色处理方法及系统 Active CN102447913B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110434543.0A CN102447913B (zh) 2011-12-22 2011-12-22 一种移色处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110434543.0A CN102447913B (zh) 2011-12-22 2011-12-22 一种移色处理方法及系统

Publications (2)

Publication Number Publication Date
CN102447913A true CN102447913A (zh) 2012-05-09
CN102447913B CN102447913B (zh) 2015-02-18

Family

ID=46009938

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110434543.0A Active CN102447913B (zh) 2011-12-22 2011-12-22 一种移色处理方法及系统

Country Status (1)

Country Link
CN (1) CN102447913B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917158A (zh) * 2012-09-07 2013-02-06 中兴通讯股份有限公司 一种色彩动态替换装置、方法和手机
CN104871532A (zh) * 2013-01-25 2015-08-26 富士胶片株式会社 拍摄装置及其动作控制方法
CN110073656A (zh) * 2016-12-14 2019-07-30 富士胶片株式会社 图像处理装置、摄像装置、图像处理方法及图像处理程序
CN112204608A (zh) * 2019-08-27 2021-01-08 深圳市大疆创新科技有限公司 图像处理方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1386004A (zh) * 2001-05-11 2002-12-18 三洋电机株式会社 数码相机和颜色调节装置
CN1787010A (zh) * 2005-11-24 2006-06-14 北京金山软件有限公司 一种动态变换图素颜色的方法和变换图像颜色的方法
CN101069191A (zh) * 2004-12-02 2007-11-07 英国电讯有限公司 视频处理
CN101193316A (zh) * 2006-11-21 2008-06-04 安凯(广州)软件技术有限公司 一种自适应白平衡校正方法
CN101572075A (zh) * 2008-04-30 2009-11-04 台湾薄膜电晶体液晶显示器产业协会 消除动态图像色彩偏移的方法及显示器
CN101764910A (zh) * 2008-12-08 2010-06-30 新奥特(北京)视频技术有限公司 一种高效的图像色彩抑制方法
CN102082864A (zh) * 2010-11-22 2011-06-01 徐灏 Camare360手机摄影平台及瞬间处理方法
CN102254307A (zh) * 2011-07-15 2011-11-23 深圳市万兴软件有限公司 一种移色处理方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1386004A (zh) * 2001-05-11 2002-12-18 三洋电机株式会社 数码相机和颜色调节装置
CN101069191A (zh) * 2004-12-02 2007-11-07 英国电讯有限公司 视频处理
CN1787010A (zh) * 2005-11-24 2006-06-14 北京金山软件有限公司 一种动态变换图素颜色的方法和变换图像颜色的方法
CN101193316A (zh) * 2006-11-21 2008-06-04 安凯(广州)软件技术有限公司 一种自适应白平衡校正方法
CN101572075A (zh) * 2008-04-30 2009-11-04 台湾薄膜电晶体液晶显示器产业协会 消除动态图像色彩偏移的方法及显示器
CN101764910A (zh) * 2008-12-08 2010-06-30 新奥特(北京)视频技术有限公司 一种高效的图像色彩抑制方法
CN102082864A (zh) * 2010-11-22 2011-06-01 徐灏 Camare360手机摄影平台及瞬间处理方法
CN102254307A (zh) * 2011-07-15 2011-11-23 深圳市万兴软件有限公司 一种移色处理方法和装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917158A (zh) * 2012-09-07 2013-02-06 中兴通讯股份有限公司 一种色彩动态替换装置、方法和手机
CN104871532A (zh) * 2013-01-25 2015-08-26 富士胶片株式会社 拍摄装置及其动作控制方法
CN104871532B (zh) * 2013-01-25 2017-03-15 富士胶片株式会社 拍摄装置及其动作控制方法
CN110073656A (zh) * 2016-12-14 2019-07-30 富士胶片株式会社 图像处理装置、摄像装置、图像处理方法及图像处理程序
CN110073656B (zh) * 2016-12-14 2021-06-11 富士胶片株式会社 图像处理装置、摄像装置、图像处理方法及存储介质
CN112204608A (zh) * 2019-08-27 2021-01-08 深圳市大疆创新科技有限公司 图像处理方法及装置
WO2021035505A1 (zh) * 2019-08-27 2021-03-04 深圳市大疆创新科技有限公司 图像处理方法及装置

Also Published As

Publication number Publication date
CN102447913B (zh) 2015-02-18

Similar Documents

Publication Publication Date Title
CN1977542B (zh) 利用感知规律提取主色以产生来自视频内容的环境光
CN108600781B (zh) 一种视频封面生成的方法以及服务器
CN101027895B (zh) 用于增强美感的图像转换的方法和设备
US8290252B2 (en) Image-based backgrounds for images
CN102741883B (zh) 高动态范围图像生成和渲染
RU2450476C2 (ru) Устройство и способ определения оптимальной задней подсветки
CN104221359A (zh) 用于色彩片段的色彩调节器
CN107113367A (zh) 具有颜色恒定性的亮度改变图像处理
CN101558656B (zh) 亮度信息显示装置和方法
CN102447913B (zh) 一种移色处理方法及系统
CN109152171A (zh) 灯光的控制方法、装置、可读存储介质及控制系统
CN108024105A (zh) 图像色彩调节方法、装置、电子设备及存储介质
CN102595023A (zh) 移动终端及其图像处理方法
CN101796848A (zh) 颜色增强
CN110070080A (zh) 一种文字检测方法及装置、设备和计算机可读存储介质
Liu et al. Progressive complex illumination image appearance transfer based on CNN
CN113034412B (zh) 视频处理方法及装置
CN116681613A (zh) 人脸关键点检测的仿光照增强方法、装置、介质及设备
US8498332B2 (en) Chroma supression features
US20230171506A1 (en) Increasing dynamic range of a virtual production display
US9836827B2 (en) Method, apparatus and computer program product for reducing chromatic aberrations in deconvolved images
KR102215607B1 (ko) 어두운 이미지의 밝기를 개선하기 위한 보정 처리가 가능한 전자 장치 및 그 동작 방법
CN113762058A (zh) 一种视频合成方法、装置、计算机设备和存储介质
WO2021069282A1 (en) Perceptually improved color display in image sequences on physical displays
CN102724427B (zh) 一种快速实现视频图像区域化极值色彩显示的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 518000 Guangdong city of Shenzhen province Nanshan District Gao Xin Road, room 9 building on the north side of block A901 No. 006 TCL Industry Research Institute building A A Building 8 floor

Applicant after: Shenzhen Wondershare Information Technology Co., Ltd.

Address before: 518000 Guangdong city of Shenzhen province Nanshan District Gao Xin Road Building A block 8 Building TCL

Applicant before: Shenzhen Wondershare Software Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SHENZHEN WONDERSHARE SOFTWARE CO., LTD. TO: SHENZHEN WONDERSHARE INFORMATION TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 850000 Tibet autonomous region, Lhasa City, New District, west of the East Ring Road, 1-4 road to the north, south of 1-3 Road, Liu Dong building, east of the 8 unit 6, floor 2, No.

Patentee after: Wanxing Polytron Technologies Inc

Address before: 518000 Guangdong city of Shenzhen province Nanshan District Gao Xin Road, room 9 building on the north side of block A901 No. 006 TCL Industry Research Institute building A A Building 8 floor

Patentee before: Shenzhen Wondershare Information Technology Co., Ltd.

CP03 Change of name, title or address