如何对一副图像的每一块求取灰度最大值?
%块为4*4的小块。
[rs,cs]=size(f);%图片的宽,高。
m=4;
n=4;
numr=floor(rs/m);%取近似数,floor取最小整数。表示行的块数
numc=floor(cs/n);%表示列的块数
t1=(0:numr-1)*m+1;
t2=(1:numr)*m;
t3=(0:numc-1)*n+1;
t4=(1:numc)*n;%以上四个公式表示每一块的像素范围。
cm=zeros(numr, numc);%初始化矩阵,存放每一块的最大值。
for a=1:numr
for b=1:numc
for i=t1(a):t2(a)
for j=t3(b):t4(b)
f(:)=f(i,j);
cm(a,b)=max(f(:));
end
end
end
end %遍历每一块。并求每一块的最大灰度值。
这个程序应该有问题,我看了一下 结果对应每一块的最大值是每一块的最左上点。没有取最大值。
有人可以帮忙改一下吗?谢谢