【图像处理】对灰度图进行中值滤波

 时间:2024-10-19 14:32:45

本文,给出如下的RGB图片。目的是,以此为例,介绍中值滤波的实现方法。用到的工具是Python。

【图像处理】对灰度图进行中值滤波

工具/原料

电脑

python

方法/步骤

1、把图片读为灰度图:img=cv2.imread('0.jpg',0)cv2.imwrite('00.png',img)

【图像处理】对灰度图进行中值滤波

2、给img加边框,上下左右各增加10个像素。pic=np.zeros((u+20,v+20))pic[10:u+10,10:v+10]=img

【图像处理】对灰度图进行中值滤波

3、给出pic一个21*21的窗口:pic[10:31,10:31]

【图像处理】对灰度图进行中值滤波

4、pic[10:31,10:31]里声矜檠鹣面有21*21个像素。这也是一个21*21的矩阵,我们可以把它展开称为一个向量,并且把元素从小到大排坐逃缥卯列起来:window=pic[10:31,10:31]vector=np.reshape(window,(1,-1))[0]pailie=sorted(vector)

【图像处理】对灰度图进行中值滤波

5、用中间的数值,来代替相应像素的值:foriinrange(u):for门钙蹲茌jinrange(v):臃扮哀坷window=pic[i:i+21,j:j+21]vector=np.reshape(window,(1,-1))[0]pailie=sorted(vector)img[i,j]=pailie[220]这就是中值滤波,时间可能比较长。

【图像处理】对灰度图进行中值滤波

6、最后,得到如下图片。

【图像处理】对灰度图进行中值滤波

7、包装函数zzlb,并测试3*3大小的窗口的中值滤波效果。

【图像处理】对灰度图进行中值滤波

【图像处理】对灰度图进行中值滤波

光电效应为什么调零电流表 怎么用Matlab求方程? matlab如何svm实现图像分类输出像素点 如何在matlab中通过划滑块并显示其值? matlab7.0如何读取mat格式
热门搜索
美女邪恶漫画 蟋蟀的图片 千里香图片 短发图片女2020最新款 小太阳图片