伽马变换的原理以及python实现

引用:https://blog.csdn.net/yangleo1987/article/details/52912560

伽马(gamma)变换:

伽马变换的原理以及python实现

原理:

伽马变换的原理以及python实现

个人理解类似于photoshop中的曲线功能,可以处理单通道图像也可以处理多通道图像,实质上是对各通道的各灰度级进行飞非线性变换,其中A为常数,数值可以自行根据实验效果制定。

 gamma值小于1时,会拉伸图像中灰度级较低的区域,同时会压缩灰度级较高的部分

 gamma值大于1时,会拉伸图像中灰度级较高的区域,同时会压缩灰度级较低的部分

 

python中用opencv实现很简单,主要利用安装第三方开发包scilit-image,window下可以用pip install scilit-image,代码如下:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from skimage import exposure
import cv2

img0=cv2.imread("C:/Users/Administrator/Desktop/20181217183812/20181217183812/00001.jpg")
gamma_img = exposure.adjust_gamma(img0, 0.8)
cv2.imshow("gammaimage",gamma_img)
cv2.waitKey()