欧式距离程序
function d=oushi(M,N)
[m,n]=size(M);
d=0;
for i=1:n
d=d+(M(n)-N(n))^2;
end
d=sqrt(d);
主程序
function T = f1234(Image)
Gray=rgb2gray(Image);
[M,N] = size(Gray);
for i = 1:M
for j = 1:N
for n = 1:256/16
if (n-1)*16<=Gray(i,j)&&Gray(i,j)<=(n-1)*16+15
Gray(i,j) = n-1;
end
end
end
end
P = zeros(M,N,4);
for m = 1:16
for n = 1:16
for i = 1:M
for j = 1:N
if j
P(m,n,1) = P(m,n,1)+1;
P(n,m,1) = P(m,n,1);
end
if i>1&&j
P(m,n,2) = P(m,n,2)+1;
P(n,m,2) = P(m,n,2);
end
if i
P(m,n,3) = P(m,n,3)+1;
P(n,m,3) = P(m,n,3);
end
if i
P(m,n,4) = P(m,n,4)+1;
P(n,m,4) = P(m,n,4);
end
end
end
if m==n
P(m,n,:) = P(m,n,:)*2;
end
end
end
for n = 1:4
P(:,:,n) = P(:,:,n)/sum(sum(P(:,:,n)));
end
H = zeros(1,4);
E = H;
Ux = H; Uy = H;
deltaX= H; deltaY = H;
C =H;
X=H;
% % -----------能量----------------
for n = 1:4
E(n) = sum(sum(P(:,:,n).^2));
end
% % ----------------熵--------------
for n =1:4
for i = 1:16
for j = 1:16
if P(i,j,n)~=0
H(n) = -P(i,j,n)*log(P(i,j,n))+H(n);
end
end
end
end
% % ----------------相关性----------------------
for n=1:4
for k = 1:16
Ux(n) = k*sum(P(k,:,n))+Ux(n); %相关性中μx
Uy(n) = k*sum(P(:,k,n))+Uy(n); %相关性中μy
end
end
for n = 1:4
for kk = 1:16
deltaX(n) = (kk-Ux(n))^2*sum(P(kk,:,n))+deltaX(n); %相关性中σx
deltaY(n) = (kk-Uy(n))^2*sum(P(:,kk,n))+deltaY(n); %相关性中σy
end
end
for n =1:4
for i = 1:16
for j = 1:16
C(n)=(i*j*P(i,j,n)-Ux(n)*Uy(n))/(deltaX(n)*deltaY(n))+C(n);%相关性
end
end
end
% % -----------------------逆差矩-----------------
for n=1:4
for i=1:16
for j=1:16
X(n) = P(i,j,n)/(1+(i-j)^2)+X(n);
end
end
end
% % ----------------------------------------------
T(1)=mean(E); T(2) = std(E);
T(3)=mean(H); T(4) = std(H);
T(5)=mean(C); T(6) = std(C);
T(7)=mean(X); T(8) = std(X);
end