---
# System prepended metadata

title: Converting between vector pose and Homogeneous matrix

---

# Converting between vector pose and Homogeneous matrix #
====*** Good Book ***====
- Introductory Techniqueds for 3D Computer Vision - *by Trucco et al*
==***What is Euler Angle Rotation?***==
- Basically, the 3-D rotation is rotations around axes with corresponding angles.
- Theory: when we wanna to rotate a vector in 3-D coordinate, the 3-D rotation can be expressed as the result of three consecutive rotations around the coordinate axes e1, e2, and e3 by angles alpha, beta, and gamma respectively. The angle are then the three parameters of R, and each rotation is expressed as a rotation matrix, Rj, rotating vectors around ej, that is:
    ![](https://i.imgur.com/Ch3lKHI.png)
    
==***What is Rodrigues angle rotation?***==
- provide a method to convert from a rotation vector into a rotation matrix.
- A rotation matrix is an array of nine numbers. These are subject to the six norm and orthogonality constraints, so only *three degrees of freedom* are left: if three of the numbers are given, the other six can be computed from these equations.
- The formula for finding the rotation matrix corresponding to an angle-axis vector is called Rodrigues’ formula, which is now derived.
https://courses.cs.duke.edu/fall13/compsci527/notes/rodrigues.pdf

==***Convert between different kinds of vector to Matrix***==
euclideanspace.com    Math-Rotation conversions.

## From Euler Vector V 6x1 to Homogeneous Matrix 4x4 ##
- It depends on what kind of Euler angle: XYZ or ZYZ. Rotate in order.
    - Ex, with ZYZ, declare a vector r 3x1
        - r[2] = V[3], Rz' get Rx of vector V, other r[0], r[1] get zeros.
        => then find R(alpha) using Rodrigues function convert from r 3x1 into R(alpha) 3x3
        - then, r[1] = V[4], Ry' get Ry of vector V, 
        => then find R(beta) using Rodrigues function convert from r 3x1 into R(beta) 3x3
        - lastly, r[2] = V[5], Rz' get Rz of vector V.
        => then find R(gama) using Rodrigues function convert from r 3x1 into R(gama) 3x3

=> then multiply 3 matrix 3x3 we got the rotation of Homogeneous matrix: r = R(alpha) * R(beta) * R(gama)

- Translation values get from Tx, Ty, Tz of vector V.

## Rotation matrix 3x3 to Euler Angle 3x1 ##
