如何将下面的矩阵转换为 Matlab 中所需的矩阵,我尝试使用逻辑但无法制作逻辑:
6 8
10 16
必填
6 0 8
0 0 0
10 0 16
以下代码将起作用:
A=[6 8; 10 16];
B=zeros(3);
B([1,3],[1,3])=A;
B
B=zeros(3);
B([1,end],[1,end])=A;
其他解决方案可能是您想要的,但是,这里有一种不必要的复杂方法来执行相同的操作:
B = conv2( ones(2), A) .* ~strel('diamond',1).Neighborhood;
strel
函数需要图像处理工具箱,因此如果没有它,则可以改用以下问题的解决方案的一些变体:1、2。
在 R2018b 上测试。