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实现查询苹果手机维修进度
Mar 16 Python
状态机的概念和在Python下使用状态机的教程
Apr 11 Python
Python语言生成水仙花数代码示例
Dec 18 Python
Python网络爬虫神器PyQuery的基本使用教程
Feb 03 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
Windows下python3.7安装教程
Jul 31 Python
使用Selenium破解新浪微博的四宫格验证码
Oct 19 Python
python 对类的成员函数开启线程的方法
Jan 22 Python
对Python 检查文件名是否规范的实例详解
Jun 10 Python
python+openCV利用摄像头实现人员活动检测
Jun 22 Python
如何在 Django 模板中输出 &quot;{{&quot;
Jan 24 Python
Django跨域资源共享问题(推荐)
Mar 09 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
在PHP的图形函数中显示汉字
2006/10/09 PHP
php获取后台Job管理的实现代码
2011/06/10 PHP
PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)
2011/12/28 PHP
探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数
2013/06/13 PHP
php分页代码学习示例分享
2014/02/20 PHP
php绘制一个矩形的方法
2015/01/24 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
简单谈谈PHP中的trait
2017/02/25 PHP
Array对象方法参考
2006/10/03 Javascript
javascript下过滤数组重复值的代码
2007/09/10 Javascript
jquery实现输入框动态增减的实例代码
2013/07/14 Javascript
JS实现可直接显示网页代码运行效果的HTML代码预览功能实例
2015/08/06 Javascript
表单中单选框添加选项和移除选项
2016/07/04 Javascript
jQuery元素属性操作实例(设置、获取及删除元素属性)
2016/09/08 Javascript
PHP获取当前页面完整URL的方法
2016/12/02 Javascript
使用JavaScript实现表格编辑器(实例讲解)
2017/08/02 Javascript
微信小程序实现点击空白隐藏的方法示例
2019/08/13 Javascript
[50:22]完美盛典-2018年度红毯走秀
2018/12/16 DOTA
在Python的web框架中配置app的教程
2015/04/30 Python
Python实现针对中文排序的方法
2017/05/09 Python
python读取文件名称生成list的方法
2018/04/27 Python
Python 仅获取响应头, 不获取实体的实例
2019/08/21 Python
django删除表重建的实现方法
2019/08/28 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
2019/12/17 Python
Python3变量与基本数据类型用法实例分析
2020/02/14 Python
python+Selenium自动化测试——输入,点击操作
2020/03/06 Python
windows、linux下打包Python3程序详细方法
2020/03/17 Python
Python使用eval函数执行动态标表达式过程详解
2020/10/17 Python
东方电视购物:东方CJ
2016/10/12 全球购物
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
业务经理的岗位职责
2013/11/16 职场文书
教师实习自我鉴定
2013/12/13 职场文书
2014年秋季开学寄语
2014/08/02 职场文书
2014年中秋寄语
2014/08/11 职场文书
2015年秋季新学期寄语
2015/03/25 职场文书
晶体管来复再生式二管收音机
2021/04/22 无线电