Python 实现中值滤波、均值滤波的方法


Posted in Python onJanuary 09, 2019

红包:

Python 实现中值滤波、均值滤波的方法

Lena椒盐噪声图片:

Python 实现中值滤波、均值滤波的方法

# -*- coding: utf-8 -*-
"""
Created on Sat Oct 14 22:16:47 2017

@author: Don
"""

from tkinter import *
from skimage import io
import numpy as np


im=io.imread('lena_sp.jpg', as_grey=True)
im_copy_med = io.imread('lena_sp.jpg', as_grey=True)
im_copy_mea = io.imread('lena_sp.jpg', as_grey=True)
#io.imshow(im)
for i in range(0,im.shape[0]):
 for j in range(0,im.shape[1]):
  im_copy_med[i][j]=im[i][j]
  im_copy_mea[i][j]=im[i][j]
#ui
root = Tk()
root.title("lena")
root.geometry('300x200')

medL = Label(root, text="中值滤波:")
medL.pack()
med_text = StringVar()
med = Entry(root, textvariable = med_text)
med_text.set("")
med.pack()

meaL = Label(root, text="均值滤波:")
meaL.pack()
mea_text = StringVar()
mea = Entry(root, textvariable = mea_text)
mea_text.set("")
mea.pack()

def m_filter(x, y, step):
 sum_s=[]
 for k in range(-int(step/2),int(step/2)+1):
  for m in range(-int(step/2),int(step/2)+1):
   sum_s.append(im[x+k][y+m])
 sum_s.sort()
 return sum_s[(int(step*step/2)+1)]

def mean_filter(x, y, step):
 sum_s = 0
 for k in range(-int(step/2),int(step/2)+1):
  for m in range(-int(step/2),int(step/2)+1):
   sum_s += im[x+k][y+m] / (step*step)
 return sum_s

def on_click():
 if(med_text):
  medStep = int(med_text.get())
  for i in range(int(medStep/2),im.shape[0]-int(medStep/2)):
   for j in range(int(medStep/2),im.shape[1]-int(medStep/2)):
    im_copy_med[i][j] = m_filter(i, j, medStep)
 if(mea_text):
  meaStep = int(mea_text.get())
  for i in range(int(meaStep/2),im.shape[0]-int(meaStep/2)):
   for j in range(int(meaStep/2),im.shape[1]-int(meaStep/2)):
    im_copy_mea[i][j] = mean_filter(i, j, meaStep)
 io.imshow(im_copy_med)
 io.imsave(str(medStep) + 'med.jpg', im_copy_med)
 io.imshow(im_copy_mea)
 io.imsave(str(meaStep) + 'mea.jpg', im_copy_mea)

Button(root, text="filterGo", command = on_click).pack()

root.mainloop()

运行结果截图:

Python 实现中值滤波、均值滤波的方法

以上这篇Python 实现中值滤波、均值滤波的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
研究Python的ORM框架中的SQLAlchemy库的映射关系
Apr 25 Python
python3序列化与反序列化用法实例
May 26 Python
Python实现堆排序的方法详解
May 03 Python
Python解决走迷宫问题算法示例
Jul 27 Python
Python操作mongodb数据库的方法详解
Dec 08 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
Apr 01 Python
python实现动态创建类的方法分析
Jun 25 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
Aug 27 Python
python 通过邮件控制实现远程控制电脑操作
Mar 16 Python
Python web如何在IIS发布应用过程解析
May 27 Python
对python中list的五种查找方法说明
Jul 13 Python
Python中的程序流程控制语句
Feb 24 Python
对Python信号处理模块signal详解
Jan 09 #Python
使用python实现语音文件的特征提取方法
Jan 09 #Python
对python中Librosa的mfcc步骤详解
Jan 09 #Python
Python中的枚举类型示例介绍
Jan 09 #Python
利用python提取wav文件的mfcc方法
Jan 09 #Python
Python Matplotlib库安装与基本作图示例
Jan 09 #Python
对Python使用mfcc的两种方式详解
Jan 09 #Python
You might like
php笔记之:php数组相关函数的使用
2013/04/26 PHP
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
jquery png 透明解决方案(推荐)
2010/08/21 Javascript
javascript控制swfObject应用介绍
2012/11/29 Javascript
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
jQuery on()方法使用技巧详解
2015/04/16 Javascript
jQuery实现区域打印功能代码详解
2016/06/17 Javascript
JS中parseInt()和map()用法分析
2016/12/16 Javascript
深入理解Node module模块
2018/03/26 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
2019/05/03 Javascript
React如何实现浏览器打印部分内容详析
2019/05/19 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
[41:37]DOTA2北京网鱼队选拔赛——冲击职业之路
2015/04/13 DOTA
Python Mysql自动备份脚本
2008/07/14 Python
详解字典树Trie结构及其Python代码实现
2016/06/03 Python
Python切片工具pillow用法示例
2018/03/30 Python
pyQt5实时刷新界面的示例
2019/06/25 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
2020/09/21 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
html5手机键盘弹出收起的处理
2020/01/20 HTML / CSS
使用HTML和CSS实现的标签云效果(附demo)
2021/02/03 HTML / CSS
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
提高EJB性能都有哪些技巧
2012/03/25 面试题
应届生船舶驾驶求职信
2013/10/19 职场文书
管理部部长岗位职责
2013/12/05 职场文书
办公室前台岗位职责
2014/01/04 职场文书
求职面试个人自我评价
2014/02/28 职场文书
C++程序员求职信范文
2014/04/14 职场文书
公司开业庆典策划方案
2014/06/04 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
大学迎新生欢迎词
2015/09/29 职场文书