![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
matlab如果把灰度图划分成20*20块,怎么求每个子块的灰度均值呢,
1个回答
展开全部
I = imread('图像路径'); %读取图像
[raw, column] = size(I); %求图像大小
if (mod(raw, 20)~=0 || column(column, 20)~= 0) %判断图像大小是否可以分为20*20块
printf('图像不能整分为20份');
break;
end;
%求每个小块的大小
m = raw/20;
n = column/20;
blocks_mean = [];
for i=1:20;
for j=1:20;
block = I((m*(i-1)+1):(m*i), (n*(j-1)+1):(n*j));
blocks_mean(i,j) = mean(mean(block)); %求每个小块均值
end;
end;
[raw, column] = size(I); %求图像大小
if (mod(raw, 20)~=0 || column(column, 20)~= 0) %判断图像大小是否可以分为20*20块
printf('图像不能整分为20份');
break;
end;
%求每个小块的大小
m = raw/20;
n = column/20;
blocks_mean = [];
for i=1:20;
for j=1:20;
block = I((m*(i-1)+1):(m*i), (n*(j-1)+1):(n*j));
blocks_mean(i,j) = mean(mean(block)); %求每个小块均值
end;
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询