基于gamma矫正的照片亮度调整(python和opencv实现)

import cv2
import numpy as np

def adjust_gamma(image, gamma=1.0):
    invGamma = 1.0 / gamma
    table = np.array(
        [((i / 255.0) ** invGamma) * 255 for i in np.arange(0, 256)]
    ).astype("uint8")
    return cv2.LUT(image, table)

# 读取图像
original = cv2.imread("test.png", 1)

# gamma矫正
gamma = 1.8 # 矫正系数:越大越亮、越小越暗
adjusted = adjust_gamma(original, gamma=gamma)
cv2.imwrite("result.jpg", adjusted)

矫正前后效果如下:
基于gamma矫正的照片亮度调整(python和opencv实现)_第1张图片
基于gamma矫正的照片亮度调整(python和opencv实现)_第2张图片

你可能感兴趣的:(单独的博客资料,python,opencv,gamma矫正,亮度调整,曝光调整)