使用MATLAB将图像分成相等大小的块并使用Gabor滤波器

时间:2012-08-22 17:59:15

标签: image matlab image-processing block

如何使用MATLAB将尺寸为120x120的面部图像划分为64个15x15像素大小的块?然后我想用Gabor滤波器对每个15x15块进行卷积。我没能使用blkproc函数。我怎么能这样做?

1 个答案:

答案 0 :(得分:6)

要提取这些块,您可以使用以下内容,假设img是120x120图像矩阵,c=15w=8

blocks = reshape(permute(reshape(img, c, w, c, w), [1 3 2 4]), c, c, w * w)

现在blocks是一个15x15x64矩阵,而blocks(:, :, i)是一个15x15矩阵,代表i块。