求高手解释下下面一段程序,Matlab,顺便说下用的是什么方法切割的,很急!!!

[m,n]=size(d);d为已经处理过的车牌图像k1=1;k2=1;s=sum(d);j=1;whilej~=nwhiles(j)==0j=j+1;endk1=j;w... [m,n]=size(d);
d为已经处理过的车牌图像
k1=1;k2=1;s=sum(d);j=1;
while j~=n
while s(j)==0
j=j+1;
end
k1=j;
while s(j)~=0 && j<=n-1
j=j+1;
end
k2=j-1;
if k2-k1>=round(n/6.5)
[val,num]=min(sum(d(:,[k1+5:k2-5])));
d(:,k1+num+5)=0; % 分割
end
end
% 再切割
d=qiege(d);
% 切割出 7 个字符
y1=10;y2=0.25;flag=0;word1=[];
while flag==0
[m,n]=size(d);
left=1;wide=0;
while sum(d(:,wide+1))~=0
wide=wide+1;
end
if wide<y1 % 认为是左侧干扰
d(:,[1:wide])=0;
d=qiege(d);
else
temp=qiege(imcrop(d,[1 1 wide m]));
[m,n]=size(temp);
all=sum(sum(temp));
two_thirds=sum(sum(temp([round(m/3):2*round(m/3)],:)));
if two_thirds/all>y2
flag=1;word1=temp; % WORD 1
end
d(:,[1:wide])=0;d=qiege(d);
end
end
展开
 我来答
英雄创业精神奇
2012-05-22 · TA获得超过1601个赞
知道小有建树答主
回答量:1454
采纳率:0%
帮助的人:1371万
展开全部
大概解释下把 用的是列统计像素 如果找到连续的字符块 判断 if wide<y1 % 认为是左侧干扰
d(:,[1:wide])=0;
d=qiege(d);这个是qiege是切除背景干扰
如果切除的字符块 大于y1,且宽高比为1:2 ,就认为是有效字符 ,进行切割,其他字符同理
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式