opencv车牌识别<一>

目录

一、概述  

二、ANPR简介


一、概述  

        本文将介绍创建自动车牌识别(Automatic Number Plate Recognition,ANPR)所需的步骤。对于不同的情形,实现自动车牌识别会用不同的方法和技术,例如,IR 摄像机、固定汽车位置、光照条件等。本章着手构造一个用来检测汽车车牌 ANPR 的应用,该应用处理的图像是从汽车 2~3 米处拍摄的,拍摄环境的光昏暗模糊,并且与地面不平行、车牌在图像中有轻微的扭曲。本文的主要目标是介绍图像分割、特征提取、模式识别基础以及两个重要的模式识别算法:支持向量机(Support Vector Machine,SVM)和人工神经网络(Artificial NeuralNetwork,ANN)、本章的主要内容

  1. ANPR
  2. 车牌检测
  3. 车牌识别

二、ANPR简介

   自动车牌识别(Automatic Number Plate Recognition,ANPR)也称自动牌照识别(AutomaticLicense-Plate Recognition,ALPR)、自动车辆识别(Automatic Vehicle Identifcation,AVI)、洗车车牌识别(Car Plate Recognition,CPR),它是一种使用光学字符识别(Optical CharacterRecognition,OCR)和其他方法(如,用图像分割与检测)来获取车辆牌照的监控方法。对于一个ANPR系统,其最好结果可用一个红外(IR)摄像机来获得数据,因为在分割这一步中,对检测和 OCR 分割很简单、干净,并且误差最小。这是由光学的一些基本原理决定的,例如人射角等于反射角,当人看到光滑表面(如,平面镜)时就会有这样的反映。粗糙表面(例如,纸)的反射会导致漫射或散射。多数车牌有一个称为回射(retro-reflection)的特性,车牌表面覆盖着一种材料,它由许多微小半球颗粒构成,会导致光线沿路反射回去,可从下图看到这种反射效果。

       如果使用结合了结构性红外光学投影器的摄像机,就可只获取红外光,这样就能得到很高品质的图像,对这种图像进行分割,然后检测和识别车牌。这种情形下的车牌独立于任意光照环境,如下图所示。

       本文并不会使用 IR 图像,而是使用普通图像。这样做并不会得到最好的结果,与使用红外摄像机相比,这种做法会得到较高的检测错误和错误识别率,但这两种方法的步骤一样。

        每个国家都有不同的车牌尺寸和规格,了解这些规格对得到最好结果并减少错误很有用。本章所使用的算法是为了解释车牌识别的基础知识,其规范来自西班牙车牌,但可适用于任意国家或规范。

        本章将使用西班牙车牌。在西班牙,有不同大小和形状的车牌。本章采用最普通(大)的车牌,它的大小为520mmx110mm。两组字符由41mm 的空间分离,每个字符间的距离为14mm。第一组字符为四个数字,第二组有三个字母,但不包括元音字母 A、E、I、O、U也不包括字母或Q,所有字符的大小为45mmx77mm。

       这些数据对字符分割很重要,因为可用这些数据来检查字符和空格,以验证得到的是个字符而不是其他由图像分割得到的对象。下图就是一个这样的车牌。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/146683.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

spring cloud之配置中心

Config 统一配置中心(*) 1.简介 # 统一配置中心 - 官网:https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.2.3.RELEASE/reference/html/#_spring_cloud_config_server- config 分为 config server 和 config client。用来统一管理所有微服务的配置统一配置…

【Python 千题 —— 基础篇】欢迎光临

题目描述 题目描述 欢迎光临。为列表中的每个嘉宾打印欢迎光临语句。例如,有一份嘉宾列表 ["李二狗", "王子鸣"],则需要根据嘉宾名单打印输出: 欢迎光临!李二狗。 欢迎光临!王子鸣。下面是一份…

基于JAX-WS的RESTful web服务返回通过JAXB注解生成的xml文档

基于JAX-WS编写的RESTful web服务,返回xml文档。这个xml文档可以基于JAXB注解的形式来生成,简化xml的生成。 例如,下面RegisterResponse 这个类使用了JAXB的注解: package com.thb.server.register;import jakarta.xml.bind.ann…

C语言--指针与数组--遍历数组的n种方式【详细】

一.一维数组名的含义 arr一般表示数组的其实地址(除了两种例外) 1.在定义数组的同一个函数中(不是形参),求sizeof(arr),求整个数组的字节数 2.在定义数组的同一个函数中(不是形参),&arr1,加整个数组的大小 (经常考试) 3.除上面以外,arr都表示数组的…

智能穿戴AR眼镜主板方案定制_MTK平台AR智能眼镜PCB板开发

AR智能眼镜,是采用了多种技术实现增强现实效果,是将虚拟信息和现实场景相结合的智能设备。 AR智能眼镜硬件上,包括多个传感器、显示装置和处理器等。其中,传感器用于捕捉用户的动作和环境信息,如摄像头、陀螺仪、加速…

【python】爬取酷狗音乐Top500排行榜【附源码】

一、导入必要的模块: 这篇博客将介绍如何使用Python编写一个爬虫程序,从斗鱼直播网站上获取图片信息并保存到本地。我们将使用requests模块发送HTTP请求和接收响应,以及os模块处理文件和目录操作。 如果出现模块报错 进入控制台输入&#xff…

Axure原型设计工具怎么样?有替代软件吗?

Axurerp是一种快速原型设计工具,可以制作高度互动的HTML原型。设计师不仅可以使用Axure绘制线框图和原型,还可以在Axurerp中完成一系列用户体验设计。在本文中,我们将根据用户体验设计师的真实经验,触发用户体验设计师的实际工作&…

(论文阅读30/100)Convolutional Pose Machines

30.文献阅读笔记CPMs 简介 题目 Convolutional Pose Machines 作者 Shih-En Wei, Varun Ramakrishna, Takeo Kanade, and Yaser Sheikh, CVPR, 2016. 原文链接 https://arxiv.org/pdf/1602.00134.pdf 关键词 Convolutional Pose Machines(CPMs)…

数据库管理-第116期 Oracle Exadata 06-ESS-下(202301114)

数据库管理-第116期 Oracle Exadata 06-ESS-下(202301114) 距离上一次正儿八经的技术分享又过了整整一周了,距离上一期Exadata专题文章也过了11天了,今天一鼓作气把ESS写完,毕竟明天又要飞北京了。 1 Smart Scan 其…

SpringCloud Alibaba(中):服务熔断降级-Sentinel

Sentinel Sentinel是阿里巴巴开源的分布式系统流量防卫防护组件,主要对分布式系统中的流量进行控制、熔断降级等保护操作。Sentinel的目标是成为互联网级别分布式系统的流量防卫防护组件,它与系统的各个部分集成,保护着系统的入口和出口。 …

【蓝桥杯选拔赛真题20】C++求正方形面积 第十二届蓝桥杯青少年创意编程大赛C++编程选拔赛真题解析

目录 C/C++求正方形面积 一、题目要求 1、编程实现 2、输入输出 二、算法分析

Hadoop3.3.4分布式安装

安装前提:已经配置好java环境,所有机器之间ssh的免密登录。 注意:下文中的flinkv1、flinkv2、flinkv3是三台服务器的别名 1.集群部署规划 注意:NameNode和SecondaryNameNode不要安装在同一台服务器 注意:ResourceMan…

软件测试/测试开发丨​利用人工智能ChatGPT批量生成测试数据

点此获取更多相关资料 简介 测试数据是指一组专注于为测试服务的数据,既可以作为功能的输入去验证输出,也可以去触发各类异常场景。 测试数据的设计尤为重要,等价类、边界值、正交法等测试用例设计方法都是为了更全面地设计对应的测试数据…

上机实验三 图的最小生成树算法设计 西安石油大学数据结构

二叉树设计 实验名称:二叉树设计 (1)实验目的: 1) 掌握二叉树的逻辑结构。 2) 掌握二叉树的二叉链表存储结构; 3) 掌握基于二叉链表存储的二叉树的遍历等操作的实现。 &#x…

F : DS图遍历--广度优先搜索

Description 给出一个图的邻接矩阵,对图进行广度优先搜索,从顶点0开始 注意:图n个顶点编号从0到n-1 如果图不连通,则对尚未访问的编号结点继续进行广度优先搜索,直到所有结点被访问 Input 第一行输入t&#xff0c…

Camtasia 2024中文版功能介绍

在如今的数字时代,屏幕录制已成为许多工作或学习中不可或缺的一部分,无论是制作教学视频、演示软件功能,还是为了录制游戏过程,屏幕录制软件都扮演着至关重要的角色。实际上屏幕录制不仅仅可以单纯录制屏幕,还能玩出非…

【Kotlin精简】第8章 协程

1 简介 Kotlin 中的协程提供了一种全新处理并发的方式,您可以在 Android 平台上使用它来简化异步执行的代码。协程是从 Kotlin 1.3 版本开始引入,但这一概念在编程世界诞生的黎明之际就有了,最早使用协程的编程语言可以追溯到 1967 年的 Sim…

相约黄浦江畔,汇聚AI与边缘计算的力量

很高兴告诉您:全球边缘计算大会上海站即将盛大启幕! 第八届全球边缘计算大会将于12月16日(周六)在上海黄浦江旁边的三至喜来登酒店召开,距离这场边缘计算年度盛会开幕仅剩最后35天啦! 参会收益 开阔视野&am…

咱就是问坐发动机上跑得快吗?意塔杰特Dragster559 Twin

这家伙可以说是这次米兰车展踏板车里面最怪的了,不过性能方面有点出众,外观也是极为独特的。 车架采用的是裸露的编制车架,这也符合这个品牌的风格,这也是他们家的一个卖点了,不过这个车好像还是工程样车的状态&#x…

并发编程由浅及深(一)

并发编程重要吗?当然重要,因为并发在我们的项目中真实存在,如果你不能充分了解它那么很可能造成严重的生产事故。最近隔壁项目组出了一个问题,每次请求接口之后都发现线程固定增加了5个,而且线程数一直增加没有减少&am…