为每个值使用 'for' 在同一数组中查找最多 3 个其他行
find maximum of 3 other rows in same array using 'for' for each value
对于相同的问题,我在以下数组中有 3 个结果:
(0.0 0.0 0.2
0.8 0.0 1.2
2.9 1.6 4.3
0.0 1.5 0.2
0.0 0.0 0.4
0.0 2.4 0.3
0.4 0.3 6.2
0.9 0.0 0.4
0.3 0.0 1.2)
例如,一题在位置 (1,1) (4,1) (7,1) 中的结果为 0.0 0.0 0.4。我试图找到最大结果以便只有一个 3x3 数组:
for m=1:3
for n=1:3
sy(m,n)=max(sy(m,n), sy(m+3,n), sy(m+3*2,n));
end
end
sy=imresize(sy, [3 3]);
我用两个矩阵得到 MAX 进行比较,工作维度是
不支持。
假设你的矩阵设置如下:
sy =[0.0 0.0 0.2; 0.8 0.0 1.2; 2.9 1.6 4.3; 0.0 1.5 0.2 ;...
0.0 0.0 0.4; 0.0 2.4 0.3; 0.4 0.3 6.2; 0.9 0.0 0.4; 0.3 0.0 1.2];
那我觉得:
sy = max(reshape(sy',3,3,3),[],3)';
达到您想要的结果。
对于相同的问题,我在以下数组中有 3 个结果:
(0.0 0.0 0.2
0.8 0.0 1.2
2.9 1.6 4.3
0.0 1.5 0.2
0.0 0.0 0.4
0.0 2.4 0.3
0.4 0.3 6.2
0.9 0.0 0.4
0.3 0.0 1.2)
例如,一题在位置 (1,1) (4,1) (7,1) 中的结果为 0.0 0.0 0.4。我试图找到最大结果以便只有一个 3x3 数组:
for m=1:3
for n=1:3
sy(m,n)=max(sy(m,n), sy(m+3,n), sy(m+3*2,n));
end
end
sy=imresize(sy, [3 3]);
我用两个矩阵得到 MAX 进行比较,工作维度是 不支持。
假设你的矩阵设置如下:
sy =[0.0 0.0 0.2; 0.8 0.0 1.2; 2.9 1.6 4.3; 0.0 1.5 0.2 ;...
0.0 0.0 0.4; 0.0 2.4 0.3; 0.4 0.3 6.2; 0.9 0.0 0.4; 0.3 0.0 1.2];
那我觉得:
sy = max(reshape(sy',3,3,3),[],3)';
达到您想要的结果。