diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/README.md" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/README.md" new file mode 100644 index 00000000..532b6c99 --- /dev/null +++ "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/README.md" @@ -0,0 +1,6 @@ + +使用TensorFlow去训练自己生成的验证码, + +当前进度: + +验证码自动生成---完成 diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/cteate_image.py" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/cteate_image.py" new file mode 100644 index 00000000..1dcbbfa5 --- /dev/null +++ "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/cteate_image.py" @@ -0,0 +1,46 @@ +#coding:utf-8 +from captcha.image import ImageCaptcha # pip install captcha +import numpy as np +import matplotlib.pyplot as plt +from PIL import Image +import random,time + +# 验证码中的字符, 就不用汉字了 +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'] +# 验证码一般都无视大小写;验证码长度4个字符 +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__': + # 测试 + while(1): + text, image = gen_captcha_text_and_image() + print 'begin ',time.ctime(),type(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() + print 'end ',time.ctime() diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0GXh.jpg" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0GXh.jpg" new file mode 100644 index 00000000..87aa3082 Binary files /dev/null and "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0GXh.jpg" differ diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0a8m.jpg" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0a8m.jpg" new file mode 100644 index 00000000..a95b11fe Binary files /dev/null and "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0a8m.jpg" differ diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0h6Y.jpg" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0h6Y.jpg" new file mode 100644 index 00000000..c8322d79 Binary files /dev/null and "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0h6Y.jpg" differ diff --git "a/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0l1w.jpg" "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0l1w.jpg" new file mode 100644 index 00000000..4f604188 Binary files /dev/null and "b/1.\351\252\214\350\257\201\347\240\201/tensorflow/create_image/image/0l1w.jpg" differ