MATLAB 矩阵拆分:将 606x606 矩阵分割成 3x3 子矩阵
以下是一个示例代码,可以将一个 606x606 的矩阵拆分成多个 3x3 的矩阵:
% 创建一个 606x606 的矩阵
A = rand(606);
% 初始化一个空的矩阵,用于存放拆分后的子矩阵
sub = zeros(3, 3, 606*606/3/3);
% 循环拆分矩阵
k = 1;
for i = 1:3:size(A, 1)-2
for j = 1:3:size(A, 2)-2
sub(:, :, k) = A(i:i+2, j:j+2);
k = k + 1;
end
end
% 打印子矩阵的数量
disp(['拆分后的子矩阵数量为:' num2str(k-1)]);
这个代码将会生成一个由拆分后的子矩阵组成的 3 维矩阵'sub',其中第 1 维表示子矩阵的行数,第 2 维表示子矩阵的列数,第 3 维表示子矩阵的数量。在上面的代码中,我们通过两个循环遍历每个 3x3 的子矩阵,并将其存储在'sub'中。最后,我们打印出子矩阵的数量,以验证代码的正确性。
原文地址: https://www.cveoy.top/t/topic/mNyQ 著作权归作者所有。请勿转载和采集!