首页 > 解决方案 > python中的伽玛校正

问题描述

伽玛校正是一种简单而优雅的算法来改变图像亮度。
公式是:

但不幸的是这个算法在opencv中没有实现。
那么在python中最简单的方法是如何做到的呢?

标签: pythonnumpyopencvimage-processingopencv-python

解决方案


使用 LUT 对开放 CV 进行 Gamma 校正:

# import the necessary packages
from __future__ import print_function
import numpy as np
import argparse
import cv2
def adjust_gamma(image, gamma=1.0):
    # build a lookup table mapping the pixel values [0, 255] to
    # their adjusted gamma values
    invGamma = 1.0 / gamma
    table = np.array([((i / 255.0) ** invGamma) * 255
        for i in np.arange(0, 256)]).astype("uint8")
    # apply gamma correction using the lookup table
    return cv2.LUT(image, table)

资源


推荐阅读