本文主要介绍了使用Keras来构建卷积网络模型进行数字与操作符的图像识别
首先使用了captcha来生成指定图像,这里将会生成3个图像,分别为2个数字,1个操作符作品输入,随后构建VGG-like的卷积网络进行训练,使用训练好的模型对新生成的图像进行预测
数据生成
captcha库可以用来生成验证码,这里我们使用captcha库来生成样例图像进行识别
生成一个7+4=11的样例图像
这里主要思路是将7、+和4的图像最为输入来训练模型,使模型能够正确识别数字与操作符,进行运算返回正确答案
作为示例,为了简化计算,我们的输入数字限定为0到9,输入的操作符号限定为+、-、*和/
定义相关的预处理函数,如将数字和操作符的标签(label)进行编码,转为one-hot编码形式
定义生成器来批量产生图像数据和其标签
训练卷积网络模型
分别对数字图像和操作符图像构建两个VGG-Like的卷积网络模型
数字模型
训练数字模型
测试数字模型
操作符模型
训练操作符模型
测试操作符识别模型
测试模型
生成2张数字图像和1张操作符图像来测试一下我们的模型
领取专属 10元无门槛券
私享最新 技术干货