python 图片去噪的方法示例


Posted in Python onJuly 09, 2019

图像可能在生成、传输或者采集过程中夹带了噪声,去噪声是图像处理中常用的手法。通常去噪声用滤波的方法,比如中值滤波、均值滤波。但是那样的算法不适合用在处理字符这样目标狭长的图像中,因为在滤波的过程中很有可能会去掉字符本身的像素。

一个采用的是去除杂点的方法来进行去噪声处理的。具体算法如下:扫描整个图像,当发现一个黑色点的时候,就考察和该黑色点间接或者直接相连接的黑色点的个数有多少,如果大于一定的值,那就说明该点不是离散点,否则就是离散点,把它去掉。在考察相连的黑色点的时候用的是递归的方法。此处,我简单的用python实现了,大家可以参考以下。

#coding=utf-8
"""
造物奇迹QQ2737499951
"""
import cv2
import numpy as np
from matplotlib import pyplot as plt
from PIL import Image,ImageEnhance,ImageFilter
 
img_name = 'test.jpg'
#去除干扰线
im = Image.open(img_name)
#图像二值化
enhancer = ImageEnhance.Contrast(im)
im = enhancer.enhance(2)
im = im.convert('1')
data = im.getdata()
w,h = im.size
#im.show()
black_point = 0
for x in xrange(1,w-1):
  for y in xrange(1,h-1):
    mid_pixel = data[w*y+x] #中央像素点像素值
    if mid_pixel == 0: #找出上下左右四个方向像素点像素值
      top_pixel = data[w*(y-1)+x]
      left_pixel = data[w*y+(x-1)]
      down_pixel = data[w*(y+1)+x]
      right_pixel = data[w*y+(x+1)]
 
      #判断上下左右的黑色像素点总个数
      if top_pixel == 0:
        black_point += 1
      if left_pixel == 0:
        black_point += 1
      if down_pixel == 0:
        black_point += 1
      if right_pixel == 0:
        black_point += 1
      if black_point >= 3:
        im.putpixel((x,y),0)
      #print black_point
      black_point = 0
im.show()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python提示[Errno 32]Broken pipe导致线程crash错误解决方法
Nov 19 Python
Python中使用HTMLParser解析html实例
Feb 08 Python
python函数装饰器用法实例详解
Jun 04 Python
Python实现批量下载图片的方法
Jul 08 Python
python subprocess 杀掉全部派生的子进程方法
Jan 16 Python
Python+Selenium自动化实现分页(pagination)处理
Mar 31 Python
利用Celery实现Django博客PV统计功能详解
May 08 Python
Python使用pyodbc访问数据库操作方法详解
Jul 05 Python
对python3 中方法各种参数和返回值详解
Dec 15 Python
Python编程深度学习计算库之numpy
Dec 28 Python
python实现矩阵打印
Mar 02 Python
Python守护进程实现过程详解
Feb 10 Python
python 使用plt画图,去除图片四周的白边方法
Jul 09 #Python
浅谈Python小波分析库Pywavelets的一点使用心得
Jul 09 #Python
python basemap 画出经纬度并标定的实例
Jul 09 #Python
python实现列表中最大最小值输出的示例
Jul 09 #Python
python实现基于朴素贝叶斯的垃圾分类算法
Jul 09 #Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 #Python
深入了解Python枚举类型的相关知识
Jul 09 #Python
You might like
德劲1102收音机的打理维修案例
2021/03/02 无线电
PHP4在WinXP下IIS和Apache2服务器上的安装实例
2006/10/09 PHP
php实现的操作excel类详解
2016/01/15 PHP
thinkPHP5框架实现基于ajax的分页功能示例
2018/06/12 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
javascript 获取select下拉列表值的代码
2009/09/07 Javascript
基于Jquery的将DropDownlist的选中值赋给label的实现代码
2011/05/06 Javascript
jQuery之end()和pushStack()使用介绍
2012/02/07 Javascript
js利用数组length属性清空和截短数组的小例子
2014/01/15 Javascript
layer弹出层框架alert与msg详解
2017/03/14 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
vue基于Element构建自定义树的示例代码
2017/09/19 Javascript
Node解决简单重复问题系列之Excel内容的获取
2018/01/02 Javascript
jQuery中复合选择器简单用法示例
2018/03/31 jQuery
浅谈Angular单元测试总结
2019/03/22 Javascript
vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码
2020/09/16 Javascript
Python中字符编码简介、方法及使用建议
2015/01/08 Python
Python中使用copy模块实现列表(list)拷贝
2015/04/14 Python
解析Python中while true的使用
2015/10/13 Python
开源Web应用框架Django图文教程
2017/03/09 Python
Python编程把二叉树打印成多行代码
2018/01/04 Python
python中cPickle类使用方法详解
2018/08/27 Python
Python3.5常见内置方法参数用法实例详解
2019/04/29 Python
Python+Pyqt实现简单GUI电子时钟
2021/02/22 Python
python3 mmh3安装及使用方法
2019/10/09 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
2020/04/24 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
Python爬虫实现百度翻译功能过程详解
2020/05/29 Python
波兰家具和室内装饰品购物网站:Vivre
2018/04/10 全球购物
《中国梦我的梦》小学生演讲稿
2014/08/20 职场文书
公司表扬稿范文
2015/05/05 职场文书
感恩教师节主题班会
2015/08/12 职场文书
2019教师的学习计划
2019/06/25 职场文书
详解Apache SkyWalking 告警配置指南
2021/04/22 Servers
python文件与路径操作神器 pathlib
2022/04/01 Python
CSS link与@import的区别和用法解析
2023/05/07 HTML / CSS