How to insert two matrices into a matrix?

4 次查看(过去 30 天)
I would like to insert my matrices: R, R' and t,t' into an identity 4x4 matrix.
Then I would like to multiple them and as a result store from the final 4x4 matrix just the R^(3x3) and t^(3x1) matrices.
Thank you in advance for your help!

采纳的回答

KSSV
KSSV 2016-11-22
编辑:KSSV 2016-11-22
I = eye(4) ;
R = rand(3) ;
t = rand(3,1) ;
I(1:3,1:3) = R ;
I(1:3,4) = t ;
or
I = eye(4) ;
R = rand(3) ;
t = rand(3,1) ;
I(1:3,1:4) = [R t]

更多回答(1 个)

Guillaume
Guillaume 2016-11-22
The first concatenation is simply:
[Rprime, tprime; 0 0 0 1]
The second:
[R, t; 0 0 0 1]
and so on.
  2 个评论
Nora Hora
Nora Hora 2016-11-22
Thank you! And how would you save out the vector and the matrix from the result?
Guillaume
Guillaume 2016-11-22
You're talking about Rhat and that, then:
p = [Rprime, tprime; 0 0 0 1] * [R, t; 0 0 0 1];
Rhat = p(1:3, 1:3);
that = p(1:3, 4);

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Polynomials 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by