FakeLPR车牌识别(3) ----- 车牌端到端识别

本文详细介绍了如何使用Caffe进行端到端车牌识别的模型训练,包括生成车牌数据、创建LMDB文件以及训练过程。首先,通过creat_e2e_data.py生成训练数据,然后利用creat_e2e_lmdb.py制作LMDB文件。训练模型保存在.../FakeLPR/train/e2e_snapshot。模型分为31类省份、24类城市及34类其他字符。如果你使用真实车牌进行训练,欢迎分享结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍

前一篇介绍了车牌的角点定位,这一篇就到端到端识别车牌了

1.粗定位

2.角点检测矫正

3.端到端识别字符

 

本文介绍第三步,端到端识别车牌,思路和前一篇中的角点检测一样,通过 caffe 实现多标签分类来识别车牌


主要步骤

1.生成训练数据和lmdb文件

# 从项目主目录里
cd train/datasets

# 生成端到端车牌检测训练数据
python creat_e2e_data.py

# 生成端到端车牌检测lmdb文件
python creat_e2e_lmdb.py

2.启动训练

# 从项目主目录里
cd train
sh ./train_e2e.sh

以上两步就可以训练出端到端车牌检测模型,模型文件保存在 .../FakeLPR/train/e2e_snapshot

下面详细介绍一下


生成车牌数据

cd 到 train/datasets 文件夹

# 项目目录里
cd train/datasets

运行  creat_e2e_data.py 生成角点检测训练数据

# 生成角点检测训练数据
python creat_e2e_data.py

生成的数据长这样

脚本实际上就是把前一步 keypoint 得到的结果保存下来,具体的可以看代码

还可以替换成自己的角点检测模型,在 .../FakeLPR/train/datasets/models/keypoint.caffemodel


生出e2e车牌检测 LMDB 文件

运行  creat_e2e_lmdb.py 生成角点检测训练用的两个lmdb文件

# 生成端到端车牌检测lmdb文件
python creat_e2e_lmdb.py

生成的 lmdb 文件存在 .../FakeLPR/train/datasets/lmdb 文件夹下,两个 lmdb 也是分别对应着数据和标签

因为在 keypoint 中生成的数据包含了车牌信息,我们直接读取就行了,矫正车牌的文件名没有变

和前面 keypoint 一样的,先将车牌信息生成 e2e_label.txt ,再生成 lmdb 文件

文件名和7个字符对应的类别

同样,这里也可以用你自己的真实车牌图片,生成 e2e_label.txt ,再生成 LMDB 来训练

 

其他说明:

类别分别是

第1个字符——省份:31类

第2个字符——城市:24类 (24个英文字符,I/O 除外)

第3-7个字符——其他字符:34类 (24个英文字符和 0-9)


训练

启动训练

# 从项目主目录里
cd train
sh ./train_e2e.sh

模型文件保存在 .../FakeLPR/train/e2e_snapshot

 

模型调用和前面的差不多,代码在 .../FakeLPR/py2/e2e_char.py 中


结束

到这里就结束,训练过程也完了,过程并不复杂,容易实现并自行修改

如果有朋友用真实车牌训练了这个项目,请告诉我一下结果怎么样

希望这个项目对你有帮助,有问题也可留言

 

            

(打赏个鸡腿吧)

(没有鸡腿也行,那就关注下我的公众号吧,不是技术号哦)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值