python OpenCV 中值滤波

6 min read

**图像膨胀是一种图像处理技术,它通过扩大图像中的白色像素来增强图像中的白色区域。**它通常被用来填补图像中的空洞,使图像中的对象变得更加连续。

在这段代码中,膨胀操作可能是为了使图像中的白色区域更加明显,从而更容易计算差值。膨胀操作的卷积核大小为 7x7,这意味着每个像素周围的 7x7 个像素都会被计算在内,从而使得图像中的白色区域变得更大。

**中值滤波是一种图像处理技术,它通过对图像进行卷积来对图像进行平滑处理。**它的原理是将图像中每个像素周围的像素值取中值,并将中值赋给该像素。

中值滤波的卷积核通常是正方形的,其大小可以由用户自定义。比如,在这段代码中,中值滤波的卷积核大小为 21x21。

中值滤波的优点是能够有效地消除图像中的噪声,同时保留图像的细节。它常常被用来处理摄像头拍摄的图像,因为摄像头拍摄的图像往往会有较多的噪声。

卷积核(也称为滤波器)是一种用于图像处理的矩阵。它的作用是对图像进行卷积运算,从而实现对图像进行各种处理的效果。

卷积核的大小通常是正方形的,例如 3x3、5x5 等。卷积核的每个元素叫做权值,每个权值都有一个对应的位置,叫做核位。卷积核中心的核位叫做中心核位,卷积核的其他核位叫做边缘核位。

在卷积运算中,卷积核会按照一定的步长在图像上滑动,并与图像上的每个像素做卷积运算。卷积运算的结果会被赋值给图像上对应的像素,从而得到处理后的图像。

卷积核的选择会对图像处理的效果产生很大影响。不同的卷积核可以实现不同的图像处理效果,例如模糊、锐化、边缘提取等。

对图像进行卷积运算的过程大致如下:

  1. 定义卷积核。卷积核是一个矩阵,用于描述图像处理的方式。卷积核的大小通常是正方形的,例如 3x3、5x5 等。卷积核的每个元素叫做权值,每个权值都有一个对应的位置,叫做核位。卷积核中心的核位叫做中心核位,卷积核的其他核位叫做边缘核位。
  2. 对图像进行扩展。由于卷积核的大小通常比图像小,因此在对图像进行卷积运算时,图像通常需要进行扩展。扩展的方式有很多种,例如复制边缘像素、补零等。扩展的目的是为了使图像的边缘像素也能参与卷积运算。
  3. 对图像进行卷积运算。卷积运算的过程是,将卷积核按照一定的步长在图像上滑动,并与图像上的每个像素做卷积运算。卷积运算的具体方式是,将卷积核中的每个权值与图像上对应的像素值相乘,再将所有乘积的和记为卷积运算的结果。卷积运算的结果会被赋值给图像上对应的像素