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中正则表达式的使用详解
Oct 17 Python
Python Web框架Flask中使用七牛云存储实例
Feb 08 Python
在Ubuntu系统下安装使用Python的GUI工具wxPython
Feb 18 Python
关于Python中浮点数精度处理的技巧总结
Aug 10 Python
Sublime开发python程序的示例代码
Jan 24 Python
Python如何抓取天猫商品详细信息及交易记录
Feb 23 Python
python操作redis方法总结
Jun 06 Python
python矩阵的转置和逆转实例
Dec 12 Python
Python 异步协程函数原理及实例详解
Nov 13 Python
python+gdal+遥感图像拼接(mosaic)的实例
Mar 10 Python
Django web自定义通用权限控制实现方法
Nov 24 Python
Python创建文件夹与文件的快捷方法
Dec 08 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与XML的PDF文档生成技术
2006/10/09 PHP
PHP对XML内容进行修改和删除实例代码
2016/10/26 PHP
PHP实现验证码校验功能
2017/11/16 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
PHP实现随机发扑克牌
2020/04/22 PHP
使用postMesssage()实现跨域iframe页面间的信息传递方法
2016/03/29 Javascript
js数组去重的hash方法
2016/12/22 Javascript
Vue异步组件使用详解
2017/04/08 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
浅谈vue后台管理系统权限控制思考与实践
2018/12/19 Javascript
Vue实现PC端靠边悬浮球的代码
2020/05/09 Javascript
原生JS利用transform实现banner的无限滚动示例代码
2020/06/15 Javascript
Python自动化测试ConfigParser模块读写配置文件
2016/08/15 Python
PyCharm在win10的64位系统安装实例
2017/11/26 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
python合并同类型excel表格的方法
2018/04/01 Python
python sys.argv[]用法实例详解
2018/05/25 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python 去除二维数组/二维列表中的重复行方法
2019/01/23 Python
python map比for循环快在哪
2020/09/21 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
中医药大学市场营销专业自荐信
2013/09/29 职场文书
电子商务专业自我鉴定
2013/12/18 职场文书
初中语文教学反思
2014/02/02 职场文书
新年爱情寄语
2014/04/08 职场文书
文明家庭事迹材料
2014/12/20 职场文书
校长师德表现自我评价
2015/03/04 职场文书
趣味运动会赞词
2015/07/22 职场文书
员工规章制度范本
2015/08/07 职场文书
网络研修心得体会
2016/01/08 职场文书
一个家长教育孩子的心得体会
2016/01/15 职场文书
Nginx解决前端访问资源跨域问题的方法详解
2021/03/31 Servers
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang
关于的python五子棋的算法
2022/05/02 Python