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的多态性实例分析
Jul 07 Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
Sep 22 Python
python实现批量视频分帧、保存视频帧
May 31 Python
在python中利用numpy求解多项式以及多项式拟合的方法
Jul 03 Python
Django模板导入母版继承和自定义返回Html片段过程解析
Sep 18 Python
基于python和flask实现http接口过程解析
Jun 15 Python
python redis存入字典序列化存储教程
Jul 16 Python
python 实现朴素贝叶斯算法的示例
Sep 30 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
Oct 02 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 Python
Python中的套接字编程是什么?
Jun 21 Python
总结Python连接CS2000的详细步骤
Jun 23 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
DC四月将推出百页特刊漫画 纪念小丑诞生80周年
2020/04/09 欧美动漫
PHP 图像尺寸调整代码
2010/05/26 PHP
PHP实现支持CURL字符串证书传输的方法
2019/03/23 PHP
javascript dom代码应用 简单的相册[firefox only]
2010/06/12 Javascript
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
JS函数重载的解决方案
2014/05/13 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
jquery实现TAB选项卡鼠标经过带延迟效果的方法
2015/07/27 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
2016/05/28 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
BootStrap学习系列之布局组件(下拉,按钮组[toolbar],上拉)
2017/01/03 Javascript
webpack开发跨域问题解决办法
2017/08/03 Javascript
详解基于mpvue微信小程序下载远程图片到本地解决思路
2019/05/16 Javascript
新手简单了解vue
2019/05/29 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
2019/07/12 jQuery
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
精确查找PHP WEBSHELL木马的方法(1)
2011/04/12 Python
python字符串,数值计算
2016/10/05 Python
TensorFlow搭建神经网络最佳实践
2018/03/09 Python
python 将大文件切分为多个小文件的实例
2019/01/14 Python
Django发送邮件功能实例详解
2019/09/02 Python
python颜色随机生成器的实例代码
2020/01/10 Python
Python-jenkins模块之folder相关操作介绍
2020/05/12 Python
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
代码中finally中的代码会不会执行
2012/02/06 面试题
应聘编辑自荐信范文
2014/03/12 职场文书
安全生产月演讲稿
2014/05/09 职场文书
写字楼租赁意向书
2014/07/30 职场文书
创建绿色社区汇报材料
2014/08/22 职场文书
2016年师德师风学习心得体会
2016/01/12 职场文书
利用Python判断整数是否是回文数的3种方法总结
2021/07/07 Python
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
Vue的过滤器你真了解吗
2022/02/24 Vue.js
tomcat下部署jenkins的方法
2022/05/06 Servers