Python 处理图片像素点的实例


Posted in Python onJanuary 08, 2019

###在做爬虫的时候有时需要识别验证码,但是验证码一般都有干扰物,这时需要对验证码进行预处理,效果如下:

Python 处理图片像素点的实例

from PIL import Image
import itertools
img = Image.open('C:/img.jpg').convert('L') #打开图片,convert图像类型有L,RGBA

# 转化为黑白图
def blackWrite(img):
 blackXY = []

 # 遍历像素点
 for x in range(img.size[0]):
  for y in range(img.size[1]):
   print img.getpixel((x,y))
   if img.getpixel((x,y))<128:
    img.putpixel((x,y),0) # 置为黑点
    blackXY.append((x,y))
   else:
    img.putpixel((x,y),255) # 置为白点
 return blackXY


# 去除干扰点
def clrImg(img,pointArr):
 # 获取周围黑点的个数
 def getN(p):
  count = 0
  x = [p[0]-1,p[0],p[0]+1]
  y = [p[1]-1,p[1],p[1]+1]
  for i in itertools.product(x,y): # 笛卡尔积
   try:
    if img.getpixel(i) == 0:
     count +=1
   except:
    print 'out of'
    continue
  print count
  return count

 for p in pointArr:
  if getN(p)<5: # 周围黑点个数 <5 的黑点认为是干扰点,置为白点
   img.putpixel(p,255)
   
pointArr = blackWrite(img)
clrImg(img,pointArr)
img.save("C:/img_1.jpg")

以上这篇Python 处理图片像素点的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接oracle数据库实例
Oct 17 Python
Python装饰器decorator用法实例
Nov 10 Python
Python中装饰器的一个妙用
Feb 08 Python
详解Python中内置的NotImplemented类型的用法
Mar 31 Python
通过代码实例展示Python中列表生成式的用法
Mar 31 Python
Python模拟登录验证码(代码简单)
Feb 06 Python
Phantomjs抓取渲染JS后的网页(Python代码)
May 13 Python
Tornado Web Server框架编写简易Python服务器
Jul 28 Python
解决pycharm安装后代码区不能编辑的问题
Oct 28 Python
Python设计模式之观察者模式原理与用法详解
Jan 16 Python
Pytorch数据拼接与拆分操作实现图解
Apr 30 Python
Python3如何使用tabulate打印数据
Sep 25 Python
Python实现查找最小的k个数示例【两种解法】
Jan 08 #Python
对Python闭包与延迟绑定的方法详解
Jan 07 #Python
python将控制台输出保存至文件的方法
Jan 07 #Python
对Python捕获控制台输出流的方法详解
Jan 07 #Python
python print输出延时,让其立刻输出的方法
Jan 07 #Python
Python3 单行多行万能正则匹配方法
Jan 07 #Python
Python字符串的全排列算法实例详解
Jan 07 #Python
You might like
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
Discuz! Passport 通行证整合
2008/03/27 PHP
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
在php中判断一个请求是ajax请求还是普通请求的方法
2011/06/28 PHP
PHP实现批量上传单个文件
2015/12/29 PHP
PHP实现简单的模板引擎功能示例
2017/09/02 PHP
PHP抽象类与接口的区别详解
2019/03/21 PHP
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
node.js中的emitter.on方法使用说明
2014/12/10 Javascript
Node.js本地文件操作之文件拷贝与目录遍历的方法
2016/02/16 Javascript
基于javascript实现表格的简单操作
2016/05/21 Javascript
JS控制层作圆周运动的方法
2016/06/20 Javascript
Node.js中常规的文件操作总结
2016/10/13 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
深入讲解Java编程中类的生命周期
2016/02/05 Python
python数据清洗系列之字符串处理详解
2017/02/12 Python
Python实现识别手写数字 简易图片存储管理系统
2018/01/29 Python
Python中的上下文管理器和with语句的使用
2018/04/17 Python
Python之批量创建文件的实例讲解
2018/05/10 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
PyQt5实现简易计算器
2020/05/30 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
2019/07/05 Python
代码总结Python2 和 Python3 字符串的区别
2020/01/28 Python
python3将变量输入的简单实例
2020/08/19 Python
CSS3 Notes: -webkit-box-reflect实现倒影的实例
2016/12/08 HTML / CSS
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
慈善晚会策划方案
2014/05/14 职场文书
机电专业求职信
2014/06/14 职场文书
走群众路线学习笔记
2014/11/06 职场文书
单位实习介绍信
2015/05/05 职场文书
行政撤诉申请书
2015/05/18 职场文书
2015元旦感言
2015/12/09 职场文书
SQLServer权限之只开启创建表权限
2022/04/12 SQL Server
前端与RabbitMQ实时消息推送未读消息小红点实现示例
2022/07/23 Java/Android