首先需要准备训练数据集、设计神经网络模型、训练模型以及最后的验证码识别。
代码很简单,但需要慢慢研读,这个是卷积神经网络,运行时间比较长,可以自己调节参数。
import os os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/' import string, random from captcha.image import ImageCaptcha import numpy as np from keras.layers import Input, MaxPooling2D, Dense, BatchNormalization, Flatten, Conv2D from keras.models import Model from keras.callbacks import ModelCheckpoint, TensorBoard from keras.utils.vis_utils import plot_model import matplotlib.pyplot as plt from PIL import Image #引入相关库 def randomCode(): # 随机生成验证码 raw = string.digits + string.ascii_uppercase #生成 random_str = ''.join(random.sample(raw,4)) return random_str, raw def GEN(height=80,width=170,batch_size=32,n_class=36): # 样本生成器 print('样本生成') x = np.zeros((batch_size,height,width,3),dtype=np.float) y = [np.zeros((batch_siz