matlab liccode,MATLAB作业概要.ppt

自定义一个字符函数,用来从车牌区域中提取出7个字符,其中利用切割函数来进行切割。 程序:function [word,result]=getword(d) word=[];flag=0;y1=8;y2=0.5; while flag==0 [m,n]=size(d);%将d的尺寸存入m n wide=0; while sum(d(:,wide+1))~=0 && wide<=n-2%纵向扫描,如果有白色点的列数加一 wide=wide+1; end temp=qiege(imcrop(d,[1 1 wide m])); [m1,n1]=size(temp); if widey2%如果列数小于8且长比宽大于2:1,认为是干扰 d(:,[1:wide])=0;%将1到wide行赋一,消除干扰 if sum(sum(d))~=0%二次求和,加强精度,如果还不等于零,干扰未完全消除,再次切割 d=qiege(d); else word=[];flag=1;%不作处理,改变flag初值为了避免再次进入大循环,破坏wide值 end else%全为有用区域,即数字区域 word=qiege(imcrop(d,[1 1 wide m]));%将第一个字符切割出来,赋给Word d(:,[1:wide])=0;%人为地将第一个字符赋零,调用切割函数切割掉,避免重复切割 if sum(sum(d))~=0;%加强精度,如果二次求和还不为0,再次切割,改变flag初值为了避免再次进入大循环,破坏wide值 d=qiege(d);flag=1; else d=[]; end end end end result=d;%结果为d图 运用这个getword函数就可以提取7个字符,调用getword函数 [word2,d]=getword(d); % 分割出第二个字符 [word3,d]=getword(d); % 分割出第三个字符 [word4,d]=getword(d); % 分割出第四个字符 [word5,d]=getword(d); % 分割出第五个字符 [word6,d]=getword(d); % 分割出第六个字符 [word7,d]=getword(d); % 分割出第七个字符 subplot(5,7,1),imshow(word1),title('1'); subplot(5,7,2),imshow(word2),title('2'); subplot(5,7,3),imshow(word3),title('3'); subplot(5,7,4),imshow(word4),title('4'); subplot(5,7,5),imshow(word5),title('5'); subplot(5,7,6),imshow(word6),title('6'); subplot(5,7,7),imshow(word7),title('7'); [m,n]=size(word1); 然后对图像进行缩放处理,运用imresize函数进行缩放 word1=imresize(word1,[40 20]);%图像缩放函数,将图片缩放为40 20比例 word2=imresize(word2,[40 20]); word3=imresize(word3,[40 20]); word4=imresize(word4,[40 20]); word5=imresize(word5,[40 20]); word6=imresize(word6,[40 20]); word7=imresize(word7,[40 20]); subplot(5,7,15),imshow(word1),title('1'); subplot(5,7,16),imshow(word2),title('2'); subplot(5,7,17),imshow(word3),title('3'); subplot(5,7,18),imshow(word4),title('4'); subplot(5,7,19),imshow(word5),title('5'); subplot(5,7,20),imshow(wo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值