我有一个矩阵说:
Q = [05 11 12 16 25;
17 18 02 07 10;
04 23 20 03 01;
24 21 19 14 09;
06 22 08 13 15]
我想列出所有可能的3x3矩阵。一些例子是:
11 12 16;
18 2 7;
23 20 3
和
5 11 12;
17 18 2;
4 23 20;
等。基本上所有可能的3乘3矩阵。
我该怎么做?我必须使用for
循环?
答案 0 :(得分:5)
如果您拥有Image Processing Toolbox,则可以使用IM2COL功能:
subMats = im2col(Q,[3 3]);
subMats
的每一列都包含从Q
中提取的3乘3矩阵的元素。这些列中的每一列都可以重新整形为3×3矩阵,如下所示:
Q1 = reshape(subMats(:,1),[3 3]); %# Reshape column 1 into a 3-by-3 matrix
答案 1 :(得分:0)
我猜这是作业(如果没有,请原谅我),所以这里有一些提示。
你看到如何涵盖整个事情吗?