【发布时间】:2015-08-24 15:26:18
【问题描述】:
我正在尝试将多维数组重塑为原始图像。我使用我找到的in this question 的出色解决方案将 512x512 像素的图像拆分为 8x8 像素的子矩阵:
sub_images = permute(reshape(permute(reshape(i_image, size(i_image, 1), n, []), [2 1 3]), n, m, []), [2 1 3]);
在这种情况下 n=m=8 并且 sub_images 是一个 8x8x4096 的数组。现在的问题是我想回到原始图像避免 for 循环,但我不明白该怎么做。我知道存在colfilt或blockproc的功能,但我不能使用它们。非常感谢任何帮助!
【问题讨论】:
标签: matlab matrix multidimensional-array vectorization reshape