matlab 矩阵分块算均值

来源:百度知道 编辑:UC知道 时间:2024/05/25 18:25:59
我有一个128*128的图像,我想分成8*8的16*16个,并且分别计算每个8*8的小块的均值和方差,最后把16*16个小块的均值和方差再平均

>> A=reshape(1:128*128,128,128); %这一步你用你自己的imread来实现

aversub=zeros(16,16);
varsub=zeros(16,16);
for i=1:16
for j=1:16
subA=A([1:i*8],[1:j*8]);
subA=subA(:);
aversub(i,j)=mean(subA);
varsub(i,j)=var(subA);
end
end

avertotal=mean(aversub(:))
vartotal=mean(varsub(:))