- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字图像处理期末课程报告 题 目: 车牌识别的matlab实现 题目类型: 软件型 学 院 信息工程与自动化学院 专 业: 计算机科学与技术 年 级: XXXX 学 号: XXXXXXX 学生姓名: xxx 指导教师: xx 日 期: 2012-6-8 目录摘要:2关键词:2实验工具:2车辆牌照识别流程:2实验内容及步骤31.图像预处理:32.车牌定位——车牌起始位置和终止位置53.图片二值化54.列方向像素点灰度值累计65.字符分割:76.建立字符模板数据库87.归一化训练9结果分析:13摘要:本次课程设计的目的是通过对基于MATLAB的字符识别的研究,以汽车牌照识别的设计为实例,详细介绍字符识别的相关原理。整个汽车牌照识别的过程分为预处理、边缘提取、车牌定位、字符分割、字符识别五大模块,用MATLAB软件编程来实现每一个部分,最后识别出汽车牌照。在研究的同时对其中出现的问题进行了具体分析,处理。寻找出对于具体的汽车牌照识别过程的最好的方法。关键词:MATLAB字符识别车牌识别神经网络图像处理实验工具:MATLAB 7.8(R2009a)。车辆牌照识别流程:基于 MATLAB图像处理的汽车牌照识别,主要包括车牌定位、字符车牌分割、和车牌字符识别三个关键环节。流程图如下:其中,原始图像:由数码相机或其它扫描装置拍摄到的图像;(本实验图片由数码相机获得)图像预处理:对动态采集到的图像进行灰度处理、边缘检测、腐蚀、膨胀、滤波、等处理排除图像干扰;车牌定位:计算边缘图像的投影面积,寻找峰谷点,大致确定车牌位置,再计算此连通域内的宽高比,剔除不在域值范围内的连通域,最后得到的便为车牌区域;字符分割:利用投影检测的字符定位分割方法得到单个的字符;字符数据库:构造训练样本数据库,为第6步的字符识别建立字符模板数据库;字符识别:通过基于模板匹配的OCR算法或基于人工神经网络的OCR算法,通过特征对比或训练识别出相关的字符,得到最后的汽车牌照,包括英文字母和数字。实验内容及步骤图像预处理:预处理源代码: I=imread(h:\tuku\car1.jpg);%读取图像 figure(); subplot(3,2,1),imshow(I), title(原始图像); I1=rgb2gray(I);%转化为灰度图像subplot(3,2,2),imshow(I1),title(灰度图像); I2=edge(I1,robert,0.09,both);%采用robert算子进行边缘检测subplot(3,2,3),imshow(I2),title(边缘检测后图像); se=[1;1;1]; %线型结构元素 I3=imerode(I2,se); %腐蚀图像subplot(3,2,4),imshow(I3),title(腐蚀后边缘图像); se=strel(rectangle,[25,25]); %矩形结构元素I4=imclose(I3,se);%图像聚类、填充图像subplot(3,2,5),imshow(I4),title(填充后图像); I5=bwareaopen(I4,2000);%去除聚团灰度值小于2000的部分subplot(3,2,6),imshow(I5),title(形态滤波后图像);预处理结果截图:行列方向像素值累计值: 源代码:[y,x,z]=size(I5);I6=double(I5); Y1=zeros(y,1); for i=1:y for j=1:x if(I6(i,j,1)==1) Y1(i,1)= Y1(i,1)+1; end end end [temp MaxY]=max(Y1); figure(); subplot(3,2,1),plot(0:y-1,Y1),title(行方向像素点灰度值累计和),xlabel(行值),ylabel(像素);运行截图:车牌定位——车牌起始位置和终止位置PY1=MaxY; while ((Y1(PY1,1)=45)(PY11)) PY1=PY1-1; end PY2=MaxY; while ((Y1(PY2,1)=45)(PY2y)) PY2=PY2+1; end IY=I(PY1:PY2,:,:); X1=zeros(1,x); for j=1:x for i=PY1:PY2 if(I6(i,j,1)==1) X1(1,j)= X1(1,j)+1; end endendsubplot(3,2,2),plot(0:x-1,X1),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(像数);图片二值化代码:if isrgb(DW) I1 = rgb2gray(DW);
文档评论(0)