图像处理-伽玛变换

1、伽玛变换
又叫做幂律变换,伽玛变换是一种图像增强的方法,伽玛变换的表达式 S = C ∗ r γ S = C*r^{\gamma} S=Crγ其中r为输入的灰度值,[0,1],C为灰度缩放系数, γ \gamma γ为伽玛因子大小,S为经过变换以后的灰度值,具体趋势如下图所示。
在这里插入图片描述
图像来源

2、代码实现

def gamma_transformation(image):
    c1 = 5
    c2 = 5
    c3 = 5
    gamma1 = 0.9
    gamma2 = 1.8
    gamma3 = 2.7

    cImage = np.copy(image/255.0)
    GTImage1 = c1 * np.power(cImage,gamma1)
    GTImage2 = c2 * np.power(cImage, gamma2)
    GTImage3 = c3 * np.power(cImage, gamma3)
	#将前两张图水平相连
    img1 = np.hstack([cImage,GTImage1])
    #将后两张图水平相连
    img2 = np.hstack([GTImage2,GTImage3])
    #将img1与img2垂直相连
    img = np.vstack([img1,img2])

    cv.imshow('Result',img)
    cv.waitKey()

3、效果呈现
在这里插入图片描述

4、总结
在伽玛变换中, γ \gamma γ小于1时,能增强图像的亮度,将灰度值较小的像素快速放大,当 γ \gamma γ较大时,将灰度值较大的像素急剧增大,增强图像的对比度。

猜你喜欢

转载自blog.csdn.net/xdg15294969271/article/details/121149622