我们可以训练一个 haar-cascade 来检测数字和字母吗?

Posted

技术标签:

【中文标题】我们可以训练一个 haar-cascade 来检测数字和字母吗?【英文标题】:Can we train a haar-cascade to detect numbers and alphabets? 【发布时间】:2017-08-16 21:48:39 【问题描述】:

我们想要训练一种特定的字体和从 A 到 Z 的所有字母以及从 0 到 9 的所有数字。每个有多少正样本和负样本可以完成这项工作? 虽然这将是一项乏味的任务,但 tesseract 读取移动车辆的车牌并不是那么准确。对完成这项任务还有其他建议吗?

【问题讨论】:

【参考方案1】:

我引用以下***文章-https://en.m.wikipedia.org/wiki/Automatic_number_plate_recognition

该软件需要七种主要算法来识别车牌:

1.车牌定位——负责查找和隔离图片上的车牌。

2.板的方向和尺寸——补偿板的倾斜并将尺寸调整到所需的尺寸。

3.Normalization - 调整图像的亮度和对比度。

4.字符分割 - 找到板上的单个字符。

5.光学字符识别。

6.句法/几何分析 - 根据国家/地区特定规则检查字符和位置。

7. 对多个字段/图像的识别值进行平均,以产生更可靠或更有信心的结果。尤其是因为任何单个图像都可能包含反射光耀斑、被部分遮挡或其他临时效果。

回到您的问题,可以使用 Haar 级联来定位车牌。但是对于 OCR 部分,我个人会推荐一个 CNN 网络。你可以在这里找到一个实现-https://matthewearl.github.io/2016/05/06/cnn-anpr/

还有这个专门用于任务的库-https://github.com/openalpr/openalpr 也可以查看

对于哈尔级联-https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_licence_plate_rus_16stages.xml

祝你好运

【讨论】:

以上是关于我们可以训练一个 haar-cascade 来检测数字和字母吗?的主要内容,如果未能解决你的问题,请参考以下文章

目标干脆面君:动动手,用TensorFlow API训练出自己的目标检测模型

手把手教你使用 YOLOV5 训练目标检测模型

[OpenCV实战]8 深度学习目标检测网络YOLOv3的训练

OpenCV vs Dlib 人脸检测比较分析

opencv_人脸检测模型训练人脸识别

创建自定义检测模型 - 图像对象检测