基于yolov5和Tesseract-OCR车牌识别项目 Linux系统上搭建运行(大概结构)

该文介绍了一个利用yolov5进行目标检测,然后通过Tesseract-OCR进行字符识别的车牌识别项目。首先,文章详细阐述了如何搭建环境,使用labelme或labelImg标注数据,训练yolov5模型,并进行截图。接着,讨论了Tesseract-OCR的安装,图像预处理,以及如何训练自定义的文字库以提高识别准确性。文章提供了详细的步骤和资源链接,适合对此类项目感兴趣的读者进一步实践。
摘要由CSDN通过智能技术生成

项目大概分为两部分,首先使用yolov5进行目标检测并截图;然后对图片一系列的处理后使用Tesseract-OCR进行字符识别(本文为简易版框架结构,如果看完感兴趣可以在文末跳转看细节操作)

yolov5检测部分

1.环境搭建

首先创建虚拟环境,然后pip install -r requirements.txt自动安装所需环境,可以临时换源下载速度很快,否则下载很久且可能会timeout报错。

2.数据处理

1)首先用labelme或者labelImg进行数据集的标注画框,也可以下载我标注好的,质量较高手工一张一张筛选过。
2)创建数据集的yaml配置文件。

3.模型训练并截图

输入训练命令开启训练如果自己没有服务器配置不太支持的话这里也可以使用我训练好的模型,里面有imgsz分别为640和800的两个模型,都是用了八百多张的数据集且都训练了300轮,效果不错检测如下。
在这里插入图片描述
得分基本上都在0.95以上,输入命令进行截取目标框进行后续处理并识别文字。
在这里插入图片描述

Tesseract-OCR识别部分

1.环境搭建

以下搭建环境所需下载的依赖和安装包可以通过以下命令下载(官网下载速度缓慢且较大),也可以使用这边我已经下载好了的比较快。以下操作建议新建个专门OCR的目录下进行。

下载Tesseract-OCR和leptonica以及相关依赖,解压后编译、安装、配置环境变量等。

2.图像处理

首先官网下载中文语言包(提供的资源里有)放入环境中tessdata目录下,才能被识别到。
再进行代码进行数据清洗处理车牌截图,由这样
在这里插入图片描述
变成这样
在这里插入图片描述
再变成这样
在这里插入图片描述
最后得到这样
在这里插入图片描述
代码中使用放入tessdata中的中文语言包进行识别,发现识别效果不尽人意,这时候我们就需要通过训练自己的文字来提高识别率。

3.文字训练

下载训练工具(提供的资源里的jTessBoxEditor),打开饼并进行合并tif图片,然后进行文字框调整
在这里插入图片描述
注意这里的insert只能选中一个框后进行插入,如果存在一张图片一个框都没有不能进行insert只能手动添加,具体细节通过文末的细节文章查看。
最后输入一系列的命令进行训练合并等,生成自己训练的语言包,以traineddata为后缀的文件,将其放入tessdata中即可识别。

如果看完感兴趣想要动手操作,具体的细节步骤、操作命令以及报错解决措施等在此文章中。
基于yolov5和Tesseract-OCR车牌识别项目 Linux系统上搭建运行

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值