opencv车牌识别<二>

目录

一、车牌识别算法流程

二、车牌检测


一、车牌识别算法流程

在解释ANPR代码之前,需要明白主要步骤和使用ANPR 算法的任务。ANPR 有两个主要步骤:车牌检测和车牌识别。车牌检测的目的是在整个视频帧中检测到车牌位置。当在图像中检测到车牌时,分割的车牌被传到第二个步骤,即车牌识别,它用 OCR 算法来识别车牌上的字母和数字。

下图是两个主要算法的步骤:车牌检测和车牌识别。在完成这些步骤后,程序将在摄像机的帧上绘制已检测到的车牌字符。算法有可能给出错误结果甚至不会返回结果。

上图展示了本项目的整个步骤,下面还将定义模式识别算法常用的三个额外步骤:

  • 分割:这一步会检测并裁剪图像中每个感兴趣的块 /区域;
  • 特征提取:这一步对字符图像集的每个部分进行提取;
  • 分类:这一步会从车牌识别那一步的结果中得到每个字符,或从车牌检测 (platedetection)那一步中将所得图像块分为"是车牌"或"不是车牌"。
    • 下图展示了整个算法应用中模式识别的步骤

除了这个主要的应用以外,模式识别算法的主要目的是检测和识别汽车车牌,下面简单介绍一下两个任务。

  • 如何训练模式识别系统:
  • 如何评估模式识别系统

但这两个任务比主要应用本身更重要,因为如果没有正确训练模式识别系统,整个系统可能会失败或不能正常工作。不同的模式需要不同的训练和评估类型。为了得到最好的结果,本章需要在不同环境、条件以及特征下评估所建的系统。这两个任务有时一起使用因为不同特征可产生不同的结果。

二、车牌检测

这一步要检测当前帧中所有的车牌。为了实现此功能,该步骤又分为两个主要步骤:图像分割和对分割的图像进行分类。这一步的功能不会解释因为将图像块作为一个向量特征。

在第一步(图像分割)中,将使用各种滤波器、形态学算子,以及轮廓算法来验证所获取图像中有车牌的部分。

在第二步(分类)中,对每个图像块(即,特征)将采用支持向量机(Support VectorMachine,SVM)作为分类器进行分类。在创建主要的应用之前,需训练两个不同的类车牌和非车牌号。这步所使用的图像是在汽车前面 2~ 4 米拍摄平行的正面视角彩色图像这些图像有 800 像素宽。这些要求对确保正确的图像分割很重要。可创建一个多尺度图像算法来进行检测。

下面这幅图展示了车牌检测的所有过程(都调用opencv)

  1. Sobel滤波器;
  2. 阈值算子:
  3. 闭形态学算子;
  4. 一个填充区域掩码:
  5. 用红色标记(特征图像中)可能检测到的车牌;
  6. 在执行 SVM分类器后检测车牌。
相关推荐
vocal10 分钟前
谷歌第七版Prompt Engineering—第一部分
人工智能
MonkeyKing_sunyuhua11 分钟前
5.6 Microsoft Semantic Kernel:专注于将LLM集成到现有应用中的框架
人工智能·microsoft·agent
arbboter18 分钟前
【AI插件开发】Notepad++ AI插件开发1.0发布和使用说明
人工智能·大模型·notepad++·ai助手·ai插件·aicoder·notepad++插件开发
IT_Octopus31 分钟前
AI工程pytorch小白TorchServe部署模型服务
人工智能·pytorch·python
果冻人工智能36 分钟前
AI军备竞赛:我们是不是正在造一个无法控制的神?
人工智能
暴龙胡乱写博客41 分钟前
OpenCV---图像预处理(四)
人工智能·opencv·计算机视觉
程序员辣条1 小时前
深度测评 RAG 应用评估框架:指标最全面的 RAGas
人工智能·程序员
curdcv_po1 小时前
字节跳动Trae:一款革命性的免费AI编程工具完全评测
人工智能·trae
程序员辣条1 小时前
为什么需要提示词工程?什么是提示词工程(prompt engineering)?为什么需要提示词工程?收藏我这一篇就够了!
人工智能·程序员·产品经理
孔令飞1 小时前
Go:终于有了处理未定义字段的实用方案
人工智能·云原生·go