Robotics
Homogeneous transformation
Definition
In rigid-body robotics, a homogeneous transformation is a 4-by-4 matrix that combines a three-dimensional rotation and translation. It represents a pose or changes coordinates between reference frames.
Also known as: Homogeneous transformation matrix
Updated
Rotation and translation in one matrix
The upper-left 3-by-3 block is a rotation matrix. The upper-right column stores a translation. The final row is zero, zero, zero, one. Modern Robotics uses this structure to represent an oriented body frame relative to a reference frame.
Appending a one to a point's three coordinates allows the matrix to apply rotation and translation in a single multiplication. A direction vector has no position offset, so its homogeneous coordinate is zero instead.
Composing a chain of frames
Suppose a robot knows the camera pose relative to the torso and the torso pose relative to the world. Multiplying the transforms in the matching frame order gives the camera pose in the world. Taking the inverse reverses the coordinate relationship.
Multiplication order matters. Rotating then translating generally gives a different result from translating then rotating, and applying a transform on the left or right changes which frame describes the operation.
The representation has constraints
For rigid motion, the rotation block must be orthonormal with determinant positive one. An arbitrary 4-by-4 matrix is not a valid rigid transform. The geometric operation is a rigid-body transformation; homogeneous coordinates are the matrix representation used to calculate it.
Sources
Related terms
Rigid-body transformation
A rigid-body transformation changes a body's position and orientation without changing its shape or size. In three-dimensional robotics it consists of a proper rotation and a translation.
Rotation matrix
A rotation matrix represents an orientation or rotation while preserving lengths and angles. In three dimensions it is a 3-by-3 orthonormal matrix with determinant positive one.
Forward kinematics
Forward kinematics calculates the position and orientation of a robot link or end-effector from the robot geometry and joint positions. It maps a robot configuration to a pose.