⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 weight_strokecrosscountingfeature.m

📁 给出两个加权特征
💻 M
字号:
function P = Weight_StrokeCrossCountingFeature(im)
%加权笔画密度特征
%分别从水平,垂直,左右对角线四方向假想一组网线来扫描汉字图像,并考虑了其领域特征的加权贡献。
%%
Im= im(:,:,1);
% [NumRows,NumCols] = size(Im);
Im = not(Im);
N=64;
w=[0 0.25 0.5 0.75 1 0.75 0.5 0.25 0];
WCCH=zeros(1,8);
WCCV=zeros(1,8);
WCCL=zeros(1,16);
WCCR=zeros(1,16);
%%水平方向
for i=1:8
    I=8*(i-1)+4;
    for k=-3:4
          WCCH(i)=WCCH(i)+sum(Im(I+k,1:N-1).*not(Im(I+k,2:N)))*w(k+4)/2;
    end
end
%%垂直方向
for j=1:8
   J=8*(j-1)+4;
    for k=-3:4
         WCCV(j)=WCCH(j)+sum(Im(1:N-1,J+k).*not(Im(2:N,J+k)))*w(k+4)/2;
    end
end
M=[];
NN=[];
MM=[];
%%右对角线
for i=1:8
   I=8*(i-1)+4;
    for k=-3:4
        Sum1=0;
        Sum2=0;
        for j=1:N-8*(i-1)-5-k
%         M = [M I+k+j+1]    
        Sum1 =Sum1+Im(I+k+j,j)*not(Im(I+k+j+1,j+1));
        Sum2 =Sum2+Im(j,I+k+j)*not(Im(j+1,I+k+j+1));
%         M=[M I+k+j];
%         NN=[NN j];
%         MM=vertcat(M,NN);
        end
        WCCL(i)=WCCL(i)+Sum1*w(k+4)/2;
        WCCL(i+8)=WCCL(i+8)+Sum2*w(k+4)/2;
    end
end
%%左对角线
% M=[];
for i=1:8
   I=8*(i-1)+4;
    for k=-3:4
        Sum1=0;
        Sum2=0;
        for j =1:N-8*(i-1)-5-k
%           M= [M N-I-k-j-1];
        Sum1 =Sum1+Im(j,N-I-k-j+1)*not(Im(j+1,N-I-k-j));
        Sum2 =Sum2+Im(I+k+j,N-j+1)*not(Im(I+k+j+1,N-j));
        M=[M j];
        NN=[NN N-I-k-j+1];
        MM=vertcat(M,NN);      
        end
        WCCR(i)=WCCR(i)+Sum1*w(k+4)/2;
        WCCR(i+8)=WCCR(i+8)+Sum2*w(k+4)/2;
    end
end
P = horzcat(WCCH,WCCV,WCCL,WCCR);

⌨️ 快捷键说明

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