图像预处理 && C实现

之前用到的一些预处理整理,主要是图像增强和滤波算法。
代码地址:https://github.com/WangLCG/Image_Process/tree/master/Image_enhance

1、直方图均衡化

调整图像的灰度分布使其能在0-255范围内分布更均衡,可用于提高图像的对比度,适用于对比度较低的图片,能增加图片的细节。
处理对比:
这里写图片描述

2、伽马矫正

主要用于将图片中灰度过高或过低部分进行修正,既是增强低灰度和高灰度值部分的细节, 能增强对比度。
公式为: dst = ( src )^gamma
gamma值以1为界,值越小,对图像低灰度部分的扩展作用越强; 值越大,对图像高灰度部分的扩展作用越强。伽马矫正对图像对比度偏低并且整体亮度偏高(过曝)情况下的图片增强效果明显。
伽马曲线:
这里写图片描述
gamma= 1.8:
这里写图片描述

3、拉普拉斯锐化

强调图片的边缘和细节,但同时会把噪声也增强(改进为LOG算子 –> DOG算子)。
原理:当领域中心像素灰度低于它所在领域内的其他像素的平均灰度,此中心像素的灰度并进一步降低,当领域中心像素灰度高于他所在的领域内其它像素的平均灰度,此中心像素的灰度被进一步提高,由此实现图片锐化。
这里写图片描述

4、白平衡(灰度世界法)

不同色温光源下图片中物体会出现颜色的偏差,以白色物体为参考进行颜色校正,故有白平衡这一说。
这里写图片描述

5、高斯滤波

线性平滑滤波,适用于消除高斯噪声,相对于均值滤波它的平滑效果更柔和而且边缘能较好的保留下来。
高斯滤波后图像被平滑的程度取决于高斯和的标准差,标准差越小,平滑效果越不明显
这里写图片描述

6、盒式滤波(Opencv中的均值滤波就是盒式方法实现的)

一种线性滤波技术,它的实现借鉴了积分图的原理。其关键步骤是初始化保存领域内像素值之和的数组S,在求解某领域内的像素值和时,只要索引输出图片中对应区域的位置即可。
盒式滤波可以使复杂度为O(MN)的求和,求方差等运算降低到O(1)或接近O(1),缺点是不支持多尺度。
盒式滤波在去除噪点的同时会去除很多细节部分,将图像变得模糊。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/FPGATOM/article/details/82531531