使用python实现图像的中值滤波
原理:使用中值滤波对图像进行处理是选定一部分区域(一般3X3,5X5)像素灰度值求取其中值,用求得的中值代替区域内的像素灰度值,以此来达到平滑滤波的效果,因为我们要求中值,所以在选定区域范围是需要注意选择奇数大小范围进行中值计算。
本文参考一位前辈代码修改,前辈的代码实现时将滤波器滤波范围限定化,这样只对图片的一部分区域进行滤波,因此如果如果图片是长图则只有一部分会有滤波效果其他部分则不进行处理。
前辈原文地址:https://blog.csdn.net/baidu_41902768/article/details/94451787
python代码实现:
事先准备好经过椒盐噪声处理的图片:
进行中值滤波处理:
# 中值滤波#
import cv2
import numpy as np
def MedianFilter(img,k=3,padding=None):
imarray=img
height