Homogeneous Transforms and Transform Chains
A homogeneous transform packs a rotation and a translation into one matrix, so moving between frames becomes matrix multiplication. Chain several and you can carry a point from a camera on an arm all the way to the map.
The homogeneous transform
In 2D, a frame at position \((x, y)\) with heading \(\theta\) relative to another frame is written as one 3 by 3 matrix. A point gets an extra 1 so it can be multiplied:
Chaining
Writing \(T_{AB}\) for the pose of frame \(B\) in frame \(A\), a point seen by the camera reaches the world by multiplying down the chain:
What to notice
Change the base heading and everything downstream swings with it, while the point's camera coordinates never change. The order of multiplication matters: each matrix is applied in the frame of the one before it. In 3D the same idea uses 4 by 4 matrices, and ROS 2 keeps a whole tree of them, called TF.