Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于Matlab的块均值计算_Matlab - Fatal编程技术网

基于Matlab的块均值计算

基于Matlab的块均值计算,matlab,Matlab,如何划分图像区域,将其划分为nxn块,在这种情况下,让我们假设为4x4。对于每个块,计算块的平均值。我需要根据(像素值=块平均值)将块平均值转换为二进制位图。我相信使用imresize,使用以下语法可以实现您的目标: N = 100; n = 4; % the size of your nxn blocks image = rand(N); small_image = imresize(image,1/n,'box'); 这个怎么样 img = randn(12,12); %// exampl

如何划分图像区域,将其划分为nxn块,在这种情况下,让我们假设为4x4。对于每个块,计算块的平均值。我需要根据(像素值=块平均值)将块平均值转换为二进制位图。

我相信使用
imresize
,使用以下语法可以实现您的目标:

N = 100;
n = 4; % the size of your nxn blocks
image = rand(N);
small_image = imresize(image,1/n,'box');
这个怎么样

img = randn(12,12); %// example data
[R C] = size(img);
N = 4; %// block size. Assumed to divide R and C

result_small = blockproc(img,[N N],@(block) mean(block.data(:))); %// R/N x C/N
result = result_small(floor(0:1/N:R/N-1/N)+1,floor(0:1/N:C/N-1/N)+1); %// R x C