dis*_*ame 3 arrays matlab matrix
怎么可能扩展二次方 - 比方说NxN矩阵更像是一个(N + k)x(N + k)矩阵?
它实际上是关于调整矩阵的大小并用零填充缺失的行/列,这样就不会发生尺寸不匹配.
没有必要比它更困难.如果您为原始大小之外的元素分配内容,MATLAB会自动使用零填充:
n = 4;
A = [1 2; 3 4];
A(n,n) = 0;
A =
1 2 0 0
3 4 0 0
0 0 0 0
0 0 0 0
Run Code Online (Sandbox Code Playgroud)
你可以使用padarray... 添加零到矩阵...例如:
A = [1 2; 3 4];
B = padarray(A,[2 2],'post')
B =
1 2 0 0
3 4 0 0
0 0 0 0
0 0 0 0
Run Code Online (Sandbox Code Playgroud)
或者,如果您没有图像处理工具箱,则可以使用矩阵索引:
B = zeros(size(A)+k, class(A));
B(k:end-k+1,k:end-k+1) = A;
Run Code Online (Sandbox Code Playgroud)