《数字图像分析》实验
一 实验内容:
实验一 选定一张N×N的车牌彩色图像,进行256级的灰度处
理。
实验二 将N×N的灰度图像统计出直方图。 实验三 将256级灰度图像均衡化(图像增强)。
实验四 用Sobel算子(或者自己比较熟悉的算法)进行边缘处
理。
实验五 用模版匹配法寻找车牌位置,截取出车牌图像。 实验六 将截取的车牌灰度图像二值化。 二 实验要求:
1. 分别写出每个实验的实验分析 2. 编写并运行程序 3. 进行封装
4. 13周提交电子版的实验报告,包括:
实验分析,执行文件,源程序
1.4 车牌识别系统简介
系统构架图如下:
通过视频采集卡与计算机相连 CCD摄像头 触发拍照的感应线圈或其他传感器
图 1-2 车牌识别系统总构架图
车辆牌照识别系统一般可顺序地分为车辆图像获取,车辆牌照子图像定位与分割,字符识别(OCR)三大部分。如图1-3所示。
图像捕捉 与获取 牌照子图像 定位与分割 牌照字符识别 图1-3 车辆牌照识别 (LPR) 系统流程图
在第一部分图像捕捉与获取中,主要通过CCD摄像头与计算机的视频捕捉卡直接相连来完成图像采集,可以实时在监控图像中抓取到含有车辆的图像。该部分功能可简单调用计算机视频捕捉卡厂商提供的各种软件开发包工具即可实现。
车辆牌照识别系统(LPR)的关键在于第二和第三部分。牌照定位又决定其后的车牌字符识别,因此牌照定位是车牌识别系统的关键的关键,牌照定位就是从包含整个车辆的图像中找到牌照区域的位置。目前,已经提出了很多种方法,一个共同的出发点是:通过牌照区域
的特征来判断牌照。
利用的车牌特征主要包括:
①车牌区域内的边缘灰度直方图统计特征。车牌区域内的边缘灰度直方图具有两个明显且分离的分布中心。
②车牌的几何特征,即车牌的高、宽、高定比在一定的范围内。
③车牌区域的灰度分布特征,穿过车牌的水平直线其灰度呈现连续的峰、谷、峰的分布。
④车牌区域水平或垂直投影特征。车牌区域水平或垂直投影呈现连续的峰、谷、峰的分布。
⑤车牌形状特征.字符排列格式特征。车牌有矩形边框.字符位于矩形框中且有间隔。
⑥频谱特征,即对图像做行或列的DFT变换.其频谱图中包含了车牌的位置信息。
根据不同的实现方法,大致可以把现有的定位方法主要分为三类,直接法,神经网络法以及基于矢量量化的方法。
直接法:
这类方法直接分析图像的特征。例如,L. Salgado[27],Yuntao Cui[28][29]等都提出了根据牌照区域中灰度或颜色变化频率较高来确定牌照区域,H. A. Hegt[30]等人提出通过模板匹配的方法来寻找牌照的四个角,然后通过牌照区域的灰度变化频率较快来确认,但都没有给出具体的做法。
Young Sung Soh等人的算法的研究对象主要是图像中同一条水平采样线上的灰度。首先用Sobel算子对采样线进行处理,得到这条采样线的边缘轮廓。对边缘轮廓作以下处理:(1)去掉负值部分。(2)去掉一些小的峰值点(如果小于某一阈值就认为是噪声)。在剩下的峰值点中,如果存在一些点,它们之间的距离在一定的范围内,个数也达到了一定的界限,就认为这条采样线穿过牌照,这些点所在的区域是牌照区域。在这条采样线的上下继续搜索,就可以定位整个牌照
区域。
神经网络法:
利用神经网络的方法定位牌照也是一类较为常见的方法。Thanongsak Sirithinaphong和Kosin Chamnongthai提出利用BP网络定位牌照。M. H. Ter Brugge等人提出利用DTCNN(Discrete Time Cellular Neural Network)和模糊逻辑结合的方法。S. H. Park等人利用TDNN(Time Delay Neural Network)确定牌照区域。他们的基本思路是:首先利用神经网络对图像中一个个小窗口进行分类,然后对分类结果进行综合,从而得到牌照的准确定位。
基于矢量量化的牌照定位方法:
最近R. Zunino和S. Rovetta[31][32]提出了一种基于矢量量化的牌照定位方法。这种方法有以下几个优点:(1)在对牌照定位的同时进行了图像的压缩。(2)对图像的处理不是以像素为单位,而是以块为单位,提高了处理速度。(3)容易识别图像中没有牌照的情况。
还有人Sang Kyoon Kim等提出的基于遗传算法的车牌分割LPR等。
对车牌字符的识别,与通用的OCR识别方法类似。目前用于车牌字符识别(OCR)中的算法主要有:
基于模板匹配的OCR算法 基于人工神经网络的OCR算法。
注: 分割后车辆牌照子图像进行一系列预处理,如归一化,旋转校正,二值化后或者笔画细化或者笔画膨胀等操作后,才进行通用的OCR识别。
关于边缘检测
所谓边缘是指其周围象素灰度值有阶跃变化或屋顶变化的那些象素点的集合。边缘广泛存在于物体与背景之间、物体与物体之间、
图像基元与基元之间。它是图像分割所依赖的重要特征。物体的边缘是由灰度的不连续所反映的。经典的边缘提取方法是考察图像的每个象素在某个邻域内灰度的变化,利用边缘邻近一阶或二阶方向导数变化规律,用简单的方法检测边缘。这种方法为边缘检测局部算子法。 边缘的种类分为两种:一为阶跃状边缘,它两边的象素的灰度值有着显著的不同;一是屋顶状边缘,它位于灰度值从增加到减少的变化的转折点。
边缘检测算子检查每个象素点的邻域并对灰度变化率进行量化,也包括方向的确定。大多数使用基于方向导数的掩模求卷积的方法。下面是几种常见的边缘检测算子。 (1)Roberts边缘检测算子
Roberts边缘检测算子是一种利用局部差分算子寻找边缘的算子。由下列公式给出:
g(x,y)f(x,y)f(x1,y1)2f(x,y)f(x,y1)21/2 (4-1)
(2) Sobel 边缘检测算子
如图4-1所示的两个卷积核形成了sobel边缘算子,图像中的每个点都要这两个核做卷积,一个核对垂直的边缘响应最大,另一个对水平边缘响应最大。两个卷积的最大值作为该点的输出。运算结果是一幅边缘幅度图像。
12100 0121101202 101图4-1 Sobel边缘检测算子
(2) Prewitt边缘算子
如下图所示的两个卷积核形成了Prewitt边缘算子。和利用Sobel算子的方法一样,图像中的每个点都用这两个核进行卷积,取最大值作为输出。也产生一幅边缘幅度图像。
111000 111101101 101图4-2 Prewitt边缘检测算子
(3) Krisch 边缘算子
如4-3图所示的8个卷积核组成了Krisch边缘算子。图像中的每个点都用8个掩模进行卷积,每个掩模都对某个特定的边缘方向作出最大响应,所有8个方向中的最大值作为边缘幅度图像的输出。最大响应掩模的序号构成了边缘方向的编码。
555355303 305 333333333333303503 555553335305 335533503 533333305 355553503 333图4-3 Krisch 边缘算子
(4)高斯—拉普拉斯算子
拉普拉斯算子是对二维函数进行运算的二阶导数算子。通常使用的拉普拉斯算子如下图(图4-4)所示。
244440804824880402444244 42图4-4 拉普拉斯边缘检测算子
4.3 Hough 变换
Hough 变换是利用图像全局特性而将边缘象素连接起来组成区域封闭边界的一种方法。在预先知道区域形状的条件下,可以很方便地得到边界曲线而将不连续的边缘象素点连接起来。哈夫变换的主要优点是受噪声和曲线间断的影响较小。利用哈夫变换还可以直接检测某些已知形状的目标。
利用哈夫变换可以减少数据的计算量,哈夫变换的基本思想是点—线的对偶性。
Hough 变换是将平面坐标用极坐标来表示,如直线方程y=mx+b表示为:
r=xcosθ+ysinθ
(4-2)
使得x,y平面的任意一直线的Hough变换是r,θ空间中的一个点。而x,y平面上的任一点都对应了r,θ空间的一条正弦曲线。
为了找出这些点所构成的直线段,将r,θ空间量化成许多小方格,根据每一个(x,y)点代入θ的量化值,算出各个r值(经量化),落在某个小方格内,此小方格计数加1,统计所有点后,则有大的计数值的小方格对应于共线点,其(r,θ)可作为直线拟合参数。
利用Hough变换来检测图像中是共线的点就可以极大的减少计算量。只需要在参数空间里进行简单的累加统计来完成检测任务。