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 相关文章推荐
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
Nov 18 Python
python3实现表白神器
Apr 09 Python
查看Python依赖包及其版本号信息的方法
Aug 13 Python
python中web框架的自定义创建
Sep 08 Python
pytorch梯度剪裁方式
Feb 04 Python
PyCharm2020.1.1与Python3.7.7的安装教程图文详解
Aug 07 Python
Python爬取数据并实现可视化代码解析
Aug 12 Python
Anaconda的安装与虚拟环境建立
Nov 18 Python
Python爬取梨视频的示例
Jan 29 Python
python 批量将中文名转换为拼音
Feb 07 Python
Python数据处理的三个实用技巧分享
Apr 01 Python
Python获取字典中某个key的value
Apr 13 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
文章推荐系统(三)
2006/10/09 PHP
如何提高MYSQL数据库的查询统计速度 select 索引应用
2007/04/11 PHP
smarty模板引擎中内建函数if、elseif和else的使用方法
2015/01/22 PHP
php中 ob_start等函数截取标准输出的方法
2015/06/22 PHP
redirect_uri参数错误的解决方法(必看)
2017/02/16 PHP
使用js实现雪花飘落效果
2013/08/26 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
JavaScript中一个奇葩的IE浏览器判断方法
2014/04/16 Javascript
Javascript中对象继承的实现小例
2014/05/12 Javascript
ZeroClipboard插件实现多浏览器复制功能(支持firefox、chrome、ie6)
2014/08/30 Javascript
js实现左侧网页tab滑动门效果代码
2015/09/06 Javascript
jQuery模拟select实现下拉菜单功能
2016/06/20 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
jQuery 实现图片的依次加载图片功能
2017/07/06 jQuery
Vue利用路由钩子token过期后跳转到登录页的实例
2017/10/26 Javascript
微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】
2017/12/05 Javascript
使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
2018/05/01 Javascript
如何为vue的项目添加单元测试
2018/12/19 Javascript
微信小程序实现写入读取缓存详解
2019/08/30 Javascript
nodemon实现Typescript项目热更新的示例代码
2019/11/19 Javascript
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
2020/01/06 Javascript
jquery实现手风琴案例
2020/05/04 jQuery
[02:53]DOTA2英雄基础教程 山岭巨人小小
2013/12/09 DOTA
关于Python面向对象编程的知识点总结
2017/02/14 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
python try except 捕获所有异常的实例
2018/10/18 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
Python实现快速排序的方法详解
2019/10/25 Python
用pytorch的nn.Module构造简单全链接层实例
2020/01/14 Python
为什么是 Python -m
2020/06/19 Python
蛋白质世界:Protein World
2017/11/23 全球购物
银行服务感言
2014/03/01 职场文书
美术指导求职信
2014/03/17 职场文书
安全标兵事迹材料
2014/08/17 职场文书
个人存款证明书
2014/10/18 职场文书
2015年大学社团工作总结
2015/04/09 职场文书