具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
实施例一
本发明实施例所提供的对图像的像素进行颜色分类的方法可应用于金融系统(例如银行、保险等)的票据、工程领域的图纸、电子领域的电路图等图像的压缩、识别和分类,并可广泛应用于图像颜色匹配、图像增强、图像融合和图像校正等领域。原始图像的内容具有颜色种类少,票面背景颜色单一,多为白色,以文字及红色印章为主等特点,原始图像的颜色空间可为任意颜色空间,包括但不限于RGB颜色空间、YUV颜色空间、HSL颜色空间、YCbCr颜色空间、HSV颜色空间。
图1是本实施例所述的对图像的像素进行颜色分类的方法流程图,如图1所示,本实施例所述的对图像的像素进行颜色分类的方法包括:
S101、获取图像中各像素的YCbCr值,获取所述图像中各像素的Cb与Cr之差的绝对值的期望值作为第一阈值。
YCbCr有时会称为YCC。YCbCr是在计算机系统中应用最多的成员,其应用领域很广泛,JPEG、MPEG均采用此格式。YCbCr有许多取样格式,如4:4:4,4:2:2,4:1:1和4:2:0。YCbCr中Y是指亮度分量,Cb指蓝色色度分量,而Cr指红色色度分量。YCbCr是DVD、摄像机、数字电视等消费类视频产品中,常用的颜色编码方案。
若原图像不为YCbCr颜色色空间的图像,则将原图像进行空间转换,转换到YCbCr颜色空间。
若原图像为RGB颜色空间,以RGB和YCbCr各分量的值的范围均为0-255为例,例如,将原图像由RGB颜色空间转换为YCbCr颜色空间为:
即:
Y=0.257*R+0.564*G+0.098*B+16
Cb=-0.148*R-0.291*G+0.439*B+128
Cr=0.439*R-0.368*G-0.071*B+128
获取所述图像中各像素的Cb与Cr之差的绝对值的期望值作为第一阈值。
S102、从所述图像中筛选出像素的Cb与Cr之差的绝对值大于所述第一阈值的像素作为筛选像素集。
在YCbCr颜色空间中,将Cb与Cr之差的绝对值大于所述第一阈值的像素提取出来,记为筛选像素集。
S103、获取所述筛选像素集中各像素的RGB值的标准差的期望值作为第二阈值。
若原始图像为RGB颜色空间的图像,则获取筛选像素集中各像素的RGB值,若原图像为YCbCr颜色空间的图像,则所述筛选像素集中各像素由YCbCr颜色空间转换为RGB颜色空间。再获取所述筛选像素集中各像素的RGB值的标准差的期望值,将所述期望值作为第二阈值。
若原图像为YCbCr颜色空间,以RGB和YCbCr各分量的值的范围均为0-255为例,例如,将原图像由YCbCr颜色空间转换为RGB颜色空间为:
即:
R=1.164*(Y-16)+1.596*(Cr-128)
G=1.164*(Y-16)-0.392*(Cb-128)-0.813*(Cr-128)
B=1.164*(Y-16)+2.017*(Cb-128)
针对像素点的RGB值,各像素的标准差的计算公式为:
其中μ=(R+G+B)/3;
S104、将所述图像中像素的RGB值的标准差小于所述第二阈值的像素分类为黑白像素集,将所述图像中像素的RGB值的标准差大于等于所述第二阈值的像素分类为彩色像素集。
若原图像不为RGB颜色空间的图像,获取原图像中各像素的RGB值以及各像素的RGB值的标准差的方法与步骤S103相同,在此不作赘述。
本实施例所述的对图像的像素进行颜色分类的方法通过从图像中筛选出像素的Cb与Cr之差的绝对值大于所述图像中所有像素的Cb与Cr之差的绝对值的期望值作为筛选像素集;获取所述筛选像素集中各像素的RGB值的标准差的期望值作为第二阈值;将所述图像中像素的RGB值的标准差小于所述第二阈值的像素分类为黑白像素集,将所述图像中像素的RGB值的标准差大于等于所述第二阈值的像素分类为彩色像素集。能实现对图像所包括的像素进行黑白像素和彩色像素的快速分类。
实施例二
本实施例以RGB颜色空间的原始图像为例,在通过实施例一所述的对图像的像素进行颜色分类的方法将所述图像中的像素分为黑白像素集和彩色像素集之后,根据像素的RGB平均值对所述黑白像素集进行进一步分类,根据像素的HSV值对所述彩色像素集进行进一步分类。
本实施例所适用于金融系统(例如银行、保险等)的票据、工程领域的图纸、电子领域的电路图等图像的压缩、识别和分类,并可广泛应用于图像颜色匹配、图像增强、图像融合和图像校正等领域。因为这些图像具有颜色种类少,票面背景颜色单一,多为白色,以文字及红色印章为主等特点。针对其上述特点,首先考虑首先将灰度(包括黑、白和灰)与彩色相分离,再分别将两类颜色进一步细分和识别,从而完成图像目标整体颜色的分类和识别。
由于计算机中图像的颜色一般采用RGB颜色空间表示,本实施例以RGB颜色空间的原始图像为例,直接获取图像颜色的R、G、B值。灰度像素点的R、G、B值的标准差较彩色像素点的小,且两者差距显著,本实施例据此灰度和彩色分离。但是由于票据影像通过拍照、扫描等方式获取过程中受光照、票面反射率等因素的影响,所得图像的清晰度、颜色的饱和度等各不相同,因此本实施例避免了使用固定的阈值实现所有图像中灰度和彩色的分离。
利用YCbCr颜色空间中彩色像素点Cb和Cr的较大差异,通过统计分析的方法可以获得符合人眼视觉的恰当阈值,使其具有自适应性。
再利用HSV颜色空间对于彩色的准确描述,通过H分量可以将已分离的彩色划分为红、绿、蓝、黄、青、粉红等。根据实际应用的需要,可以由S分量进一步将每种颜色继续细分。此外,还可以进一步将灰色细分。
这样,就更精细地完成了图像目标颜色的分类和识别。图2为本实施例所述的方法的整体示意图。
图3是本实施例所述的对图像的像素进行颜色分类的方法流程图,如图3所示,本实施例所述的对图像的像素进行颜色分类的方法包括:
S301、获取图像的RGB的标准差矩阵。
对于原图像I,按照先行后列的顺序读取其中每一点的R、G、B值,利用标准差公式计算所有像素点的标准差,从而得到与原图像像素点坐标对应的标准差矩阵σ(i,j)。
针对像素点的RGB值,各像素的标准差的计算公式为:
其中μ=(R+G+B)/3;
S302、将图像由RGB颜色空间转换到YCbCr颜色空间。
按照RGB转成YCbCr的转换公式将原图像I中的R、G、B值转换到YCbCr空间,获取Y、Cb、Cr的值,从而得到转换后的图像I'。
具体地,将原图像由RGB颜色空间转换为YCbCr颜色空间为:
即:
Y=0.257*R+0.564*G+0.098*B+16
Cb=-0.148*R-0.291*G+0.439*B+128
Cr=0.439*R-0.368*G-0.071*B+128
S303、获取图像中所有像素的Cb和Cr的差值的绝对值的期望值。
利用期望值公式计算图像I'中所有像素点的Cb和Cr差值的绝对值的期望值,记为a。
针对各像素点的Cb和Cr值,其差值的绝对值的期望值a计算公式为:
其中N为图像的像素数量。
S304、获取图像中Cb和Cr差值的绝对值中大于所述期望值的像素作为筛选像素集。
统计图像I'中所有像素点的Cb和Cr差值的绝对值中大于上述期望值a的像素点的个数和坐标。
S305、根据所述筛选像素集获取阈值。
对步骤S304中的所有坐标所对应的标准差矩阵σ(i,j)中的标准差值进行求和,并利用步骤S304中的个数值计算其平均值,记为μ。
S306、根据所述阈值和所述图像的RGB的标准差矩阵,将所述图像分为黑白像素集和彩色像素集。
以μ为阈值,按照先行后列的顺序扫描标准差矩阵σ(i,j),对于其中的标准差值大于上述阈值的点坐标所对应的原图像中的像素点分类为彩色,否则分类为灰度。
S307、对所述黑白像素集进行细分。
根据像素的RGB平均值对所述黑白像素集进行进一步分类,具体包括:
将所述黑白像素集中像素的RGB平均值大于第三预设阈值的像素分类为白色像素子集;
将所述黑白像素集中像素的RGB平均值小于等于所述第三预设阈值且大于第四预设阈值的像素分类为灰色像素子集;
将所述黑白像素集中像素的RGB平均值小于等于所述第四预设阈值的像素分类为黑色像素子集。
例如,对于分类为灰度的像素点,计算其R、G、B值的平均值μ'。根据下列公式分类和识别像素点所对应目标的灰度色彩情况。
本领域的技术人员需要明确的是,上述公式主要根据人眼的视觉特点,在R、G、B的取值范围为[0255]的情况下,所获得的经验公式,公式中第三预设阈值、第四预设阈值的具体数值在一定范围内浮动,均包括在本发明的范围之内。
S308、将所述彩色像素集由RGB颜色空间转换为HSV颜色空间。
对于分类为彩色的所有像素点,按照下列公式将其颜色空间由RGB颜色空间转换到HSV颜色空间。各像素的H、S和V值依据以下公式计算获得。
V=max;
max=MAX(R,G,B);
min=min(R,G,B);
δ=max-min
S309、对所述彩色像素集进行细分。
根据像素的HSV值对所述彩色像素集进行进一步分类。由步骤S308获得的H值,根据如下所示公式中H的不同取值范围,将所有像素分类到不同的颜色类别,且实现了所对应目标点的颜色识别。
将所述彩色像素集中像素的HSV值的H小于第五预设阈值或大于第六预设阈值的像素分类为红色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第五预设阈值且小于第七预设阈值的像素分类为黄色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第七预设阈值且小于第八预设阈值的像素分类为绿色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第八预设阈值且小于第九预设阈值的像素分类为青色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第九预设阈值且小于第十预设阈值的像素分类为蓝色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第十预设阈值且小于第六预设阈值的像素分类为品红色像素子集。
以第五预设阈值为20,第六预设阈值为220,第七预设阈值为60,第八预设阈值为100,第九预设阈值为140,第十预设阈值为180为例,根据像素的HSV值对所述彩色像素集进行进一步分类如下:
本领域的技术人员需要明确的是,上述公式主要根据人眼的视觉特点,在原始图像的R、G、B的取值范围为[0255]的情况下,所获得的经验公式,公式中第五预设阈值、第六预设阈值、第七预设阈值、第八预设阈值、第九预设阈值、第十预设阈值的具体数值在一定范围内浮动,均包括在本发明的范围之内。
S310、再次对灰色像素子集和各彩色像素子集进行细分。
根据使用应用的需要,可以将灰色根据其平均值进一步的细分。同时,可以根据彩色值中的S的取值不同,进一步将其细分。图4是本实施例进行对图像的像素进行颜色分类的后的结果示意图。
本实施例以RGB颜色空间的图像为例,利用YCbCr颜色空间中彩色像素点Cb和Cr的较大差异,通过统计分析的方法获得符合人眼视觉的恰当阈值,将原始图像所包括的像素分为黑白像素集和彩色像素集;进而根据人眼的视觉特点,将所获分离出的黑白像素集进一步细分了黑、白、灰;进而再利用HSV颜色空间对于彩色的准确描述,通过H分量可以将已分离的彩色划分为红、绿、蓝、黄、青、蓝、品红等。根据实际应用的需要,进一步由S分量进一步将每种颜色继续细分。此外,可再进一步将灰色细分,能更加精细地对图像中所包括的像素进行分类,可为图像颜色匹配、图像增强、图像融合和图像校正等提供技术支持,也可用于滤除图像中的杂色,以便于图像压缩,提高图像压缩比等。
实施例三
图5是本实施例所述的对图像的像素进行颜色分类的装置的结构框图,如图5所示,本实施例所述的对图像的像素进行颜色分类的装置包括:
第一阈值获取单元501,用于获取图像中各像素的YCbCr值,获取所述图像中各像素的Cb与Cr之差的绝对值的期望值作为第一阈值;
筛选像素集获取单元502,用于从所述图像中筛选出像素的Cb与Cr之差的绝对值大于所述第一阈值的像素作为筛选像素集;
第二阈值获取单元503,用于获取所述筛选像素集中各像素的RGB值的标准差的期望值作为第二阈值;
分类单元504,用于将所述图像中像素的RGB值的标准差小于所述第二阈值的像素分类为黑白像素集,将所述图像中像素的RGB值的标准差大于等于所述第二阈值的像素分类为彩色像素集。
进一步地,所述装置还包括第二分类单元,用于在所述分类单元504将所述图像中像素的RGB值的标准差小于所述第二阈值的像素分类为黑白像素集,将所述图像中像素的RGB值的标准差大于等于所述第二阈值的像素分类为彩色像素集之后,根据像素的RGB平均值对所述黑白像素集进行进一步分类和/或根据像素的HSV值对所述彩色像素集进行进一步分类。
进一步地,所述第二分类单元根据像素的RGB平均值对所述黑白像素集进行进一步分类具体包括:
将所述黑白像素集中像素的RGB平均值大于第三预设阈值的像素分类为白色像素子集;
将所述黑白像素集中像素的RGB平均值小于等于所述第三预设阈值且大于第四预设阈值的像素分类为灰色像素子集;
将所述黑白像素集中像素的RGB平均值小于等于所述第四预设阈值的像素分类为黑色像素子集。
进一步地,所述第二分类单元还包括第三分类单元,用于将所述黑白像素集中像素的RGB平均值小于等于所述第三预设阈值且大于第四预设阈值的像素分类为灰色像素子集之后,根据像素的RGB平均值对所述灰色像素子集中的像素进行进一步分类。
进一步地,所述第二分类单元根据像素的HSV值对所述彩色像素集进行进一步分类具体包括:
将所述彩色像素集中像素的HSV值的H小于第五预设阈值或大于第六预设阈值的像素分类为红色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第五预设阈值且小于第七预设阈值的像素分类为黄色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第七预设阈值且小于第八预设阈值的像素分类为绿色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第八预设阈值且小于第九预设阈值的像素分类为青色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第九预设阈值且小于第十预设阈值的像素分类为蓝色像素子集;和/或
将所述彩色像素集中像素的HSV值的H大于等于第十预设阈值且小于第六预设阈值的像素分类为品红色像素子集。
进一步地,所述第二分类单元还包括第四分类单元,用于将所述彩色像素集分类为红色像素子集、黄色像素子集、绿色像素子集、青色像素子集、蓝色像素子集和/或品红色像素子集之后,根据像素的HSV中的S值对所述红色像素子集、黄色像素子集、绿色像素子集、青色像素子集、蓝色像素子集和/或品红色像素子集进行进一步分类。
本实施例所述的对图像的像素进行颜色分类的装置通过过从图像中筛选出像素的Cb与Cr之差的绝对值大于所述图像中所有像素的Cb与Cr之差的绝对值的期望值作为筛选像素集;获取所述筛选像素集中各像素的RGB值的标准差的期望值作为第二阈值;将所述图像中像素的RGB值的标准差小于所述第二阈值的像素分类为黑白像素集,将所述图像中像素的RGB值的标准差大于等于所述第二阈值的像素分类为彩色像素集。能实现对图像所包括的像素进行黑白像素和彩色像素的快速分类。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。