技术领域
[0001] 本申请涉及视频信号处理技术领域,尤其涉及一种基于分块的对比度增强方法和系统。
相关背景技术
[0002] 现有对比度增强方案一般包括基于直方图增强的对比度增强方法、基于非线性对比度拉伸的方法、基于数学变换的对比度增强等。此类方法在增强对比度的过程中会增强噪声,且对于图像局部细节的对比度没有很好的提升。
具体实施方式
[0016] 下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0017] 本申请的权利要求书和说明书的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式,此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他单元。
[0018] 实施例1
[0019] 一种基于分块的对比度增强方法,参考图1,包括以下步骤:步骤一,对输入图像做归一化处理,得到图像均值;根据图像均值对图像做S型曲线变换,S型曲线的转折点根据1减图像均值确定;将低于图像均值的暗区均值作为亮区压制参数,将高于图像均值的亮区均值作为图像暗区提亮参数,根据转折点和亮区压制参数、暗区提亮参数输出S型曲线图像作为第一输出图像。
[0020] 步骤二,对图像I进行gamma运算,输出第二输出图像。
[0021] 步骤三,分别将第一输出图像和第二输出图像做相同的分块处理,计算第二输出图像的块内标准差均值作,预设有第一参照值,比较块内标准差均值和第一参照值的大小判断细节区域和平坦区域,分别对细节区域和平坦区域做均值滤波,细节区域的滤波窗口大于平坦区域的滤波窗口;根据均值滤波后的图像和第一输出图像的关系对第一输出图像做局部对比度增强处理。需要说明的是,本申请中提出的局部对比度增强并非仅对细节区域做对比度增强,而是适应性的根据区分出的平坦区域和细节区域做不同程度的增强处理。
[0022] S型曲线变换的具体方式包括:S型曲线的转折点根据1减图像均值确定,如公式1T=1‑meanI 公式1例如本申请为亮度数据,根据不同的输入图像数据计算的图像均值各不相同,示
例性的当图像均值为0.35,则T=1‑0.35,得到T的值为0.65。
[0023] 亮区压制参数和暗区提亮参数的计算如公式2和公式3:adark=sumd/countd I≤meanI 公式2
alight=suml/countl I>meanI 公式3
其中,meanI表示输入图像归一化后的均值,I是对输入图像归一化后的图像(本文称“图像I”),T表示转折点;adark表示暗区提亮参数,sumd表示低于输入图像均值的暗区像素值之和,countd表示低于输入图像均值的暗区像素点个数;alight表示亮区压制参数,sumd表示高于输入图像均值的亮区像素值之和,countd表示高于输入图像均值的亮区像素点个数。
[0024] 进一步的,根据转折点和亮区压制参数、暗区提亮参数输出S型曲线图像作为第一输出图像的方法,具体包括:若像素值小于等于转折点,采用亮区压制参数做增强;若像素值大于转折点,采用暗区提亮参数做增强;遍历所有像素点并做对应增强后输出第二输出图像,具体计算方式如公式4。
[0025]
[0026] 其中,Sout表示输出S型曲线图像。将低于图像均值的暗区均值作为亮区压制参数,将高于图像均值的亮区均值作为图像暗区提亮参数。本实施例公开的该方法能有效避免暗区参数设置过高导致图像发蒙,或者亮区参数过低对图像没有压制效果,有效平衡了图像的动态范围。本实施例公开的方法通过输入图像均值对图像进行动态范围调整,提高了动态范围增强的自适应性。
[0027] 图2展示了不同转折点,不同增强参数的S型曲线,其中“‑‑‑”曲线的转折点是0.4;“•••”曲线的转折点是0.5;“‑·‑·”曲线的转折点是0.6,“—”表示x=y的直线。横坐标X(m)是输入图像的灰度级值,纵坐标Y(m)是输出图像的灰度级值。
[0028] 从图中可以看到不同转折点以及不同增强参数对输出图像的影响,当输入图像过暗时,转折点的值越高,暗区提亮越多,增强参数越大,图像提亮暗区以及抑制亮区的程度越强。当输入图像为较亮图像时,转折点的值越小,对图像的亮区的压制越强。本实施例公开一种根据不同输入图像得到不同的转折点以及增强参数的方法,极大提高了S型曲线的自适应性。
[0029] 步骤二,对图像I进行gamma运算,输出第二输出图像的方法,具体包括:选择不同的gamma参数对图像进行多次gamma运算,计算每次gamma运算后的标准
差;
若图像均值大于128,根据gamma参数越大,计算的标准差权重越高的原则做加权
处理;若图像均值小于等于128,根据gamma参数越小,计算的标准差权重越高原则做加权处理。
[0030] 示例性的,选择做三次gamma运算,采用0.5,1,1.5三组gamma参数,如公式5所示,根据公式6计算每次gamma运算后的标准差,根据图像均值对标准差进行加权。
[0031] xm=In(m=1,2,3 n=0.5,1,1.5)公式5
[0032] 其中,xm表示多尺度gamma变换,stdgm表示计算xm后的局部标准差。若图像均值高于128,gamma参数越大的标准差权重越高;若图像均值低于128,gamma参数越小的标准差权重越高,避免图像过亮过暗损失图像细节,具体公式如下公式7。
[0033]
[0034] 采用对图像I进行多尺度gamma变换,主要是由于图像I中的细节信息相较sout(S曲线增强后的图像)的细节信息会更加稳定,减少步骤一处理后的亮度变化对标准差的影响。
[0035] 其他需要说明的是,128是归一化输入图像的0.5值,以该值作为判断输入图像的原始亮度,256为输入图像的最大值。
[0036] 其中设置权重为0.5,0.3,0.2的原因是:当原始输入图像的均值meanI<=128,表明图像亮度不高,会损失局部暗区细节,因此选用gamma参数(n<1)的值作为0.5的权重;(n=1)0.3的权重是保证图像原图中细节不丢失;(n>1)0.2的权重是保证亮区细节不丢失。当原始输入图像的均值meanI>128时,表明图像原始输入图像亮度较高,为了保证亮区细节信息,因此选stdg3作为较高的权重。
[0037] 也可以有别的选择,如0.3,0.3,0.4;0.2,0.4,0.4,在选择参数时,需要保证当mean(I)<=128时,stdg1>=stdg2>=stdg3的权重设置;当mean(I)>128时,stdg1<=stdg2<=stdg3。mean(I)表示计算所有像素值的平均数,meanI表示图像均值。
[0038] 步骤三,具体实施如下:其中,分别将第一输出图像和第二输出图像做相同的分块处理,示例性的,本实施例中,将图像分为16×16的块。其他包括32×32或64×64也可以作为选择,随着窗口的变大,其对比度增强程度也会变高,根据需求进行选择。
[0039] 其中,根据判断出的细节区域和平坦区域分别对第一输出图像的对应区域作不同程度的增强的方法,具体包括:对细节区域做n×n的均值滤波,对平坦区域做m×m的均值滤波,其中,n大于m。
[0040] 示例性的,本实施例采用5×5滤波窗口和3×3滤波窗口,第一参照值(阈值)预设为5,5的数值通过多次实验获得,当该16×16标准差图像的均值大于阈值5时,对细节和噪声区分更为准确。
[0041] 根据上述参数,具体的判断和处理方法,包括:计算16×16的块内标准差均值,当块内标准差均值大于阈值5,判断该块区域为细节区域,对该块区域进行5×5滤波窗口的均值滤波;当块内标准差均值小于等于阈值5时,判断该块区域为平坦区域,对该块区域进行3×3滤波窗口的均值滤波,滤波窗口取值越大,细节增强程度越高。
[0042] 作为一种优选方案,根据判断的细节区域和平坦区域分别对第一输出图像的对应数据作不同程度的增强之后,还包括步骤:将均值滤波后的图像做高斯滤波处理。目的是为了去除上述方法中大小不同滤波窗口带来的块效应,对输出的图像再次进行高斯滤波。
[0043] 进一步根据高斯滤波后的图像和第一输出图像的关系对第一输出图像做局部对比度增强处理的方法,具体为采用下述公式8增强图像对比度:
[0044] 其中,yout表示第一输出图像的分块图像(即Sout进行16×16分块后的图像);filter表示高斯滤波后图像;α表示对比度增强系数,α越大,对比度增强程度越高;imgout表示输出对比度增强图像。
[0045] 对比度增强趋势如图3所示,x是Sout的值,y轴是imgout的值;正方形标注线条表示x=y,当sout>filter时,filter/sout<1,则可知(filter/sout)^α处于0‑1之间,sout^(filter/sout)^α始终在x=y曲线的上方,由于filter/sout<1,因此α越小,(filter/sout)^α越大,输出结果越接近x=y,即α越小越接近x=y,如三角形标注线和圆形标注线所示。
[0046] 当sout<=filter时,filter/sout>=1,(filter/sout)^α总是>1,则可知sout^(filter/sout)^α始终在x=y曲线的下方,且随着α变小越接近x=y,输出结果如五边形标注线和平行四边形标注线所示。由此随着filter/sout的变化可以增加图像的像素差,达到增强图像局部对比度的效果。^为上标符号。
[0047] 上文中,对于平坦区域,优选采用最小窗口的均值滤波(3×3窗口滤波),则filter/Sout值的起伏变化有限,能有效减弱平坦区的对比度增强程度,能有效抑制平坦区域噪声的过度增强;对于细节边缘区域,采用窗口更大的滤波,使filter/Sout有更大起伏变化,能有效保证细节区域对比度的提高。其他说明,对于细节边缘区域,上述公开的对16×16小块可以选择做5×5以上15×15以下的滤波。
[0048] 实施例2:一种基于分块的局部对比度增强系统,包括以下结构:
S型曲线变换单元,用于根据输入图像均值对图像做S型曲线变换,S型曲线的转折点根据1减图像均值确定;将低于图像均值的暗区均值作为亮区压制参数,将高于图像均值的亮区均值作为图像暗区提亮参数,根据转折点和输出S型曲线图像作为第一输出图像;
伽马运算单元,用于对图像进行gamma运算,输出第二输出图像;
分块增强单元,分别将第一输出图像和第二输出图像做相同的分块处理,计算第
二输出图像的块内标准差均值作为评价指标参数,预设有第一参照值,比较块内标准差均值和第一参照值的大小判断细节区域和平坦区域,分别对细节区域和平坦区域做均值滤波,细节区域的滤波窗口大于平坦区域的滤波窗口;根据均值滤波后的图像和第一输出图像的关系对第一输出图像做局部对比度增强处理。
[0049] 还包括高斯滤波单元,用于将均值滤波后的图像做高斯滤波处理。其中,分块增强单元包括局部对比度增强单元,用于根据高斯滤波后的图像和第一输出图像的关系对第一输出图像做局部对比度增强处理:
[0050] 其中,yout表示分块均值滤波后的图像;filter表示高斯滤波后的图像;α表示对比度增强系数,α越大,对比度增强程度越高;imgout表示输出对比度增强图像。
[0051] 优选的,伽马运算单元包括多次运算单元和加权处理单元,其中多次运算单元,用于选择不同的gamma参数对图像进行多次gamma运算,计算每次
gamma运算后的标准差;
加权处理单元,用于实施:若图像均值大于128,根据gamma参数越大,计算的标准差权重越高的原则做加权处理;若图像均值小于等于128,根据gamma参数越小,计算的标准差权重越高原则做加权处理。
[0052] 进一步又公开一种计算机存储介质,其存储有计算机程序,计算机程序被调用实现如实施例1公开的一种基于分块的局部对比度增强方法。
[0053] 进一步又公开一种计算机设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序,其中,所述一条或多条计算机程序被所述处理器执行以实现如实施例1公开的一种基于分块的局部对比度增强方法。
[0054] 示例性的,所述的计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器中,并由处理器执行,并由输入接口和输出接口完成数据的I/O接口传输,以完成本发明,一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机设备中的执行过程。
[0055] 计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,存储器、处理器,本领域技术人员可以理解,本实施例仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入器、网络接入设备、总线等。
[0056] 处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0057] 存储器可以是计算机设备的内部存储单元,例如计算机设备的硬盘或内存。存储器也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等,进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备,存储器用于存储计算机程序以及计算机设备所需的其他程序和数据,存储器还可以用于暂时地存储在输出器,而前述的存储介质包括U盘、移动硬盘、只读存储器ROM、随机存储器RAM、碟盘或光盘等各种可以存储程序代码的介质。
[0058] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。所述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。