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将多个excel表格合并为一个表格
Feb 22 Python
python format 格式化输出方法
Jul 16 Python
python+pyqt5实现KFC点餐收银系统
Jan 24 Python
python如何爬取网站数据并进行数据可视化
Jul 08 Python
Python 变量的创建过程详解
Sep 02 Python
Django 自动生成api接口文档教程
Nov 19 Python
解决Django中checkbox复选框的传值问题
Mar 31 Python
Numpy一维线性插值函数的用法
Apr 22 Python
tensorflow 动态获取 BatchSzie 的大小实例
Jun 30 Python
Python限制内存和CPU使用量的方法(Unix系统适用)
Aug 04 Python
next在python中返回迭代器的实例方法
Dec 15 Python
python实现图片批量压缩
Apr 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获取当前url地址的方法小结
2017/01/10 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
2017/07/31 PHP
js location.replace与location.reload的区别
2010/09/08 Javascript
JavaScript代码复用模式实例分析
2012/12/02 Javascript
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
2014/05/08 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
2015/10/12 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
JS生成和下载二维码的代码
2016/12/07 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
2018/12/30 Javascript
JS中实现浅拷贝和深拷贝的代码详解
2019/06/05 Javascript
layui layer select 选择被遮挡的解决方法
2019/09/21 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
2020/05/18 Javascript
PYTHON压平嵌套列表的简单实现
2016/06/08 Python
python实现数据写入excel表格
2018/03/25 Python
python 给DataFrame增加index行名和columns列名的实现方法
2018/06/08 Python
ML神器:sklearn的快速使用及入门
2019/07/11 Python
python给指定csv表格中的联系人群发邮件(带附件的邮件)
2019/12/31 Python
python lambda函数及三个常用的高阶函数
2020/02/05 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
英国手机零售商:Carphone Warehouse
2018/06/06 全球购物
马德里运动鞋商店:Nigra Mercato
2020/02/16 全球购物
灵泰克Java笔试题
2016/01/09 面试题
计算机应用专业推荐信
2013/11/13 职场文书
女方婚礼新郎答谢词
2014/01/11 职场文书
《美丽的小路》教学反思
2014/02/26 职场文书
酒店开业庆典主持词
2014/03/21 职场文书
财务部绩效考核方案
2014/05/04 职场文书
档案信息化建设方案
2014/05/16 职场文书
前台接待员岗位职责
2015/04/15 职场文书
2015年加油站工作总结
2015/05/13 职场文书
不知如何爱孩子,这些方法教会您
2019/08/06 职场文书
MySQL中几种插入和批量语句实例详解
2021/09/14 MySQL