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发送arp欺骗攻击代码分析
Jan 16 Python
Python标准库之Sys模块使用详解
May 23 Python
Python中函数的参数传递与可变长参数介绍
Jun 30 Python
深入讲解Python编程中的字符串
Oct 14 Python
Python利用Beautiful Soup模块修改内容方法示例
Mar 27 Python
python中实现延时回调普通函数示例代码
Sep 08 Python
Python对ElasticSearch获取数据及操作
Apr 24 Python
Django框架之DRF 基于mixins来封装的视图详解
Jul 23 Python
python3 求约数的实例
Dec 05 Python
如何在Windows中安装多个python解释器
Jun 16 Python
Python同时处理多个异常的方法
Jul 28 Python
pycharm Tab键设置成4个空格的操作
Feb 26 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实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
PHP版国家代码、缩写查询函数代码
2011/08/14 PHP
php实现利用phpexcel导出数据
2013/08/24 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
PHP面向对象程序设计之接口用法
2014/08/20 PHP
PHP中常见的缓存技术实例分析
2015/09/23 PHP
类似CSDN图片切换效果脚本
2009/09/17 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
js识别不同浏览器基于userAgent做判断
2014/07/29 Javascript
js调试工具Console命令详解
2014/10/21 Javascript
详解angular ui-grid之过滤器设置
2017/06/07 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
使用 Vue cli 3.0 构建自定义组件库的方法
2019/04/30 Javascript
基于elementUI使用v-model实现经纬度输入的vue组件
2019/05/12 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
Python代码调试的几种方法总结
2015/04/15 Python
Python+Django搭建自己的blog网站
2018/03/13 Python
Python列表推导式与生成器用法分析
2018/08/02 Python
Python中分支语句与循环语句实例详解
2018/09/13 Python
Python实现查找数组中任意第k大的数字算法示例
2019/01/23 Python
Python3实现的判断环形链表算法示例
2019/03/07 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
windows上安装python3教程以及环境变量配置详解
2019/07/18 Python
python实现电子书翻页小程序
2019/07/23 Python
Django 用户认证组件使用详解
2019/07/23 Python
现代生活方式的家具和装饰:Dot & Bo
2018/12/26 全球购物
如何写出好的Java代码
2014/04/25 面试题
网游商务专员求职信
2013/10/15 职场文书
家长对孩子的感言
2014/03/10 职场文书
奥巴马就职演讲稿
2014/05/15 职场文书
户外宣传策划方案
2014/05/25 职场文书
竞聘自述材料
2014/08/25 职场文书
员工规章制度范本
2015/08/07 职场文书
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python
数据库之SQL技巧整理案例
2021/07/07 SQL Server
Java结构型设计模式之组合模式详解
2022/09/23 Java/Android