设图像的灰度值范围被归一化到[0, 1]范围之内,基于全局亮度的双伽马调整函数(Bilateral Gamma Adjustment, BiGA)的图像增强方法该函数由 2个伽马函数Ga 和Gb 融合而成,其数学表达式如下:
G a ( x ) = x 1 / r (1) G_a(x) = x^{1/r} \tag{1} Ga(x)=x1/r(1)
G b ( x ) = 1 − ( 1 − x ) 1 / r (2) G_b(x)=1-(1-x)^{1/r} \tag{2} Gb(x)=1−(1−x)1/r(2)
G ( x ) = α G a ( x ) + ( 1 − α ) G b ( x ) (3) G(x) = \alpha G_a(x) + (1-\alpha)G_b(x) \tag{3} G(x)=αGa(x)+(1−α)Gb(x)(3)
式中 x x x 是输入图像的灰度值, r r r 是可调节变量,用以调整图像增强程度,一般取 r = 2.5 r =2.5 r=2.5, α \alpha α 是调节参数,取值范围为[0, 1]。 G a ( x ) G_a(x) Ga(x) 是一个凸函数, G b ( x ) G_b(x) Gb(x)用于增强暗区域。 是一个凹函数,用于抑制图像的亮区域。最终 BiGA 增强算法的调整函数 G ( x ) G(x) G(x)是由 G a ( x ) G_a(x) Ga(x)和 G b ( x ) G_b(x) Gb(x) 取加权得到的。
使用 BiGA 对图像进行校正之前,首先利用式(4)进行归一化理,然后利用式(5)进行双伽马函数校正图像,最后,采用式(6)将其取值范围调整到[0,255]之间。
I 1 ( x , y ) = I ( x , y ) / 256 (4) I_1(x,y) = I(x,y)/256 \tag{4} I1(x,y)=I(x,y)/256(4)
I 2 ( x , y ) = G ( I 1 ( x , y ) ) (5) I_2(x,y)=G(I_1(x,y)) \tag{5} I2(x,y)=G(I1(x,y))(5)
I ( x , y ) = I 2 ( x , y ) ∗ 256 (6) I(x,y) = I_2(x,y)*256 \tag{6} I(x,y)=I2(x,y)∗256(6)
麻雀搜索算法具体原理请参照:https://blog.csdn.net/u011835903/article/details/108830958。
本文评价函数设计如下:
f i t n e s s = α 1 ∗ H + α 2 ∗ S + α 3 ∗ l o g ( S t v ) (7) fitness = \alpha_1*H + \alpha_2*S + \alpha_3*log(Stv) \tag{7} fitness=α1∗H+α2∗S+α3∗log(Stv)(7)
其中 α 1 , α 2 , α 3 \alpha_1,\alpha_2,\alpha_3 α1,α2,α3为常数,代表目标函数的相对重要性。本文将熵值、边缘内容和灰度标准方差等同取值,即 α 1 = α 2 = α 3 = 1 / 3 \alpha_1 = \alpha_2 =\alpha_3 = 1/3 α1=α2=α3=1/3.
式(7)中 H H H 代表测试图像的熵值,图像的熵值越大,代表图像所含的信息量越大,细节越丰富。
H = − ∑ i = 0 255 p ( i ) l o g 2 ( p ( i ) ) (8) H = -\sum_{i=0}^{255}p(i)log_2(p(i)) \tag{8} H=−i=0∑255p(i)log2(p(i))(8)
其中 p ( i ) p(i) p(i)某个灰度值( i i i)在该图像中出现的概率。
式(7)中 S S S 代表由 s o b e l sobel sobel 边缘检测算子计算的测试图像的边缘内容,其值越大,代表测试图像包含的边缘信息越多,图像对比度越好。其定义式如下:
S = n _ e d g e s ( E ) T (9) S = \frac{n\_edges(E)}{T} \tag{9} S=Tn_edges(E)(9)
n _ e d g e s ( E ) n\_edges(E) n_edges(E)表示由 sobel边缘检测算子检测到的增强图像中的边缘像素的数量, T T T 是增强图像中的像素总数。
式(7)中 S t v Stv Stv 为测试图像的灰度标准方差,一般情况下, S t v Stv Stv 值越大,所测图像的对比度就越好,越适合人眼观察。
所以对于麻雀搜索算法,寻优即寻找使得 f i t n e s s fitness fitness最大,转换成寻最小值,即 − f i t n e s s -fitness −fitness最小。
麻雀搜索算法参数设定如下:
%设定麻雀算法参数
SearchAgents_no=30; % 种群数量
Max_iteration=50; % 设定最大迭代次数
lb = 0; %下边界
ub = 1; %上边界
dim = 1; %1维度即alpha参数
fobj = @(X) fun(I,X);%适应度函数
收敛曲线:
[1]刘金华. 基于元启发式算法的低照度图像增强研究[D].郑州轻工业大学,2020.
[2] Sazzad T S, Hasan M Z, Mohammed F, et al. Gamma encoding on image processing considering human visualization, analysis and comparison[J]. International Journal on Computer Science and Engineering, 2012, 4(12): 1868.
https://mianbaoduo.com/o/bread/aZmZmJY=