重构矩阵,用于正确减去不同维矩阵的运算

时间:2017-03-08 02:51:08

标签: matlab reshape

我想减去A=[60x60]的矩阵,其矩阵为B=[1x2]。如何塑造第二个矩阵以使减号操作正确?

减号操作可以定义为: A(k1,k2)-[a*k1 b*k2] [a*k1 b*k2]=B。为了更清楚,A是图像的相位矩阵,但它在每个Bk1方向上按阶段k2移动,因此{{1}将成为图像的新阶段,如下面的等式所述:

enter image description here

newA/theta''的新阶段。 Aa'是矩阵b'

我试过这样:

B

但我不确定这是否正确。它会将A=rand(60); B=rand(1,2); newA=A(:)-B; 中的所有矩阵移动A吗?或者它只是移动B的第一行? Ak1k2的价值如何?感谢任何帮助!提前谢谢!

1 个答案:

答案 0 :(得分:3)

据我所知,你将从奇数列中减去k1,从偶数列中减去k2。

A2 = zeros(size(A));
A2(:, 1:2:end) = A(:,1:2:end)-k1; 
A2(:, 2:2:end) = A(:,2:2:end)-k2;