基于MATLAB的中值滤波图像去噪
图片去噪是数字图像处理领域的一个常见问题。其中的一种方法是中值滤波(Median Filtering)。它使用一个像素点周围的邻域内所有像素点的中值来代替该像素点的灰度值,从而减少了图像中的噪声。在本文中,我们将介绍如何使用MATLAB实现中值滤波图像去噪,并提供示例代码。
中值滤波的原理
中值滤波是在一个像素点周围的邻域内选取像素点,并将这些像素点的灰度值排序,取其中位数作为该像素点的新灰度值。中值滤波相比于其他方法,如均值滤波、高斯滤波,更加适用于处理脉冲噪声和斑点噪声等噪声类型,因为它可以在保留图像边缘信息的同时有效地去除噪声。
MATLAB实现中值滤波
MATLAB有内置函数medfilt2可用于执行二维中值滤波。以下是使用medfilt2进行中值滤波的示例代码:
% 加载图像
originalImg = imread('lena.png')