标签:YOLO yolov3 xl yolo fastest 权值 py OCR
文章目录
基于YOLO-fastest-xl的OCR
github链接https://github.com/qqsuhao/yolo-fastest-with-CRNN-for-OCR
项目介绍
- 本项目参考chineseOCR项目,使用了其代码架构和CRNN部分相关的代码与训练模型。
- 基于pytorch进行训练,基于opencv的dnn模块进行推理。
- 本项目的主要区别在于将yolov3的模型替换为yolo-fastest-xl,使得原本大小为200MB左右的模型缩减为3.5MB。
- 发现了chineseOCR中的一处bug:在本项目的crnn/opencv_dnn_detect.py的text_detect函数中的33-35行,改为36-38行。
对于yolo-fastest-xl的结构的更改
- 原本的yolo-fastest-xl模型只有两层yolo层,难以应对小目标检测,尤其是文本检测。因此增加一层yolo层,更改后的模型文件存放于yolo/configs/yolo-fastest-xl-3yolo.cfg中。
运行方法
- 克隆本项目以后安装相关的运行环境。
- 建议使用pycharm打开本项目,使用vscode的话可能会出现import文件路径错误。
- 在configs.py中进行配置。其他参数不用更改,需要关注第16行。如果使用第16行,则为使用yolov3进行推理,如果使用第17行,则为使用yolo-fastest-xl进行推理。
运行demo.py就可以完成文字检测到识别的整个过程。
由于yolo-fastest-xl权值文件较小,所以随着项目一起上传。但是yolov3的权值文件太大,没有上传。读者可以从文末的链接下载(包含yolov3的权值和crnn的权值),然后把所有文件放在yolov3-ocr/weights中。 - 其他关键文件说明:
- yolo/Toonnx.py 该文件将模型加载权值以后将模型转换为onnx文件。demo.py中的推理是使用onnx文件完成的。
- yolo/weights 和 yolo/checkpoints中存放着相关的权值文件,yolo/checkpoints是训练过程中存放断点的文件夹。
- yolo/中的大部分文件都和我其他的的yolo-fastest-xl相关的项目一致,可以参考我的其他项目。
效果总结
- 在test_samples/0.jpg上进行测试,yolov3需要0.8s左右,yolo-fastest-xl需要0.4s左右。
- demo.py中有些参数在不同的模型和测试样本下可能需要进行微调。
标签:YOLO,yolov3,xl,yolo,fastest,权值,py,OCR 来源: https://blog.csdn.net/qq7835144/article/details/120867921
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。