数字图片的特征提取

clc
imia=imread('5.jpg');
[m,n]=size(imia);
gate=100;
for i=1:m
    for j=1:n
        if (imia(i,j)             imia(i,j)=1;
        else imia(i,j)=0;
        end
    end
end

line=2;  %分成网格行
column=2;  %网格列
lnum=floor(m/line); %每个网格像素的行数 
cnum=floor(n/column); %每个网格像素的列数 
l=line*column;
m=lnum*line;
n=cnum*column;
timia=imia(1:m,1:n)
subtimia=zeros(lnum,cnum,l);
label=zeros(l,2);
ex1=zeros(l,1);
ex2=zeros(l,1);


   for i=1:line
      for j=1:column
          for p=(i-1)*lnum+1:i*lnum
              for q=(j-1)*cnum+1:j*cnum
                  k=(i-1)*2+j;
                  a=mod(p-1,lnum)+1;
                  b=mod(q-1,cnum)+1;
                  timia(p,q);
                  if(timia(p,q)==1)
                     ex1(k)=ex1(k)+1;
                  end
                  subtimia(a,b,k)=timia(p,q);
               end
          end
      end
   end
   
%subtimia(:,:,1:l)

for d=1:l
    for e=1:lnum
        x=sum(subtimia(e,1:cnum,d));
        label(d,1)=label(d,1)+x*x;
    end
    for f=1:cnum
        y=sum(subtimia(1:lnum,f,d));
        label(d,2)=label(d,2)+y*y;
    end        
    ex2(d)=abs(label(d,1)*lnum-label(d,2)*cnum);
end

%Slabel
%ex1
%ex2
ex0=sum(ex1);
ex=[ex1;ex2;ex0]

你可能感兴趣的:(板块1:图像-特征提取处理,MATLAB)