Halcon编程实验-(4)车牌号数字+字母的识别【目的:OCR识别的应用】

article/2025/9/21 10:15:26

程序流程

1.图像采集,确定车牌区域
在这里插入图片描述
2.图像矫正,截取车牌区域
在这里插入图片描述
3.车牌号码提取
在这里插入图片描述
4.车牌号识别
在这里插入图片描述
5.车牌号显示
在这里插入图片描述

本次实验重点知识:OCR识别的应用

环境

一张含有车牌号的清晰无遮挡照片
原图:在这里插入图片描述

相关代码:

dev_update_off ()
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
// 1.图像采集部分
read_image (Image, 'C:/Users/ShineZhang/Desktop/车牌后.jpg')
decompose3 (Image, Image1, Image2, Image3) //对图像进行rgb颜色分解
trans_from_rgb (Image1, Image2, Image3, ImageResult1, ImageResult2, ImageResult3, 'hsv') //rgb转化为hsv,观察最适合分量为ImageResult2
threshold (ImageResult2, Regions, 63, 255)
opening_rectangle1 (Regions, RegionOpening, 3, 3)
fill_up (RegionOpening, RegionFillUp)
connection (RegionFillUp, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 320091, 379328)
shape_trans (SelectedRegions, RegionTrans, 'rectangle2') //变换区域形状,rectangle2:最小外接矩形
//2. 图像矫正部分
orientation_region (RegionTrans, Phi) //区域方向计算,得到弧度Phi
area_center (RegionTrans, Area, Row, Column)//获得区域坐标,面积
vector_angle_to_rigid (Row, Column, rad(180)-Phi, Row, Column,0 , HomMat2D)//生成旋转矩形,Phi>0 , [rad(180)-Phi]防止旋转后图像反转
affine_trans_image (Image, ImageAffineTrans, HomMat2D, 'constant', 'false')//旋转操作
reduce_domain (ImageAffineTrans, RegionTrans, ImageReduced)//截取车牌区域操作
//3. 车牌号码提取部分
invert_image (ImageReduced, ImageInvert) //图像反转,只能识别亮背景,暗目标
rgb1_to_gray (ImageInvert, GrayImage)
threshold (GrayImage, Regions1, 15, 128)
*opening_rectangle1 (Regions1, RegionOpening1, 3, 3)
connection (Regions1, ConnectedRegions1)
select_shape (ConnectedRegions1, SelectedRegions1, 'area', 'and', 9301.62, 15394.7)
//4.车牌号识别部分
sort_region (SelectedRegions1, SortedRegions, 'character', 'true', 'row') //连通域排序操作
read_ocr_class_mlp ('Industrial_0-9A-Z_NoRej.omc', OCRHandle) //读取识别库
do_ocr_multi_class_mlp (SortedRegions, ImageInvert, OCRHandle, Class, Confidence)//为根据给定区域字符和
//OCR分级器OCRHandle的灰度图像值,而给定的每个字符计,算出最好的类,将类返回到Class中,且将类的置信度返回到
//Confidence中。
//5.显示结果
dev_display (Image)
dev_display (SortedRegions)
for i := 1 to |Class| by 1
disp_message (WindowHandle,Class[i-1], 'image', Row+200 , -800+Column+ i*200, 'blue', 'true')   
endfor

实验效果

结果如图,本次实验未涉及汉字识别,故车牌号只有0-9,A-Z
在这里插入图片描述


http://chatgpt.dhexx.cn/article/jDqCHDKd.shtml

相关文章

车牌自动识别

一个典型的汽车车牌自动识别系统,其基本处理流程如下图所示: 车牌定位: 从整个图像中准确地检测出车牌区域,是车牌识别过程的一个重要步骤,如果定位失败或定位不完整,会直接导致最终识别失败。车牌定位方法…

智能驾驶 车牌检测和识别(四)《Android实现车牌检测和识别(可实时车牌识别)》

智能驾驶 车牌检测和识别(四)《Android实现车牌检测和识别(可实时车牌识别)》 目录 智能驾驶 车牌检测和识别(四)《Android实现车牌检测和识别(可实时车牌识别)》 1. 前言 2. 车…

数字图像处理——车牌识别(matlab)

本次大报告利用MATLAB函数功能,设计和实现了一个车牌识别系统。车牌识别系统的基本原理为:将手机拍摄到的包含车辆牌照的图像输入到计算机中进行预处理,再对牌照进行搜索、检测、定位,并分割出包含牌照字符的矩形区域,…

车牌识别算法实现及其代码实现之一:车牌区域检测

本文地址:http://blog.csdn.net/shanglianlm/article/details/78005815 本文主要处理汽车车牌的识别过程,包括三个步骤,一:车牌区域检测,本文利用车牌的颜色和形状特征确认并获取汽车的车牌位置,二&#x…

基于OpenCV 的车牌识别

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达 车牌识别是一种图像处理技术,用于识别不同车辆。这项技术被广泛用于各种安全检测中。现在让我一起基于OpenCV编写Python代码来完成这一任务。 车牌识别的相关…

车牌号识别 python + opencv

 包括算法和客户端界面,只有2个文件,surface.py是界面代码,predict.py是算法代码,界面不是重点所以用tkinter写得很简单。 使用方法: 版本:python3.4.4,opencv3.4和nu…

车牌识别 字符识别

字符结构知识在车牌识别中的应用 来源:电子技术应用 作者:中国科学技术大学 宋建才 摘要:提出了一种完全基于结构知识的字符识别方法。该方法以字符的结构特点和笔画类型、数据及位置作为识别特片生成判定时,再利用判定树对汽车牌…

【深度学习实践】基于深度学习的车牌识别(python,车牌检测+车牌识别)

车牌识别具有广泛的应用前景,基于传统方法的车牌识别效果一般比较差,随着计算机视觉技术的快速发展,深度学习的方法能够更好的完成车牌识别任务。 本文提供了车牌识别方案的部署链接,您可以在网页上体验该模型的效果:车…

C++中文车牌识别检测系统源码

下载地址:C中文车牌识别检测系统源码 其目标是成为一个简单、高效、准确的非限制场景(unconstrained situation)下的车牌识别库。 相比于其他的车牌识别系统,EasyPR有如下特点: 它基于openCV这个开源库。这意味着你可以获取全部源代码&…

车辆检测+车牌识别

车辆检测算法使用YOLOv5实现 自建数据集训练的车辆检测模型,效果还是很棒的 车牌识别使用mtcnn实现车牌检测 lprnet实现车牌号码识别 两者都是pytorch框架 整合在一个工程中实现车辆检测和车牌识别 同时使用pyqt开发可视化界面

智能驾驶 车牌检测和识别(一)《CCPD车牌数据集》

智能驾驶 车牌检测和识别(一)《CCPD车牌数据集》 目录 智能驾驶 车牌检测和识别(一)《CCPD车牌数据集》 1. 前言 2.车牌号码说明 3.车牌数据集CCPD (1)车牌数据集CCPD说明 (2&#xff09…

智能驾驶 车牌检测和识别(二)《YOLOv5实现车牌检测(含车牌检测数据集和训练代码)》

智能驾驶 车牌检测和识别(二)《YOLOv5实现车牌检测(含车牌检测数据集和训练代码)》 目录 智能驾驶 车牌检测和识别(二)《YOLOv5实现车牌检测(含车牌检测数据集和训练代码)》 1. 前…

在线合成车牌照片【模拟车牌,用于车牌识别项目测试】

1、服务发布地址: http://new.hdsxsc.com:10086/server.php?cphm冀DSX888&cpys0 2、传参说明: cphm:车牌号码【仅限合规的车牌号码规则】 cpys:车牌颜色: 0蓝色,1黄色,2白色&#xff0c…

车牌号码识别程序分享

本文参考博客使用opencv进行车牌提取及识别进行。程序部分为网上获取程序修改而来,并在其中加入了自己的注释和理解 采用pythonopencv进行程序编写。 课程设计内容分享 程序下载请前往https://download.csdn.net/download/chenkz123/10841956 一个典型的车辆牌照…

车牌图像识别

1.车牌预处理 车牌预处理过程的好坏直接影响到车牌图像进行后期处理过程,比如车牌字符分割等。车牌预处理也是尽可能的消除噪声,减少后期处理带来的不必要的麻烦。 输入的车牌是24Bit的BMP真彩色图像,车牌照有黄底黑字,蓝底白字…

基于python+OpenCV的车牌号码识别

基于pythonOpenCV的车牌号码识别 车牌识别行业已具备一定的市场规模,在电子警察、公路卡口、停车场、商业管理、汽修服务等领域已取得了部分应用。一个典型的车辆牌照识别系统一般包括以下4个部分:车辆图像获取、车牌定位、车牌字符分割和车牌字符识别 …

TensorFlow进阶:车牌号识别项目

终于算是闲下来点时间了,也不能算闲,该交的报告什么的算完事了。其他要交的东西现在还不急,然后考研的东西现在也不想看,再加上中午没睡好,下午也不想学习新的东西了,就抽出点时间把前段时间做的一个小项目…

数字图像处理--车牌识别

数字图像处理–车牌识别 主要内容 实现车牌识别 算法流程 本文中,车牌识别具体流程设计以及算法使用主要分为以下几步。 1、读取源车牌图像。 2、对原始车牌图像进行预处理:灰度化,运用基于几何运算的滤波器(开运算)消除毛刺噪声。 3、二…

数字图像处理——基于matlab的车牌号识别

希望大家有问题多多评论留言鸭 码字不易&#xff0c;老阿姨头发都没啦&#xff0c;小可爱们记得给三连鸭&#xff0c;么么哒。 &#xff08;只收藏&#xff0c;不点赞&#xff0c;好运连连会中断&#xff01;&#xff01;&#xff01;&#xff09; <--!&#xff08;源码资源…

【OpenCV实战】简洁易懂的车牌号识别Python+OpenCV实现“超详解”(含代码)

前面4篇博客介绍了OpenCV图像处理的基础知识&#xff0c;本篇博客利用前4篇的知识完成一个小项目——车牌号码识别。该篇博客的代码可以满足小区门禁车牌号的识别。本篇博客是前4篇博客知识的一个综合运用。感觉学会了这个可以实现一系列的图像识别任务。。。毕竟好多技巧都是共…