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原始套接字编程示例分享
Feb 21 Python
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
Python守护进程和脚本单例运行详解
Jan 06 Python
python实现趣味图片字符化
Apr 30 Python
如何使用python把ppt转换成pdf
Jun 29 Python
利用Python代码实现一键抠背景功能
Dec 29 Python
Python tkinter模版代码实例
Feb 05 Python
Python中求对数方法总结
Mar 10 Python
python 密码学示例——理解哈希(Hash)算法
Sep 21 Python
python调用jenkinsAPI构建jenkins,并传递参数的示例
Dec 09 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
Python移位密码、仿射变换解密实例代码
Jun 27 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
PHP+AJAX实现无刷新注册(带用户名实时检测)
2006/12/02 PHP
php实例分享之通过递归实现删除目录下的所有文件详解
2014/05/15 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
JS判断日期格式是否合法的简单实例
2016/07/11 Javascript
AngulaJS路由 ui-router 传参实例
2017/04/28 Javascript
详解Vue.js分发之作用域槽
2017/06/13 Javascript
详解Vue的computed(计算属性)使用实例之TodoList
2017/08/07 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
2017/08/24 Javascript
React-Native左右联动List的示例代码
2017/09/21 Javascript
bootstrap轮播模板使用方法详解
2017/11/17 Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
2018/05/31 jQuery
小程序实现人脸识别功能(百度ai)
2018/12/23 Javascript
微信小程序实现张图片合成为一张并下载
2019/07/16 Javascript
解决Vue @submit 提交后不刷新页面问题
2020/07/18 Javascript
基于p5.js 2D图像接口的扩展(交互实现)
2020/11/30 Javascript
Python中的自省(反射)详解
2015/06/02 Python
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
python调用Matplotlib绘制分布点并且添加标签
2018/05/31 Python
Python检测数据类型的方法总结
2019/05/20 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python xpath表达式如何实现数据处理
2020/06/13 Python
python中return不返回值的问题解析
2020/07/22 Python
美国高端婴童品牌:Hanna Andersson
2016/10/30 全球购物
大女孩胸罩:Big Girls Bras
2016/12/15 全球购物
Dockers鞋官网:Dockers Shoes
2018/11/13 全球购物
企业治理工作自我评价
2013/09/26 职场文书
门卫人员岗位职责
2013/12/24 职场文书
营销人才自我鉴定范文
2013/12/25 职场文书
年检委托书
2014/08/30 职场文书
公司仓库管理制度
2015/08/04 职场文书
python使用pygame创建精灵Sprite
2021/04/06 Python
Django显示可视化图表的实践
2021/05/10 Python
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技