赞
踩
图像增强目的使得模糊图片变得更加清晰、图片模糊的原因是因为像素灰度差值变化不大,图片各区域产生视觉效果似乎都是一样的, 没有较为突出的地方,看起来不清晰的感觉
解决这个问题的最直接简单办法,放大像素灰度值差值、使图像中的细节更加清晰。
目前较为常用的几个方法:伽马变换、线性变换、分段线性变换、直方图均衡化,对于图像对比度增强,都能取得不错的效果!
本文将对每种方法 简单介绍一下,并借助于 Python 、OpenCV 进行代码实现,提前说一下哈,下面处理的图像对象都是单通道灰度图,不是三通道彩色图!
线性变换的原理是对所有像素值乘上一个扩张因子 ,像素值大的变得越大,像素值小的变得越小,从而达到图像增强的效果,这里利用 Numpy 的数组进行操作;
需要注意的是,像素值最大为255,因此在数组相乘之后需要进行数值截断操作,最终代码如下:
def line_trans_img(img,coffient): if len(img.shape) == 3: img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) out = 2*img #像素截断;;; out[out>255] = 255 out = np.around(out) return out
这里 设置为 2 ,变换结果如下,会看到强光处出现
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。