c# - 什么是车牌检测的好算法?

标签 c# image computer-vision ocr object-detection

<分区>

背景

在我大学的期末项目中,我正在开发一个车牌检测应用程序。我认为自己是一名中级程序员,但我的数学知识缺乏中学以上的任何东西,这使得生成正确的公式比它可能应该更难。

我花了很多时间查找学术论文,例如:

说到数学,我迷路了。由于这个测试,各种图形图像被证明是有效的,例如:

alt text

alt text

但是,这种方法仅适用于该特定图像,如果将这些技术应用于不同的图像,我敢肯定会发生较差的转换。我读过一个名为“底帽形态变换”的公式,它执行以下操作:

Basically, the trans- formation keeps all the dark details of the picture, and eliminates everything else (including bigger dark regions and light regions).

我找不到太多关于此的信息,但是报告末尾附近的文档中的图片显示了它的有效性。

其他约束

  • 使用 C# 开发
  • 将项目仅限于英国车牌
  • 我可以选择要转换的图片作为演示

问题

我需要关于应该重点开发哪些转换技术以及哪些算法可以帮助我的建议。

编辑:关于 Continued - Vehicle License Plate Detection 的新信息

最佳答案

您可以采用多种方法,但首先想到的策略是:

  • 发现/研究:确定您可能需要识别的颜色和字体集。如果您的样本图片代表了大多数英国车牌,那么您的工作就会变得更容易。例如。简单、独特的字体和白色背景上的黑色字体
  • 代码:尝试识别图像的矩形区域,其中颜色主要为白色和黑色。这不是一个非常复杂的数学问题,它应该让您专注于车牌区域。
  • 代码:对您的子区域进行一些清理,例如转换为纯黑白(单色),并可能缩放/移动到一个漂亮、紧凑的矩形。
  • 使用 API:接下来在子选择的图像区域上使用现有的 OCR(光学字符识别)算法,看看您是否可以阅读文本。

就像我说的,这是众多策略中的一种,但我认为它需要最少的繁重数学运算...也就是说,如果您能找到适合您的 OCR 实现。

关于c# - 什么是车牌检测的好算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4707607/

相关文章:

c# - 在类库中实例化 CaSTLe Windsor 容器时的最佳实践是什么?

android - Android 增强现实应用程序的图像识别

algorithm - OpenCV矩形绘制函数

image - 扭曲图像出现在圆柱投影中

OpenCV VideoCapture 读取问题

c# - 获取线程 Cpu 使用率

c# - Windows 窗体 TreeView - 绑定(bind)分层递归数据源

c# - 为什么两个空列表不相等?

javascript - jquery从div中的一组图像中获取图像元素ID

Java 模板匹配越界