关于matlab的mean函数的一个小问题

njust_小文 2014-12-23 08:17:32
首先看下图像处理的gabor变换代码。

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);


上述代码在最后用mean函数求矩阵avg_gbFt列均值的时候出了问题,描述如下:


求大神指教,这是为何。
我只能这样写了:
mean_gbFt = sum(avg_gbFt) ./ len ;
这样写是没有问题的。
...全文
191 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

4,445

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧