4,445
社区成员
发帖
与我相关
我的任务
分享
for count = 1:len
I=imread(files(count,1).name);
gI = rgb2gray(I) ;
% gabor滤波
%对每一个图像分别计算4*4个gabor滤波器的3个特征
for i =1:4 %gabor滤波器方向
for j = 1:4 %gabor滤波器尺度
[G , gabout] = gaborfilter(gI,4,4,i*0.25*pi,2*j);
J = fft2(gabout);
A = double(J);
[m1,n1] = size(A) ;
B = A ;
C = zeros(m1,n1);
for i1 = 1:m1-1
for j1 = 1:n1-1
B(i1,j1) = A(i1+1,j1+1);
C(i1,j1) = abs(round(A(i1,j1)-B(i1,j1))) ;
end
end
h = imhist(mat2gray(C))/(m1*n1);
mean = 0; con = 0; ent = 0;
for i2 = 1:256
mean = mean+(i2*h(i2))/256;
con = con + i2*i2*h(i2) ;
if(h(i2)>0)
ent = ent - h(i2)*log2(h(i2));
end
end
gbFt(i,j,1) = mean;
gbFt(i,j,2) = con;
gbFt(i,j,3) = ent;
end
end
avg_gbFt(count,1) = mean2(gbFt(:,:,1)); %gabor 均值
avg_gbFt(count,2) = mean2(gbFt(:,:,2)); %gabor 对比度
avg_gbFt(count,3) = mean2(gbFt(:,:,3)); %gabor 熵
end
mean_gbFt = mean(avg_gbFt);