发明内容
本发明实施例提供一种图像处理方法及图像处理系统,用于解决现有图像处理方法存在的图像对比度不佳,导致视觉效果差的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种图像处理方法,包括:
获取待显示页面中的图像区域;
获取所述图像区域的灰度直方图;
将所述灰度直方图划分成背景区域和目标区域;
获取所述背景区域的第一灰度均值和所述目标区域的第二灰度均值;
采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图;
对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域。
可选的,将所述灰度直方图划分成背景区域和目标区域,包括:
采用最大类间差法获取所述图像区域的第一分割阈值;
采用图像最大熵法获取所述图像区域的第二分割阈值;
根据所述第一分割阈值和所述第二分割阈值确定目标分割阈值;
采用所述目标分割阈值将所述灰度直方图划分成背景区域和目标区域。
可选的,采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图,包括:
采用所述目标分割阈值、所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为四个子直方图。
可选的,所述四个子直方图的灰度区间分别为:[l0,l1]、[l1,T‘]、[T‘,l2]、[l2、l3],其中,l0和l3分别表示所述图像区域的最小灰度值和最大灰度值,l1表示所述第一灰度均值,l2表示所述第二灰度均值,T‘表示所述目标分割阈值。
可选的,根据所述第一分割阈值和所述第二分割阈值确定目标分割阈值,包括:
采用如下公式确定所述目标分割阈值:
T‘=γ·T1+(1-γ)T2
其中,T‘表示所述目标分割阈值,T
1表示所述第一分割阈值,T
2表示所述第二分割阈值,γ为权重参数,C
0和C
1表示所述灰度直方图经所述第一分割阈值分割得到的第一背景区域和第一目标区域,
和
分别表示第一背景区域和第一目标区域的灰度的方差,D
0和D
1表示所述灰度直方图经所述第二分割阈值分割得到的第二背景区域和第二目标区域,
和
分别表示第二背景区域和第二目标区域的灰度的方差。
可选的,对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域,包括:
针对每个所述子直方图执行以下操作:
对所述子直方图进行峰值统计,得到所述子直方图的多个峰值;
根据所述多个峰值确定所述子直方图的裁剪峰值;
根据所述裁剪峰值对所述子直方图进行裁剪,并将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上,得到增强后的图像区域。
可选的,根据所述裁剪峰值对所述子直方图进行裁剪,并将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上包括:
采用如下公式对所述子直方图进行裁剪:
其中,hn(i)表示裁剪后的第i灰度级的像素数量,h(i)表示裁剪前的第i灰度级的像素数量,K表示所述裁剪峰值;
采用如下公式将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上:
其中,K’表示将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上的像素数量,M表示所述子直方图所涉及的灰度级的个数。
可选的,将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上,得到增强后的图像区域,还包括:
对增强后的图像区域进行伽马校正,得到伽马校正后的图像区域。
可选的,对增强后的图像区域进行伽马校正,包括:
获取所述增强后的图像区域的平均灰度值;
若所述平均灰度值未超过第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
若所述平均灰度值超过所述第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
其中,D(t)表示伽马校正后的图像区域,CDF(t)表示增强后的图像区域的累计分布函数,γ1=0.3+CDF(t),γ2=CDFCDF(t)(t)。
可选的,获取待显示页面中的图像区域,包括:
获取待显示页面的原始RGB图像;
对所述原始RGB图像进行二值化处理,得到二值化图像;
确定所述二值化图像上各连通域的面积;
获取面积超过第二预设阈值的连通域;
根据面积超过所述第二预设阈值的连通域形成图像区域。
可选的,所述第二预设阈值采用如下公式计算:
Picarea=β×A×B
其中,Picarea表示所述第二预设阈值,β表示比例参数,A和B分别表示所述二值化图像的宽和高。
可选的,根据面积超过所述第二预设阈值的连通域形成图像区域之后,包括以下至少一项:
对所述图像区域进行膨胀处理;
对每一个连通域取其最小外接矩形作为其图像区域;
若两个所述图像区域为包含与被包含的关系,删除被包含的图像区域,若两个所述图像区域为相交的关系,取所述两个所述图像区域的并集的最小外接矩形作为合并后的图像区域,并删除所述两个所述图像区域。
第二方面,本发明实施例提供了一种图像处理系统,包括:
区域检测模块,用于获取待显示页面中的图像区域;
第一获取模块,用于获取所述图像区域的灰度直方图;
区域划分模块,用于将所述灰度直方图划分成背景区域和目标区域;
第二获取模块,用于获取所述背景区域的第一灰度均值和所述目标区域的第二灰度均值;
子直方图划分模块,用于采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图;
直方图均衡化处理模块,用于对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域。
第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述第一方面所述的图像处理方法的步骤。
第四方面,本发明实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述第一方面所述的图像处理方法的步骤。
在本发明实施例中,将待显示页面的图像区域进行背景区域和目标区域划分,得到区域特征灰度值,利用区域特征灰度值将图像区域的灰度直方图分割为多个子直方图,并对各个子直方图分别进行直方图均衡化处理,减少了不同区域间灰度的相互影响,可以避免出现过度增强问题,提高了图像的显示对比度,优化了用户体验。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,本发明实施例提供一种图像处理方法,本发明实施例的图像处理方法可以应用于电子墨水屏或者其他显示器件,所述图像处理方法包括:
步骤11:获取待显示页面中的图像区域;
步骤12:获取所述图像区域的灰度直方图;
步骤13:将所述灰度直方图划分成背景区域和目标区域;
步骤14:获取所述背景区域的第一灰度均值和所述目标区域的第二灰度均值;
步骤15:采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图;
步骤16:对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域。
直方图均衡化(Histogram Equalization)是一种增强图像对比度(ImageContrast)的方法,其主要思想是将一副图像的直方图分布变成近似均匀分布,从而增强图像的对比度。
在本发明实施例中,将待显示页面的图像区域进行背景区域和目标区域划分,得到区域特征灰度值,利用区域特征灰度值将图像区域的灰度直方图分割为多个子直方图,并对各个子直方图分别进行直方图均衡化处理,减少了不同区域间灰度的相互影响,可以避免出现过度增强问题,提高了图像的显示对比度,优化了用户体验。
下面对如上各步骤进行详细说明。
请参考图2,本发明实施例中,可选的,上述步骤13中,将所述灰度直方图划分成背景区域和目标区域,包括:
步骤131:采用最大类间差(Otsu)法获取所述图像区域的第一分割阈值;
所述图像区域为灰度图像;
步骤132:采用图像最大熵法获取所述图像区域的第二分割阈值;
步骤133:根据所述第一分割阈值和所述第二分割阈值确定目标分割阈值;
可选的,采用如下公式确定所述目标分割阈值:
T‘=γ·T1+(1-γ)T2 (1)
其中,T‘表示所述目标分割阈值,T
1表示所述第一分割阈值,T
2表示所述第二分割阈值,γ为权重参数,C
0和C
1表示所述灰度直方图经所述第一分割阈值分割得到的第一背景区域和第一目标区域,
和
分别表示第一背景区域和第一目标区域的灰度的方差,D
0和D
1表示所述灰度直方图经所述第二分割阈值分割得到的第二背景区域和第二目标区域,
和
分别表示第二背景区域和第二目标区域的灰度的方差。
步骤134:采用所述目标分割阈值将所述灰度直方图划分成背景区域和目标区域。
Otsu算法也称最大类间差法,有时也称之为大津算法,被认为是图像分割中阈值选取的最佳算法,计算简单,不受图像灰度和对比度的影响,因此在数字图像处理上得到了广泛的应用。它是按图像的灰度特性,将图像分成背景和目标两部分。因方差是灰度分布均匀性的一种度量,背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标为背景或部分背景错分为目标都会导致两部分差别变小。Otsu算法使用自动阈值对图像进行分割,其中阈值的选取决定了目标区与背景区域分割的准确性。但由于纹理边缘像素的内聚性较差,所以采用Otsu算法进行图像分割会导致图像边缘细节的丢失。
利用最大熵法对图像进行分割能够最大程度保留图像的边缘细节,提高图像丰富度。
为解决Otsu算法无法很好的处理图像边缘的问题,本发明实施例中,结合图像最大熵法和Otsu算法确定阈值大小,使得既能很好地识别图像边缘,又能最大程度地保留图像的纹理细节,提高图像的丰富度,同时增强算法的分割精度和稳定性。
本发明实施例中,可选的,请参考图2,上述步骤15中,采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图,包括:
步骤515:采用所述目标分割阈值、所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为四个子直方图。
可选的,所述四个子直方图的灰度区间分别为:[l0,l1]、[l1,T‘]、[T‘,l2]、[l2、l3],其中,l0和l3分别表示所述图像区域的最小灰度值和最大灰度值,l1表示所述第一灰度均值,l2表示所述第二灰度均值,T‘表示所述目标分割阈值。
本发明实施例中,可选的,上述步骤16中,对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域,包括:
步骤161:针对每个所述子直方图执行以下操作:
步骤1611:对所述子直方图进行峰值统计,得到所述子直方图的多个峰值;
本申请实施例中,可以采用一维矩阵h表示峰值:
h=(h1,h2,…,hN-1,hN) (3)
其中,N为峰值的数量。
可以采用如下公式计算裁剪峰值:
其中,K表示裁剪峰值,hi表示第i个峰值。
步骤1612:根据所述多个峰值确定所述子直方图的裁剪峰值;
步骤1613:根据所述裁剪峰值对所述子直方图进行裁剪,并将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上,得到增强后的图像区域。
可选的,采用如下公式对所述子直方图进行裁剪:
其中,hn(i)表示裁剪后的第i灰度级的像素数量,h(i)表示裁剪前的第i灰度级的像素数量,K表示所述裁剪峰值;
采用如下公式将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上:
其中,K’表示将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上的像素数量,M表示所述子直方图所涉及的灰度级的个数。
本发明实施例中,可选的,灰度级为0~255,当然也不排除为其他类型的灰度级划分方法。
本发明实施例中,为了增强图像区域的暗区域,可以对增强后的图像区域进行伽马(Gamma)校正。本发明实施例中,可选的,可以通过调整累积分布函数CDF(t)实现改变每个灰度级的灰度值,达到增强图像区域信息的效果。
本发明实施例中,可选的,将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上,得到增强后的图像区域,之后还包括:
步骤17:对增强后的图像区域进行伽马校正,得到伽马校正后的图像区域。
可选的,对增强后的图像区域进行伽马校正,包括:
步骤171:获取所述增强后的图像区域的平均灰度值;
步骤172:若所述平均灰度值未超过第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
若所述平均灰度值超过所述第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
其中,D(t)表示伽马校正后的图像区域,CDF(t)表示增强后的图像区域的累计分布函数:
γ1和γ2为伽马校正函数,分别为:
γ1=0.3+CDF(t) (9)
γ2=CDFCDF(t)(t) (10)
在Gamma校正过程中,因为Gamma的取值会导致图像增强不足或增强过度,而选取合适的Gamma函数可以避免该问题的出现,本发明实施例中,可以采用上述(9)和(10)作为Gamma校正函数。
本发明实施例中,可选的,累积分布函数CDF(t)可以采用如下公式计算:
其中,hnew(i)表示将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上后第i个灰度级的的像素数量,T为灰度级的个数。
本发明实施例中,对于灰度比较低的图像,在增强图像暗区域的同时,要防止亮区域的过度增强,采用式(7)进行Gamma校正,对于灰度比较高图像,增强图像暗区域时,图像整体亮度增高,需要进行减弱,采用式(8)对图像进行Gamma校正。
下面对如何从待显示页面中获取图像区域进行说明。
本发明实施例中,待显示页面中的内容可以仅包括图像,也可以同时包括图像和文字,包括图像和文本时,需要将图文进行分离,将图像从整体页面中分割出来。
在本发明的方法应用于电子墨水屏时,电子墨水屏的显示页面通常由图像和文本两部分组成,在针对图像进行显示优化时,需去掉文本信息对页面的干扰。
请参考图3,本发明实施例中,可选的,上述步骤11中,获取待显示页面中的图像区域,包括:
步骤111:获取待显示页面的原始RGB图像;
步骤112:对所述原始RGB图像进行二值化处理,得到二值化图像;
步骤113:确定所述二值化图像上各连通域的面积;
步骤114:获取面积超过第二预设阈值的连通域;
本发明实施例中,可选的,所述第二预设阈值采用如下公式计算:
Picarea=β×A×B
其中,Picarea表示所述第二预设阈值,β表示比例参数,A和B分别表示所述二值化图像的宽和高。
本发明实施例中,可选的,β与二值化图像的尺寸以及文本字体大小有关。
步骤115:根据面积超过所述第二预设阈值的连通域形成图像区域。
在对RGB图像进行二值化处理之后,整个图像可以看成由若干连通域组成,如图4中(a)所示。由于页面中字体普遍较小且规整,故在二值化图像上文本部分的连通域面积普遍较小。本发明实施例中,通过计算二值化图像上连通域的面积,将面积小于一定阈值的连通域进行过滤以去除页面文本信息以及其他噪点的影响,将面积超过第二预设阈值的连通域组成图像区域。
本发明实施例中,可选的,根据面积超过所述第二预设阈值的连通域形成图像区域之后,还包括以下至少一项:
1)对所述图像区域进行膨胀处理;
本发明实施例中,可选的,在进行文本过滤时,通常会误检测到一些图像中的区域,比如图像内部的细节区域和边缘不平整区域,如果直接进行图像提取则会导致图像细节的损失。所以在去除文本等噪声信息之后,需要对剩下的图像区域进行形态学的膨胀处理操作,填补图像中的细小孔洞,保证图像的完整性。
2)对每一个连通域取其最小外接矩形作为其图像区域;
去除文本区域后所剩区域即可粗略的认定为是图像区域。由于某些图像的背景颜色可能与页面的整体颜色相似或一致,这样很难将图像边缘很好的区分出来,导致图像提取不完整的问题。为解决此问题,本发明实施例中,对于页面中的每一个连通域都取其最小外接矩形作为其图像区域,保证了连通域外轮廓的完整性和连续性,优化了提取效果。
3)若两个所述图像区域为包含与被包含的关系,删除被包含的图像区域,保留面积较大的图像区域;
若两个所述图像区域为相交的关系,取所述两个所述图像区域的并集的最小外接矩形作为合并后的图像区域,并删除所述两个所述图像区域。
对于某些内部纹理复杂的图像,在划分连通域时会存在“过分割”的问题,比如将一张图像分成了两部分或者一张图像被分成了一个整体图像和一个局部图像的现象。为了正确的分离出图像,需要对这些区域进行初步的合并,消除冗余区域对图像区域检测造成的影响。
请参考图5,本发明实施例还提供一种图像处理系统50,包括:
区域检测模块51,用于获取待显示页面中的图像区域;
第一获取模块52,用于获取所述图像区域的灰度直方图;
区域划分模块53,用于将所述灰度直方图划分成背景区域和目标区域;
第二获取模块54,用于获取所述背景区域的第一灰度均值和所述目标区域的第二灰度均值;
子直方图划分模块55,用于采用所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为多个子直方图;
直方图均衡化处理模块56,用于对所述多个子直方图分别进行直方图均衡化处理得到增强后的图像区域。
在本发明实施例中,将待显示页面的图像区域进行背景区域和目标区域划分,得到区域特征灰度值,利用区域特征灰度值将图像区域的灰度直方图分割为多个子直方图,并对各个子直方图分别进行直方图均衡化处理,减少了不同区域间灰度的相互影响,可以避免出现过度增强问题,提高了图像的显示对比度,优化了用户体验。
可选的,所述区域划分模块53,用于采用最大类间差法获取所述图像区域的第一分割阈值;采用图像最大熵法获取所述图像区域的第二分割阈值;根据所述第一分割阈值和所述第二分割阈值确定目标分割阈值;采用所述目标分割阈值将所述灰度直方图划分成背景区域和目标区域。
可选的,所述子直方图划分模块55,用于采用所述目标分割阈值、所述第一灰度均值和所述第二灰度均值,将所述灰度直方图划分为四个子直方图。
可选的,所述四个子直方图的灰度区间分别为:[l0,l1]、[l1,T‘]、[T‘,l2]、[l2、l3],其中,l0和l3分别表示所述图像区域的最小灰度值和最大灰度值,l1表示所述第一灰度均值,l2表示所述第二灰度均值,T‘表示所述目标分割阈值。
可选的,所述区域划分模块53,用于采用如下公式确定所述目标分割阈值:
T‘=γ·T1+(1-γ)T2
其中,T‘表示所述目标分割阈值,T
1表示所述第一分割阈值,T
2表示所述第二分割阈值,γ为权重参数,C
0和C
1表示所述灰度直方图经所述第一分割阈值分割得到的第一背景区域和第一目标区域,
和
分别表示第一背景区域和第一目标区域的灰度的方差,D
0和D
1表示所述灰度直方图经所述第二分割阈值分割得到的第二背景区域和第二目标区域,
和
分别表示第二背景区域和第二目标区域的灰度的方差。
可选的,所述直方图均衡化处理模块56,用于针对每个所述子直方图执行以下操作:对所述子直方图进行峰值统计,得到所述子直方图的多个峰值;根据所述多个峰值确定所述子直方图的裁剪峰值;根据所述裁剪峰值对所述子直方图进行裁剪,并将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上,得到增强后的图像区域。
可选的,所述直方图均衡化处理模块56,用于采用如下公式对所述子直方图进行裁剪:
其中,hn(i)表示裁剪后的第i灰度级的像素数量,h(i)表示裁剪前的第i灰度级的像素数量,K表示所述裁剪峰值;
采用如下公式将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上:
其中,K’表示将裁剪出的灰度级的像素数量均匀分布在所述子直方图的每个灰度级上的像素数量,M表示所述子直方图所涉及的灰度级的个数。
可选的,所述图像处理系统50还包括:
伽马校正模块,用于对增强后的图像区域进行伽马校正,得到伽马校正后的图像区域。
可选的,所述伽马校正模块,用于获取所述增强后的图像区域的平均灰度值;若所述平均灰度值未超过第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
若所述平均灰度值超过所述第一预设阈值,采用如下公式对所述增强后的图像区域进行伽马校正:
其中,D(t)表示伽马校正后的图像区域,CDF(t)表示增强后的图像区域的累计分布函数,γ1=0.3+CDF(t),γ2=CDFCDF(t)(t)。
可选的,请参考图6,所述区域检测模块51包括:
文本信息过滤子模块511,用于获取待显示页面的原始RGB图像;对所述原始RGB图像进行二值化处理,得到二值化图像;确定所述二值化图像上各连通域的面积;获取面积超过第二预设阈值的连通域;根据面积超过所述第二预设阈值的连通域形成图像区域。
可选的,所述第二预设阈值采用如下公式计算:
Picarea=β×A×B
其中,Picarea表示所述第二预设阈值,β表示比例参数,A和B分别表示所述二值化图像的宽和高。
可选的,所述区域检测模块51还包括:还包括以下至少一项:
孔洞填补子模块512,用于对所述图像区域进行膨胀处理;
候选区块生成子模块513,用于对每一个连通域取其最小外接矩形作为其图像区域;
图像区域合并子模块514,用于若两个所述图像区域为包含与被包含的关系,删除被包含的图像区域,若两个所述图像区域为相交的关系,取所述两个所述图像区域的并集的最小外接矩形作为合并后的图像区域,并删除所述两个所述图像区域。
请参考图7,本发明实施例还提供一种电子设备70,包括处理器71,存储器72,存储在存储器72上并可在所述处理器71上运行的计算机程序,该计算机程序被处理器71执行时实现上述图像处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述图像处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。