伽马变换-图像增强 OpenCV

变换形式

  • s=cr^{^{\gamma }}

可通过调整\gamma来调整该变换,最常用于伽马校正对比度增强

Gamma 校正对于在屏幕上正确显示图像非常重要,以防止从具有不同显示设置的不同类型的显示器观看时图像变白或变暗。这样做是因为我们的眼睛以伽马曲线感知图像,而相机以线性方式捕捉图像。下面是应用伽马校正的 Python 代码:

原图:

分别设置gamm值为0.1,0.5, 1.5, 2.0进行伽马变换:

import cv2
import numpy as np

# Open the image.
img = cv2.imread('e.bmp')

# Trying 4 gamma values.
for gamma in [0.1, 0.5, 1.5, 2.0]:
    # Apply gamma correction.
    gamma_corrected = np.array(255 * (img / 255) ** gamma, dtype='uint8')

    # Save edited images.
    cv2.imwrite('gamma_transformed' + str(gamma) + '.jpg', gamma_corrected)

gamm值为0.1:

gamm值为0.5:

gamm值为1.5:

gamm值为2.0:

 

从输出图像可以得出:

gamma>1,像素强度降低,即图像变暗。

gamma<1,像素强度增加,即图像变亮。

猜你喜欢

转载自blog.csdn.net/candice5566/article/details/119993157