delt.m

来自「神经网络VC++代码 人工神经网络原理及仿真实例.」· M 代码 · 共 82 行

M
82
字号
function [x,a,bw,r]=delt(a)
%对交通标志
%i为输入图像
%x为提取的特征

bw=rgb2gray(a);  %将彩色图像灰度化

for i=1:32
  for j=1:32
   if bw(i,j)>130
     bw(i,j)=0;
    else
    bw(i,j)=1;
    end
   end
   end       %二值化

    bw=double(bw);
    k=mat2gray(bw);
r=hgtrans(k,32,32); % Hough变换
r1=r;

for i=1:32
  for j=1:32
     if r1(i,j)<=30 
        r1(i,j)=0;
   else
         r1(i,j)=r1(i,j); 
  end
 end
end         %判断直线的个数

x=sum(r1);   %对theta轴投影

ma=max(x);
if ma<100
for i=1:32
  if x(i)>31 
     x(i)=1;
  else x(i)=0;
  end
end             %提取特征

else 
   bw1=zeros(32);
   for i=1:32
    for j=1:32
    if bw(i,j)==1
     bw1(i,j)=0;
    else
    bw1(i,j)=1;
    end
   end
   end  %重新二值化

   bw1=double(bw1);
k=mat2gray(bw1);
r1=hgtrans(k,32,32);  %Hough变化

for i=1:32
  for j=1:32
     if r1(i,j)<=30 
        r1(i,j)=0;
   else
      r1(i,j)=r1(i,j);
  end
 end
end

x=sum(r1);
ma=max(x);mi=min(x);
u=(ma+mi)*0.53;
u=round(u);  
      
  for i=1:32
  if x(i)>u 
     x(i)=1;
     else x(i)=0;
   end
end      
end      %特征提取

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?