TensorFlow项目实战:验证码识别
2018-01-21 18:53
337 查看
windows系统下搭建tensorflow开发环境,参见:
1.生成验证码:
首先建立captchaIdentify.py,captchaIdentify.py的主要功能是生成字符验证码并使用matplot绘制出来,它的源代码如下:
import tensorflow as tf
from captcha.image import ImageCaptcha
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
import random
number = ['0','1','2','3','4','5','6','7','8','9']
alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
ALPHABET = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
def random_captcha_text(char_set=number+alphabet+ALPHABET, captcha_size=4):
captcha_text = []
for i in range(captcha_size):
c = random.choice(char_set)
captcha_text.append(c)
return captcha_text
def gen_captcha_text_and_image():
image = ImageCaptcha()
captcha_text = random_captcha_text()
captcha_text = ''.join(captcha_text)
captcha = image.generate(captcha_text)
#image.write(captcha_text, captcha_text + '.jpg')
captcha_image = Image.open(captcha)
captcha_image = np.array(captcha_image)
return captcha_text, captcha_image
if __name__ == '__main__':
text, image = gen_captcha_text_and_image()
f = plt.figure()
ax = f.add_subplot(111)
ax.text(0.1, 0.9,text, ha='center', va='center', transform=ax.transAxes)
plt.imshow(image)
plt.show() 代码中需要注意,from captcha.image import ImageCaptcha,因为是验证码识别,所以需要安装captcha框架。下面展示如何在anaconda中安装captcha库,打开Anaconda Prompot输入命令:pip install captcha(正常情况下,anconda中安装是输入conda install captcha命令,但是anaconda中找不到captcha库,所以采用pip安装)。
右键run as-->python run,可以看到生成的验证码如下图所示:
captcha_text = random_captcha_text()
captcha_text = ''.join(captcha_text) gen_captcha_text_and_image()函数中这两句讲随机生成字符列表转换为字符串。
1.生成验证码:
首先建立captchaIdentify.py,captchaIdentify.py的主要功能是生成字符验证码并使用matplot绘制出来,它的源代码如下:
import tensorflow as tf
from captcha.image import ImageCaptcha
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
import random
number = ['0','1','2','3','4','5','6','7','8','9']
alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
ALPHABET = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
def random_captcha_text(char_set=number+alphabet+ALPHABET, captcha_size=4):
captcha_text = []
for i in range(captcha_size):
c = random.choice(char_set)
captcha_text.append(c)
return captcha_text
def gen_captcha_text_and_image():
image = ImageCaptcha()
captcha_text = random_captcha_text()
captcha_text = ''.join(captcha_text)
captcha = image.generate(captcha_text)
#image.write(captcha_text, captcha_text + '.jpg')
captcha_image = Image.open(captcha)
captcha_image = np.array(captcha_image)
return captcha_text, captcha_image
if __name__ == '__main__':
text, image = gen_captcha_text_and_image()
f = plt.figure()
ax = f.add_subplot(111)
ax.text(0.1, 0.9,text, ha='center', va='center', transform=ax.transAxes)
plt.imshow(image)
plt.show() 代码中需要注意,from captcha.image import ImageCaptcha,因为是验证码识别,所以需要安装captcha框架。下面展示如何在anaconda中安装captcha库,打开Anaconda Prompot输入命令:pip install captcha(正常情况下,anconda中安装是输入conda install captcha命令,但是anaconda中找不到captcha库,所以采用pip安装)。
右键run as-->python run,可以看到生成的验证码如下图所示:
captcha_text = random_captcha_text()
captcha_text = ''.join(captcha_text) gen_captcha_text_and_image()函数中这两句讲随机生成字符列表转换为字符串。
相关文章推荐
- TensorFlow 中文资源精选,官方网站,安装教程,入门教程,实战项目,学习路径
- TensorFlow 中文资源精选,官方网站,安装教程,入门教程,实战项目,学习路径。
- Tensorflow项目实战一:MNIST手写数字识别
- Tensorflow 机器学习项目实战 记录
- Tensorflow项目实战视频课程-文本分类
- FaceRank,可能是最有趣的中文 TensorFlow 入门实战项目
- TensorFlow 中文资源全集,官方网站,安装教程,入门教程,实战项目,学习路径。
- TensorFlow实战项目-初探matplotlib画图
- 唐宇迪之tensorflow学习笔记项目实战(LSTM情感分析)
- TensorFlow 中文资源精选,官方网站,安装教程,入门教程,实战项目,学习路径。
- 【备忘】2017年深度学习之Tensorflow项目实战视频课程-文本分类
- FaceRank,最有趣的 TensorFlow 入门实战项目
- Tensorflow项目实战——句子分类(Sentence Classification)
- ASP.NET Web开发项目实战视频教程
- [置顶] 【机器学习实战】Machine Learning in Action 代码 视频 项目案例
- Tensorflow 自带可视化Tensorboard使用方法 附项目代码
- Android项目开发实战:倒计时
- 项目视频讲解_国内首部基于JBPM5.4实战流程引擎开发(动态表单、模板引擎、公文管理系统)
- 【SSH网上商城项目实战11】查询和删除商品功能的实现
- iOS 开发一周速成 -- 项目实战中常用API