使用python实现图像的中值滤波
椒盐噪声处理的图片:

import numpy as np
import matplotlib.pyplot as plt
from skimage import io
def mediafil(img,m):
#滤波后会缺失边缘,先对原图进行0 paddingimg1=np.zeros((img.shape[0]+m-1,img.shape[1]+m-1))img1[(m-1)//2:(img.shape[0]+(m-1)//2),(m-1)//2:(img.shape[1]+(m-1)//2)]=img
#利用np.median寻找中值img2=np.zeros(img.shape)for i in range((m-1)//2,img2.shape[0]-(m-1)//2):for j in range((m-1)//2,img2.shape[1]-(m-1)//2):img2[i,j]=np.median(img1[i - (m-1)//2:i + (m-1)//2 + 1, j - (m-1)//2:j + (m-1)//2 + 1])return img2
#测试仅用一个通道,三通道遍历即可
img=io.imread("3-5-5.tif")[:,:,0]
m=3
img_new=mediafil(img,m)
plt.subplot(1,2,1)
plt.imshow(img,cmap='gray')
plt.subplot(1,2,2)
plt.imshow(img_new,cmap='gray')
plt.show()

python自编中值滤波器相关推荐

  1. python 多线程编程之_thread模块

    python 多线程编程之_thread模块 参考书籍:python核心编程 _thread模块除了可以派生线程外,还提供了基本的同步数据结构,又称为锁对象(lock object,也叫原语锁.简单锁 ...

  2. c++ python opencv_ubuntu下C++与Python混编,opencv中mat类转换

    C++ 与 Python 混编 因为赶项目进度,需要使用到深度学习的内容,不过现有的深度学习框架大多使用python代码,对于不会改写C++的朋友来说,需要耗费大量的时间去改写,因此,使用python ...

  3. Python网络编程之二:网络编程基础

    Python网络编程之二:网络编程基础 一.基础概念 1.两个地址 1.1.mac地址 mac地址:直译为媒体存取控制位址,也称为局域网地址.MAC位址.以太网地址或物理地址,它是一个用来确认网络设备 ...

  4. Python网络编程之day01-网络编程基础

    Python网络编程之day01-网络编程基础 文章目录 Python网络编程之day01-网络编程基础 一.网络通信概述 二.IP地址 三.ping,ifconfig,ipconfig 四.端口 代 ...

  5. Python高效编程之88条军规(2):你真的会格式化字符串吗?

    目录 1.  C风格的字符串格式化方式 2. 内建format函数与str.format方法 3. f-字符串 总结: 在微信公众号「极客起源」中输入595586,可学习全部的<Python高效 ...

  6. Python并发编程之threading模块

    Python并发编程之threading模块 threading 模块 1. Timer对象 2. Lock对象 3. RLock 4. 信号量和有边界的信号量 5. 事件 6. 条件变量 7. 使用 ...

  7. python主成分对变量的贡献率_(数据科学学习手札20)主成分分析原理推导Python自编函数实现...

    主成分分析(principal component analysis,简称PCA)是一种经典且简单的机器学习算法,其主要目的是用较少的变量去解释原来资料中的大部分变异,期望能将现有的众多相关性很高的变 ...

  8. python能编plc吗_基于Python的丰炜系列PLC与PC串行通信的实现

    龙源期刊网 http://www.qikan.com.cn 基于 Python 的丰炜系列 PLC 与 PC 串行通 信的实现 作者:韩志三 来源:<硅谷> 2013 年第 22 期 摘 ...

  9. python 网络编程之Socket通信案例消息发送与接收

    背景 网络编程是python编程中的一项基本技术.本文将实现一个简单的Socket通信案例消息发送与接收 正文 在python中的socket编程的大致流程图如上所示 我们来首先编写客户端的代码: # ...

  10. Python语言编程之LEGB变量作用域法则

    Python 在查找"名称"时,是按照 LEGB 规则查找的: Local-->Enclosed-->Global-->Built in Local    指的就 ...

最新文章

  1. 一维随机变量及其概率分布
  2. 如何鉴定相亲对象是否约过炮?PM们是这样干的...
  3. Arch Linux 没有声音:Intel sound card snd_hda_intel not working 解决方法
  4. HDU 1715 大菲波数 (大数问题)
  5. SQLServer 生成当前日期备份
  6. 技术动态 | 数据库研究者视角下的知识图谱研究
  7. python定时器 是线程吗_定时器中断线程python
  8. Android定制组件之图文展示之中国好声音
  9. js中的数组和字符串的一些方法
  10. windows 域名+虚拟目录 (php)
  11. java项目-第91期基于ssm的蛋糕商城系统
  12. 介绍ping中的TTL是什么意思
  13. 百度地图实现定位图标随手机方向变化而变化,即运用方向传感器
  14. ppt打印一页6张铺满不留白_你真的会做ppt?这些习惯和操作你有吗?
  15. (裴蜀定理)ax + by = m 有解,当且仅当 m 是 gcd(a,b) 的倍数
  16. mysql CONFLICT 冲突
  17. 印度也算“IT”大国吗?-在印度电信的遭遇
  18. subprocess.run方法
  19. STM8L低功耗设置,深坑。。。
  20. Java 性能优化实战案例分析:Redis如何助力秒杀业务

热门文章

  1. 在使用JEDate时间控件时,不能捕捉到input的change事件的解决办法
  2. pyecharts在jupyter notebook中使用报错
  3. 直接通过手机抓取GPS的qxdm日志
  4. 基于NSGA3的swat模型情景的多目标优化算法,python
  5. DOSBOX下载和使用
  6. UG12.0运动仿真分析基础到精通视频教程
  7. 微信小程序——车牌键盘js+css
  8. 怎么隐藏电脑桌面计算机,怎么隐藏电脑桌面软件
  9. Go语言实战爬虫项目
  10. PLC编程入门:梯形图