如何在Matlab中栅格化图像?

时间:2010-12-03 11:17:12

标签: matlab image-processing rasterizing

我需要在matlab中栅格化图像。 我有一个黑白图像,想要以8x8块的形式对其进行分块,并从每个块中获得一个平均值。然后我想用一个由1和0组成的新块替换块,其数量取决于原始块的平均值。

提前致谢!

1 个答案:

答案 0 :(得分:1)

这将帮助您入门。它是下采样图像,其中每个值在零和块大小的平方之间。您可以将自己的整数扩展为子矩阵。

bs = 8
a = imread('trees.tif');
[r,c] = size(a);
d  = imresize(a,[round(r/bs), round(c/bs)]);


figure(1)
imshow(a)
figure(2)
imshow(d)

mv = max(d(:))

d = round(double(d)/double(mv)*bs*bs);

figure(3)
imagesc(d)