CNN_LSTM_CTC基于keras--银行卡(下)

该文介绍了如何对图像数据进行扩增,包括图片拼接、尺寸变换、噪声添加等操作,以生成约20万张新图。接着,使用Keras训练模型,参数如num_classes=11,max_label_length=26,epochs=2100。训练过程中,模型每70轮保存一次,最佳模型依据val_loss选择。最后,通过test001.py进行识别,需确保模型文件存在。
摘要由CSDN通过智能技术生成

1首先是数据扩增



import cv2
PATH = 'train_img2/'

找到trian/datasets.py进行图集扩增。图集在train的子文件夹train_img。train_img作为原始备份,先把整个train_img文件夹里的图复制到train的子文件夹train_img2。train_img2自己怎么折腾都行。图片随机拼接,改变图片的大小,对图片进行
部分位移,增加高斯噪声,对图像进行模糊处理,颜色变换等c处理后生成大概将近20万张图,好像是一天的时间。反正记得一觉醒来才全部完毕

 完毕后需要把trian.txt和val.txt改一下打开txt文件把里边的四位数及四位数以下的字段全部删除。因为训练主体是16~20位左右的数字,4位的图太窄,会干扰训练效果。如果没有关于4位数的图数据,就是已经删了。因为训练时会统一尺寸 img_size = (256, 32) # W*H

train_file = open('train.txt', 'w')
    val_file = open('val.txt', 'w')

2训练

训练 :找到trian/run.py 训练即可,注意num_classes = 11 # 包含“blank”就是背景
    max_label_length = 26就是银行卡数字位数最大26位。有的银行卡只有16位。训练轮数    epochs = 2100

# 各种路径 以及参数
    weight_save_path = "model/"
    # 数字训练路径

    train_txt_path = "train.txt"
    val_txt_path = "val.txt"
    img_size = (256, 32) # W*H
    # 各种训练时候的参数
    num_classes = 11 # 包含“blank”
    max_label_length = 26
    downsample_factor = 4
    epochs = 2100
    batch_size=64

需要注意trian/train.py第23行保存周期是70,也就是每训练70轮才保存一次model。训练好后,训练精度低的model删除即可。所有的model都在rain\model子文件夹里  weight_save_path = "model/"

#callbacks  
    checkpoint = keras.callbacks.ModelCheckpoint(weight_save_path + "ep{epoch:03d}-loss{loss:.3f}-val_loss{val_loss:.3f}.h5",
        monitor='val_loss', save_weights_only=True, save_best_only=True, period=70)

3识别

找到train/test001.py运行即可。如果出现报错没有moldel,就把训练好的model放在train\model子文件夹里

import cv2
from predict import single_recognition
model_dir = "model/ep024-loss1.739-val_loss1.709.h5"
for i in range(1,6):
    img=cv2.imread('D:/PNG_NUMS/80'+str(i)+'.png')
    result_str=single_recognition(img,model_dir)
    cv2.imshow(str(result_str),img)
cv2.waitKey()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值