基于FPGA的车牌识别系统技术报告

上传人:油条 文档编号:39814922 上传时间:2018-05-20 格式:DOC 页数:9 大小:737KB
返回 下载 相关 举报
基于FPGA的车牌识别系统技术报告_第1页
第1页 / 共9页
基于FPGA的车牌识别系统技术报告_第2页
第2页 / 共9页
基于FPGA的车牌识别系统技术报告_第3页
第3页 / 共9页
基于FPGA的车牌识别系统技术报告_第4页
第4页 / 共9页
基于FPGA的车牌识别系统技术报告_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《基于FPGA的车牌识别系统技术报告》由会员分享,可在线阅读,更多相关《基于FPGA的车牌识别系统技术报告(9页珍藏版)》请在金锄头文库上搜索。

1、基于基于 FPGA 的车牌识别系统的车牌识别系统智能交通系统(Intelligent Transportation System,ITS)是一种将计算机、信息、通讯 及自动化控制技术相结合的运用于交通方面的现代化管理体系。它的主要功能是解决城市 交通拥挤和堵塞问题,在不增加现有交通道路建设的情况下,运用现代化的信息和通信方 面的技术,提高交通道路的通行能力,改善交通拥挤问题。 汽车牌照识别技术(LicensePlateReeognition,LPR)是一种专用的计算机视觉系统,在智 能交通系统中占有极其重要的地位。该系统的主要功能是,从一副含有车牌的汽车图片中, 自动定位出车牌图像,并对车牌上

2、的字符进行分割,最后识别出分割后的单个字符1。1、系统框图、系统框图整个系统可以大致分为下面几个模块:图图 1-1 系统模块图系统模块图 系统的处理过程如下图所示:图图 1-2 系统处理流程系统处理流程2、算法介绍、算法介绍下面就对每个步骤的具体算法进行介绍: 1、 预处理部分主要作用是为了增强图像和去除噪声,一边在后续处理时减少误差。使用 的具体方法是先对图像进行拉氏变换和梯度变换来增强图像的边缘和细节。由于采集 到的图像所包含的噪声属于高斯噪声,所以进行高斯滤波来去噪2。拉式变换:拉式变换: 拉式算子:上式中 x 值对应像素点所在位置的行数,y 为所在位置的列数,f(x,y)为在第 x 行

3、 y 列 的像素点的像素值。所以拉式变换就转化为对待处理像素的邻域像素的带参运算。 梯度变换:梯度变换: 梯度算子:同样梯度算子转换成相应像素点的带参运算。高斯滤 波的原理与拉氏变换和梯度变换相同,只是高斯滤波的参 数是取自高斯函数。 这样就可以完成图像的预处理过程 2、 车牌定位2(1)运用行扫描的方法定位牌照的上下边界: 若某一 行的 01(白到黑)和 10(黑到白) 变化次数大于设定的阈 值(如 13,车牌有 7 个字符,所以跳变至少 14 次), 则设其为 图图 2-1 待处理像素邻域待处理像素邻域 像素像素 待测车牌的最低点,继续扫描直 至 01 和 10 变化次数小于阈值,将该阈值

4、设为待测车 牌的最高点。若最高点与最低点之差大于 15(即车牌图像的高度),则认为目标已检测到, 否则继续进行扫描;如果未检测到符合上述条件的目标,则自动门限值重复以上的操作,直到 找到目标为止。 (2)垂直投影法定位牌照的左右边界:在找到车牌的上下限后,利用二值图像在竖直方向上 的投影作为特征, 从左到右寻找目标的中心点坐标。 3、字符分割3 字符分割可采用垂直投影法。由于字符块在竖直方向上的投影必然在字符间或字符内 的间隙处取得局部最小值, 因此字符的正确分割位置应该在上述局部最小值的附近, 并且这 个位置应满足车牌的字符书写格式、字符尺寸限制和一些其他条件。 利用垂直投影法, 对复杂环境

5、下的汽车图像中的字符分割有较好的效果。 4、 字符识别字符识别使用模板匹配法2。首先将标准模板入库,把每一张“ 标准车牌”分割出来的字符归一化, 接着将归一化后的 模板矩阵存入 FPGA 中作为标准模板库。采用 2015 bit 大小的数组作为标准模板。当车牌上的待识别字符归一化以后, 依次与标准库中的模板进行匹配,即矩阵对应位依 次做差,分别计算总的相同像素个数,则有最大相同数目的那一组数认为是相似度最大,则用 此时的标准模板所对应的数字或字母作为最终识别的结果。3、Matlab 仿真结果仿真结果用 matlab 对上述算法进行了仿真,仿真结果如下(仿真程序见附录):图图 3-1 原彩色图像

6、原彩色图像图图 3-2 灰度图像灰度图像图图 3-3 二值化后的图像二值化后的图像像 像 像图图 3-4 定位出的车牌图像定位出的车牌图像图图 3-53-5 字符分割的结果字符分割的结果 将字符归一化为 20*15 的模板形式以后再与模板库里的字符相比较即可得 到识别结果。图图 3-63-6 归一化后的模板归一化后的模板 模板库里的模板是与上面的具有相同大小的图像,将归一化后的图像与模板库里存储 的图像进行比较运算,距离最小的即认为是判断字符。 从仿真结果来看,使用这种算法完全可以实现车牌识别,由于这种算法对每一个元素 的处理过程非常清楚,可以由 FPGA 实现,从而可以保证整个系统的实时性,

7、提高它的实 用价值。4 、参考文献、参考文献1 廖祥云,许锦标,龚仕伟 汽车牌照识别技术研究 微机发展 2003 2 邓灵 车牌识别系统关键技术研究 长沙理工大学硕士毕业论文 2010 3 张超平 车牌识别技术研究 武汉理工大学硕士毕业论文 2010 4 张笑飞 基于 FPGA 的实时车牌字符识别方法的研究 杭州电子科技大学学报 2007 5 黄新 汽车牌照识别系统中字符的分割和识别 南京航空航天大学硕士论文 20025、附录、附录Matlab 仿真程序: 主函数: RGB=imread(chepai.jpg);figure,imshow(RGB),title(-);GRAY=rgb2gray

8、(RGB);figure,imshow(GRAY),title();%-%-l=0,1,0;1,-4,1;0,1,0;LAP=imfilter(GRAY,l);%sobels=fspecial(sobel);DIV=imfilter(LAP,s);GRAY2=imsubtract(GRAY,DIV);%g=fspecial(gaussian,3,3);GRAY3=imfilter(GRAY2,g);%=theta=0:180;RD=radon(GRAY3,theta);thetaiw=maxtheta(RD);GRAY4=imrotate(GRAY3,358);%BW=im2bw(GRAY4)

9、;%m,n=size(BW);for x=1:mch(x)=0;end%for x=1:mfor y=2:nif BW(x,y)=BW(x,y-1)ch(x)=ch(x)+1;endendendplot(ch),title();%k=1;for x=1:mif ch(x)13p(k)=x;k=k+1;else if k0if col(y-1)=0i=i+1;raise(i)=y;endelse if col(y-1)0j=j+1;down(j)=y;endendendCP=LINE1(:,raise(1):down(j);%t=0;for a=1:(i-1)if raise(a+1)-down

10、(a)5t=t+1;raise1(t+1)=raise(a+1);down1(t)=down(a);endendraise1(1)=raise(1);down1(t+1)=down(j);w=raise(1);for u=1:(t+1)raise1(u)=raise1(u)-w+1;down1(u)=down1(u)-w+1;endZF1=CP(:,raise1(1):down1(1);ZF2=CP(:,raise1(2):down1(2);ZF3=CP(:,raise1(3):down1(3);ZF4=CP(:,raise1(4):down1(4);ZF5=CP(:,raise1(5):do

11、wn1(5);ZF6=CP(:,raise1(6):down1(6);ZF7=CP(:,raise1(7):down1(7);ZF8=CP(:,raise1(8):down1(8);figure,imshow(ZF1),title(1);figure,imshow(ZF2),title(2);figure,imshow(ZF3),title(3);figure,imshow(ZF4),title(4);figure,imshow(ZF5),title(5);figure,imshow(ZF6),title(6);figure,imshow(ZF7),title(7);figure,imshow

12、(ZF8),title(8);MB1=temp(ZF1);MB2=temp(ZF2);MB3=temp(ZF3);MB4=temp(ZF4);MB5=temp(ZF5);MB6=temp(ZF6);MB7=temp(ZF7);MB8=temp(ZF8);figure,imshow(MB1);figure,imshow(MB2);figure,imshow(MB3);figure,imshow(MB4);figure,imshow(MB5);figure,imshow(MB6);figure,imshow(MB7);figure,imshow(MB8);subplot(2,4,1),imshow

13、(MB1);subplot(2,4,2),imshow(MB2);subplot(2,4,3),imshow(MB3);subplot(2,4,4),imshow(MB4);subplot(2,4,5),imshow(MB5);subplot(2,4,6),imshow(MB6);subplot(2,4,7),imshow(MB7);subplot(2,4,8),imshow(MB8); 求偏转角的子程序(maxtheta): function y =maxtheta(A)%UNTITLED Summary of this function goes here% Detailed explan

14、ation goes herem,n=size(A);k=0;for i=1:mfor j=1:nif A(i,j)kk=A(i,j);x=i;y=j;endendend制作模板的子程序(temp): function B=temp(A)%UNTITLED Summary of this function goes here% Detailed explanation goes herem,n=size(A);B=zeros(20,15);C=zeros(20,n);a=m/19;a1=m/20;b=n/14,b1=n/15;%20if m=40for y=1:nfor x=1:mc=uint

15、8(x/a)+1;C(c,y)=C(c,y)+A(x,y);endendelseif m=20for y=1:nfor x=1:mc=uint8(x/a1);C(c,y)=C(c,y)+A(x,y);endendelsefor y=1:nfor x=1:20c=uint8(x*a1)C(x,y)=A(c,y);endendendif n=30for x=1:20for y=1:nd=uint8(y/b)+1;B(x,d)=B(x,d)+C(x,y);endendelseif n=15for x=1:20for y=1:nd=uint8(y/b1);B(x,d)=B(x,d)+C(x,y);endendelsefor x=1:20for y=1:15d=uint8(y*b1);B(x,y)=C(x,d);endendendfor x=1:20for y=1:15if B(x,y)=0B(x,y)=1;elseB(x,y)=0;endende

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号