简单的图像处理算法

发布于:2024-04-29 ⋅ 阅读:(36) ⋅ 点赞:(0)

本笔记参考crazy_Bingo

基础:

图像处理都是用卷积矩阵对图像卷积计算,如3X3 的矩阵对640 X 480分辨率的图像卷积,最终会得到638 X 478 的图像。卷积过程是这样的:

一、中值滤波 : 找出矩阵中的最中间值作为像素点

中值滤波后的图像相对暗了一点,因为最大值被舍去了。但相对于均值滤波而言,中值滤波
在滤除噪声的基础上,有效的保存了细节

二、均值滤波:找出矩阵中的平均值作为像素点  

丧失了部分细 节,图像变得模糊了。滤除了部分噪声的同步,缺失了更多的细节,
中值滤波算法与均值滤波非常的相似,但滤波的效果却有很大的差别,区别如下:
均值滤波相当于低通滤波,有将图像模糊化的趋势,对椒盐噪声基本无能力。
中值滤波的可以很好的过滤椒盐噪声,缺点是容易造成图像的不连续

三、腐蚀运算

腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体,
腐蚀的算法:用3x3的结构元素,扫描图像的每一个像素,用结构元素与其覆盖的二值图像做“与”操作如果都为1,结果图像的该像素为1。否则为0。结果:使二值图像减小一圈,

粗略的说,腐蚀可以使目标区域范围“变小”,其实质造成图像的边界收缩,可以用来消除小且无意义的目标物。 

E(X)={a| Ba X}=X B

该式子表示用结构B腐蚀A,需要注意的是B中需要定义一个原点,【而B的移动的过程与卷积核移动的过程一致,同卷积核与图像有重叠之后再计算一样】当B的原点平移到图像A的像元(x,y)时,如果B在(x,y)处,完全被包含在图像A重叠的区域,(也就是B中为1的元素位置上对应的A图像值全部也为1)则将输出图像对应的像元(x,y)赋值为1,否则赋值为0。

演示图:

实质上在实现的过程中没有结构元素,而是扫描矩阵的与运算

四、膨胀运算

膨胀会使目标区域范围“变大”,将于目标区域接触的背景点合并到该目标物中,使目标边界向外部扩张。作用就是可以用来填补目标区域中某些空洞以及消除包含在目标区域中的小颗粒噪声

五、高斯运算

高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程

通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到

高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。

对应均值滤波和方框滤波来说,其邻域内每个像素的权重是相等的。而在高斯滤波中,会将中心点的权重值加大,远离中心点的权重值减小,在此基础上计算邻域内各个像素值不同权重的和。

常用卷积核

运算过程:

  

六、对比度增强

对比度增强是图像增强中常用的技术之一,旨在增强图像中不同物体和区域之间的差异,使其更具视觉效果和可识别性。通过调整图像的亮度范围,对比度增强可以使图像中的暗部更加暗,亮部更加亮,从而提高图像的动态范围和视觉效果

下面列出了实现对比度增强的一些常见方法:

1、直方图均衡化:直方图均衡化是一种通过重新分配图像像素值来扩展图像亮度范围的方法。该方法通过增加像素值的频率来拉伸直方图,使得整个亮度范围得到充分利用,从而增强对比度。

2、自适应直方图均衡化:自适应直方图均衡化是对比度增强的改进方法,它将图像分成小的块,然后对每个块进行直方图均衡化。这样可以避免在均衡化过程中产生过度增强的噪声,并且能够在局部区域中保留更多的细节。


3、对比度拉伸:对比度拉伸是通过线性映射将图像像素值映射到更广的亮度范围来增强对比度。它可以通过调整图像的最小和最大亮度值来实现。这种方法简单易懂,但可能会导致细节的丢失。

4、非线性对比度增强:非线性对比度增强方法根据像素值的分布特征对图像进行调整。常见的方法包括伽马校正、对数变换和指数变换等。这些方法通过非线性变换可以更灵活地调整图像的对比度

简单来说,一般只是将像素值进行线性分配,(可以通过 查找表的方法)如下:

横坐标为像素值0-255,蓝色线为更改后的像素值大小(对应纵坐标)

七、gama矫正

蓝色为原像素值,灰色为gama矫正后的像素值

伽马校正:

伽马校正可以用来调整图像的亮度,公式为 I = I^gamma。

当gamma>1,高光部分动态范围被压缩,低光部分动态范围被扩展(使低光部分的细节可以看清),图像整体变暗;

当gamma<1,高光部分被扩展,低光部分被压缩,图像整体变亮。