《数字图像处理》大作业:车牌识别
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注:RGB色彩模式是工业界的一种颜色标准,是通 过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及 它们相互之间的叠加来得到各式各样的颜色的。
分割出列部分程序
Blue_x = zeros(1,x); for j = 1:x for i = PY1:PY2 rij = myI(i, j, 1)/(myI(i, j, 3)+eps); gij = myI(i, j, 2)/(myI(i, j, 3)+eps); bij = myI(i, j, 3); if (rij < 0.35 && gij < 0.7 && bij >90) ... || (gij < 0.35&& rij < 0.7&& bij > 90 Blue_x(1,j) = Blue_x(1,j) + 1; bw2(i, j) = 1; end end end PX1 = 1; while (Blue_x(1,PX1)<Th) && (PX1<x) PX1 = PX1 + 1; end PX2 = x; while (Blue_x(1,PX2)<Th) && (PX2>PX1) PX2 = PX2 - 1; end PX1 = PX1 - 2; PX2 = PX2 + 2;
车牌识别全部过程
定位车牌区域
车牌图像处 理
字符分割 及识别
将图中字符分割出来 将每个字符单独分割出来进行操作方便字 符识别 用d=bwareaopen(d,150);将第二个 和第三个字符中间的点去除点。
分割第一个字符的程序
wide1 = 0 while sum(d(:,wide1+1))<3 && wide1 <= n-2 wide1 = wide1 + 1; end wide2 = wide1; while sum(d(:,wide2+1))>2 && wide2 <= n-2 wide2 = wide2 + 1; end % temp = imcrop(d, [wide1 1 wide2-wide1 m]); % figure;imshow(temp); % tp=3;bottm=m-5; while sum(d(tp,wide1:wide2))==0 tp = tp + 1; end while sum(d(bottm,wide1:wide2))==0 bottm = bottm - 1; end e1 = imcrop(d, [wide1 tp wide2-wide1 bottm-tp]);
研究背景
汽车牌照自动识别是现代智能交 通系统的重要组成部分,是图像处理 和模式识别技术领域的热点话题
车牌识别的三个主要步骤
3 1 2 3
车牌区域定位 车牌字符分割 车牌字符识别
车牌区域定位
以蓝底白字的普通车牌为例,可以采 用彩色像素点统计的方法分割出合理的车 牌区域。 统计出行和列合理的区域范围,将图 像此区域图像分割出来。
% 在MATLAB中,该函数用于返回 图像的一个裁剪区域。
bw4 = imclearborder(bw3);
%抑制和图像边界相连的亮对象。若 bw3是二值图,imclearborder将 删除和图像边界相连的对象 %去除二值图像散杂点,删除小于20 的连通域
d=bwareaopen(bw4,20);
%求出一列中满足蓝色区域点的个数
%找出车牌区域左右边界
车牌字符处理
首先要对定位好的车牌图像进行处理,再将车牌 上的字符分割出来,方便后续识别操作。
图像灰度化
图像二值化
图像滤波处理
车牌图像处理
图像处理部分程序
X = im2bw(Plate); 像 [H, L] = size(X); X = imcrop(X, [5 5 L-10 H-10]); %im2bw使用阈值变换法把灰度图 转换成二值图像。
字符归一化处理
字符分割后出现大小不一致的情况,可以采用归 一化处理的方式,将字符图像进行尺寸放缩到统 一大小的字符图像
58*30
分割出的字符
58*40
统一尺寸
40*20
归一化
字符识别
对比匹配
wenku.baidu.com
已经建立的标准 化的字符模板, 逐个进行比较
经过数字图像处 理过后的归一化 字符
得到结果
采集图像 图像预处理