Keras实现,后端Tensorflow
目前仅整理了12306验证码图片部分分类代码,关于验证码文字部分的代码尚未整理,不过原理相同。
每个分类大约1500张左右图片,图片总数约12w,因为是笔者自己人工标注,看的快可能会有遗漏,尤其在容易混淆的分类,例如蜡烛和烛台,海报和日历等相似度很高的分类里。或许可以通过严格过滤数据集来增加准确率,毕竟数据集对于准确率的影响还是很大的。
解压data目录下的dataset.zip,目录结构应该为
- data
- ---dataset
- ------各个分类名
- ---------图片.jpg
测试识别准确率为96%,出问题的多在容易混淆的图片分类,例如海报和日历,蜡烛和烛台, 本子和档案袋
python train.py
- 训练时间
笔者机器配置GTX980ti,训练100epoch大约用时3小时,在80epoch趋于平稳即97%训练准确率
python classify.py
基于此笔者搭建了一个免费的12306验证码识别平台 https://www.markcaptcha.com/
https://www.pyimagesearch.com/2018/04/16/keras-and-convolutional-neural-networks-cnns/