# 主要针对国内银行(国外银行好像也还行)的识别
### 是毕业设计
## 包含内容 ⭐
- [x] 银行卡矫正
- [x] YOLOv8 实现卡号/有效期区域定位
- [x] CRNN 实现端到端卡号和有效期识别
- [x] 根据卡号确定银行名称等信息
- [x] 可操作的互动型界面
暂时识别率还是有点惨,在尝试使用同一个网络同时解决卡号和有效期的识别,存在正确识别卡号但是有效期识别错误的情况
update: 最后还是放弃了用一个网络的做法,因为有效期的数据集太小了
update 05.03.23: 识别率干到 90%+了但是有效期的识别还是不太行,依旧有比较多正确识别卡号但是有效期出错的情况。数据集太少了没办法,暂时也没有更多时间去做模拟数据集,如果有想做这方面工作的我觉得可以往这个方向走~
1. 训练定位的数据集开源在 roboflow 上,只有最后一个 version 包含银联标志定位,如果不需要可以选择其它的。一共标注了 600+ 图片,增强 3x,到 1500+ 张,已经可以在 YOLOv8 上取得非常好的效果(YOLOv5 会出现卡号框不全的问题,但我没有做更多深入研究)。
roboflow link : https://universe.roboflow.com/i-need-this-for-graduation/creditcardorbankcard
2. 因为卡号的数据集也不大,而 CRNN 基本上需要上万张才能得到一个不错的效果。在尝试了许多方案之后,最后选择使用“真实数据集增强 + 模拟数据集”的方案来共同构建训练需要的数据集。仅用真实数据集会过拟合+泛化能力差。单独使用模拟数据集在尝试许多方案后最终能达到 80% 左右的识别率,不太高。联合两类数据集最终做到了约 94% 的识别率,且泛化能力还不错~
3. 在 CRNN 原有的 CNN 上做到了 92% ,我把它的 CNN backbone 换为了 LCNet 以后做到了 94% (仅卡号)。日期的准确率很高,但是因为我手里的数据集太小了所以泛化能力极差,认为该准确率没有太多参考价值。
4. 我的训练参数为 epoch = 100 ; batch_size = 64 ; lr = 0.0001 ; optim = 'adam',在 50-60epoch 附近达到最高识别率。
5. 使用 yolov8n,在 50epoch 左右达到最佳。
6. 增强数据集的获取等相关代码可以在 ./scripts/ 下找到,我使用的是那个你在网上随处都可以找到的四个数字的数据集为基础来操作拼接的。使用时可能需要根据情况自己调整参数(因为我后续还用这些代码做了其它增强,有修改一些参数)
7. 五万多张数据集在我的 1070max-q 上以上述参数跑完 100 epoches 大约需要 12 个小时,供参考。由于 ddl 比较近了所以我也没有探索过多的提高识别率的方案,如果条件允许你也可以去尝试更多。./crnn/model.py 中添加的 mobilenetv3 我还没有来得及测试,可用性未知,可能还需要一些修改。
...更多内容有待完善...
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
<项目介绍> - 包含内容 : 银行卡矫正 YOLOv8 实现卡号/有效期区域定位 CRNN 实现端到端卡号和有效期识别 根据卡号确定银行名称等信息 可操作的互动型界面 - 不懂运行,下载完可以私聊问,可远程教学 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
资源推荐
资源详情
资源评论
收起资源包目录
信用卡卡号和有效期的识别,同时会根据卡号显示银行名称等信息.zip (29个子文件)
CreditCard-OCR-master
gui.py 12KB
crnn
evaluate.py 3KB
predict.py 2KB
dataset.py 3KB
model.py 7KB
train.py 5KB
ctc_decoder.py 5KB
config.py 496B
process_result.py 57KB
test
535.jpg 48KB
demo.jpg 1.4MB
545.jpg 47KB
520.jpg 39KB
163.jpg 43KB
531.jpg 54KB
393.jpg 41KB
388.jpg 38KB
models
yolo_best.pt 5.96MB
crnn_lcnet_card.pt 21.01MB
crnn_date.pt 29.9MB
.gitignore 140B
README.MD 3KB
rectify.py 3KB
yolo
CreditCard.yaml 135B
yolov8.py 583B
scripts
get_crnn_val.py 791B
get_crnn_data.py 6KB
ICDAR2015toYOLOv5.py 2KB
process_crnn_data.py 2KB
共 29 条
- 1
资源评论
程序员无锋
- 粉丝: 3680
- 资源: 2264
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 市场营销职业规划.pptx
- 广联达2024最新3226写锁与加密狗授权工具2.6锁
- C++ 中 std::unordered-map 与 std::map:容器选型的深度剖析
- java学生考勤管理系统源码数据库 MySQL源码类型 WebForm
- 此工具集成资产探测半自动化,WEB渗透,burp及浏览器插件,社工钓鱼,APP小程序渗透,批量漏洞扫描,漏洞利用,内网渗透,隧道代理,免杀,Windows及linux应急响应,训练靶场环境部署.zip
- 游乐场快速通行系统QuickPass的改进算法研究与模拟
- 深度解析 C++ 中 final 和 override 关键字的强大功能与应用
- LCD1602案例分析
- C#ASP.NET协同办公管理考勤子系统源码带文档数据库 SQL2012源码类型 WebForm
- C#环境下433MHz高频射频卡开发详解与智能门禁系统实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功