python中值滤波去除椒盐噪声_python 中值滤波,椒盐去噪,图片增强实例
受光照、气候、成像设备等因素的影响,灰度化后的图像存在噪声和模糊干扰,直接影响到下一步的文字识别,因此,需要对图像进行增强处理。图片预处理中重要一环就是椒盐去澡,通常用到中值滤波器进行处理,效果很好。中值滤波器是一种非线性滤波器,其基本原理是把数字图像中某点的值用其领域各点值的中值代替。
如求点[i,j]的灰度值计算方法为:
(1)按灰度值顺序排列[i,j]领域中的像素点;
(2)取排序像素集的中间值作为[i,j]的灰度值。中值滤波技术能有效抑制噪声。
直接上代码,希望给大家有帮助:
import numpy as np
import cv2
import tensorflow as tf
from PIL import Image
import os
import scipy.signal as signal
input_images = np.zeros((300, 300))
filename = "D:\字母图库\F\P80627-112853.jpg"
print(filename)
img = Image.open(filename).resize((300, 300)).convert('L')
width = img.size[0]
height = img.size[1]
for h in range(0, height):
for w in range(0, width):
if img.getpixel((h, w)) < 128:
input_images[w, h] = 0
else:
input_images[w, h] = 1
cv2.imshow("test1111", input_images)
data = signal.medfilt2d(np.array(img), kernel_size=3) # 二维中值滤波
for h in range(0, height):
for w in range(0, width):
if data[h][w] < 128:
input_images[w, h] = 0
else:
input_images[w, h] = 1
cv2.imshow("test2222", input_images)
data = signal.medfilt2d(np.array(img), kernel_size=5) # 二维中值滤波
for h in range(0, height):
for w in range(0, width):
if data[h][w] < 128:
input_images[w, h] = 0
else:
input_images[w, h] = 1
cv2.imshow("test3333", input_images)
cv2.waitKey(0)
以上这篇python 中值滤波,椒盐去噪,图片增强实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
时间: 2019-12-17
python中值滤波去除椒盐噪声_python 中值滤波,椒盐去噪,图片增强实例相关推荐
- 中值滤波去除图像噪声的matlab程序
中值滤波:基于排序理论的一种能有效抑制噪声的非线性信号处理技术. 方法:取含有基数(偶数会有半像素的差)个模板数据的滑动模板,对模板中的数据从小到大排序,取排在中间位置上的数据作为最终的处理结果. m ...
- python中def _init_是什么意思_Python中self和__init__的含义与使用
原文地址https://blog.csdn.net/love666666shen/article/details/78189984 Python中的self 在Python中的类Class的代码中,常 ...
- python之33个关键字详解_Python 中的关键字 with 详解
在 Python 2.5 中,with关键字被加入.它将常用的 try ... except ... finally ...模式很方便的被复用.看一个最经典的例子: with open('file.t ...
- python中字典和集合的区别_Python中字典和集合学习小结
映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元组等 包含可变对象的列表. ...
- python异常处理时所使用的保留字_Python中,下列哪个保留字不用于异常处理______________。_学小易找答案...
[单选题]维持细胞生存所必需的最基本的基因是 ( ) [单选题]从体细胞克隆高等哺乳动物的成功说明了 ( ) [单选题]细胞决定与细胞分化的关系是 ( ) [多选题]一种类型的分化细胞转变成另-种类型 ...
- python中的列表是指针吗_Python中的指针——到底指什么(二)
在 Python中的指针--到底指什么(一) 中,我们知道在Python的一切都是对象,变量其实是指向PyObject对象的名称,对不可变变量进行操作后,名称指向了另一个PyObject. 扣留对象 ...
- python中函数和类的区别_Python中函数和方法的区别
简单总结: 与类和实例无绑定关系的function都属于函数(function): 与类和实例有绑定关系的function都属于方法(method). 首先摒弃错误认知:并不是类中的调用都叫方法 函数 ...
- python可变参数和关键字参数位置_python中函数的默认参数和可变长参数如何排列?...
参数在python中总是通过赋值进行传递的.在默认情况下,参数是通过其位置进行匹配的,从左到右,而且必须精确的传递和函数头部参数名一样多的参数. 这种默认的传递方式很简单 def f(a,b,c): ...
- python中sys模块有什么用_Python中模块之sys的功能介绍
argv 命令行参数 方法:sys.argv 返回值:list 例如:test1.py文件中有两句语句1.import sys 2.print(sys.argv) python test1.py 2 ...
最新文章
- 为应用程序增加文件压缩功能
- 堆栈 cookie 检测代码检测到基于堆栈的缓冲区溢出_WhatsApp缓冲区漏洞曝光 攻击者可通过MP4文件执行远程代码...
- java同时执行同一个方法吗_java 返回结果的同时执行另一个方法
- jsoncpp 库的使用方法
- 关于exchange2003使用owa修改用户口令
- The 2018 ACM-ICPC上海大都会赛 J Beautiful Numbers (数位DP)
- 折扇的保养方法是什么?
- JS随机打乱数组的方法小结
- MapGIS10.3Desktop64位学习版带安装教程
- Centos7使用docke搭建openV
- 视频播放性能优化-视频MOOV前置
- pstack 安装linux_linux下的进程堆栈查看工具pstack
- chinapay 新版php接口,php最新银联支付chinaPay,最新接口地址
- STM32F103VBT6 使用16M晶振和8M晶振 RCC设置有何不同?
- SAP MM批次管理(6)批次确定--大海
- PageHelper 自定义总数查询方案
- 还是觉得WinXP中Luna的Theme是经典啊!用了Royal不多会儿就疲劳了!
- 前端面试vue (上)
- PS处理图片被锁定无法编辑问题
- 创业项目融资PPT模板
热门文章
- 从家书到小票!看到海尔智家的转型是真的
- MySQL主从压_mysql主从配置
- mysql的错误代码1064_mysql错误代码之1064的解决方案
- php iso8601 gmt,如何使用PHP以iso 8601格式顯示日期
- 扩展源_视觉框架SimpleCV - 图像源
- HTML制作搞笑照片,40张创意搞笑的照片PS效果
- python写空气质量提醒_你所在的城市空气质量如何?用Python可视化分析空气质量...
- python 中的os.path.split()函数用法
- Python列表解析式,还支持异步?你知道吗?
- python文件读read()、readline()、readlines()对比