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 相关文章推荐
linux系统使用python监控apache服务器进程脚本分享
Jan 15 Python
Win10下Python环境搭建与配置教程
Nov 18 Python
python实现FTP服务器服务的方法
Apr 11 Python
详解python中的hashlib模块的使用
Apr 22 Python
简单了解python协程的相关知识
Aug 31 Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 Python
django自定义非主键自增字段类型详解(auto increment field)
Mar 30 Python
利用Python实现某OA系统的自动定位功能
May 27 Python
Keras load_model 导入错误的解决方式
Jun 09 Python
Python面向对象实现方法总结
Aug 12 Python
Python如何读写CSV文件
Aug 13 Python
Python字典的基础操作
Nov 01 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将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
CI框架入门示例之数据库取数据完整实现方法
2014/11/05 PHP
PHP文件上传处理案例分析
2016/10/15 PHP
PHP实现上传多文件示例代码
2017/02/20 PHP
php+resumablejs实现的分块上传 断点续传功能示例
2017/04/18 PHP
XENON基于JSON变种
2010/07/27 Javascript
使用jquery hover事件实现表格的隔行换色功能示例
2013/09/03 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
2013/11/19 Javascript
jquery ajax 如何向jsp提交表单数据
2015/08/23 Javascript
JS动态给对象添加事件的简单方法
2016/07/19 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
Javascript调试之console对象——你不知道的一些小技巧
2017/07/10 Javascript
bootstrap表格内容过长时用省略号表示的解决方法
2017/11/21 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
[00:33]DOTA2上海特级锦标赛 CDEC战队宣传片
2016/03/04 DOTA
Python实现的检测web服务器健康状况的小程序
2014/09/17 Python
初步讲解Python中的元组概念
2015/05/21 Python
Python实现删除文件但保留指定文件
2015/06/21 Python
Python使用内置json模块解析json格式数据的方法
2017/07/20 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
python实现感知机线性分类模型示例代码
2019/06/02 Python
在Pycharm中调试Django项目程序的操作方法
2019/07/17 Python
python获取引用对象的个数方式
2019/12/20 Python
使用Django实现把两个模型类的数据聚合在一起
2020/03/28 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
django haystack实现全文检索的示例代码
2020/06/24 Python
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
J2EE包括哪些技术
2016/11/25 面试题
艺术爱好者的自我评价分享
2013/10/08 职场文书
车队司机个人自我鉴定
2014/04/17 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
给老婆的检讨书
2015/01/27 职场文书
师范生教育见习总结
2015/06/23 职场文书
2016年寒假政治学习心得体会
2015/10/09 职场文书
浅谈Mysql多表连接查询的执行细节
2021/04/24 MySQL
GO语言异常处理分析 err接口及defer延迟
2022/04/14 Golang