我尝试对'循环'进行矢量化'对于数组但它对我不起作用。 我的回复'是
for k = 1:N
R(n,n,k) = R(n,n,k) - SE3(k,k);
end
并将其矢量化
diagSE3 = diag(SE3);
R(n,n,1:N) = R(n,n,1:N) - diagSE3(1:N);
答案 0 :(得分:0)
使用
R(n,n,1:N) = R(n,n,1:N) - diagSE3(1:N)
你试图从尺寸为1 x 1 x N的三维数组中减去一个向量(N x 1)。这可以使用squeeze
修复:
R(n,n,1:N) = squeeze(R(n,n,1:N)) - diagSE3(1:N)