No jobs
Foundation 9 min 1 of 3

Frames, and a notation that catches mistakes

Every pose has a source frame, a target frame, and a direction. Name all three.

What this repairs

The habit of calling a variable `pose` or `T_cam` and reconstructing its meaning from context each time it is used.

Write a transform as ATB^{A}T_{B} and read it "the pose of frame BB expressed in frame AA ". It has two equivalent meanings, and holding both at once is the skill:

  1. As data: it describes where BB is, from AA 's point of view. Its translation is the origin of BB in AA 's coordinates; the columns of its rotation are BB 's axes in AA 's coordinates.
  2. As an operator: it rewrites a point from BB 's coordinates into AA 's.

Ap=ATB  Bp.^{A}\mathbf{p} = {}^{A}T_{B}\; {}^{B}\mathbf{p}.

The subscript and the superscript cancel, like units. That cancellation is a type-check you can run in your head, and it is the reason to adopt the notation.

Inverting a pose

  1. Ap=RBp+t^{A}\mathbf{p} = R\, {}^{B}\mathbf{p} + t

    The forward map, with R and t the rotation and translation of ᴬT_B.

  2. Bp=R(Apt)^{B}\mathbf{p} = R^{\top}\left({}^{A}\mathbf{p} - t\right)

    Solve for the other side. R is orthogonal, so its inverse is its transpose.

  3. Bp=RAp  +  (Rt)^{B}\mathbf{p} = R^{\top}\,{}^{A}\mathbf{p} \;+\; \left(-R^{\top} t\right)

    Regroup into the standard (rotation, translation) form. The translation of the inverse is −Rᵀt, not −t: the offset must be re-expressed in the rotated frame before it can be subtracted.

  4. BTA=[RRt01]^{B}T_{A} = \begin{bmatrix} R^{\top} & -R^{\top} t \\ \mathbf{0}^{\top} & 1 \end{bmatrix}

    The result. Correct only when R is a genuine rotation — a matrix that has drifted from orthogonality by numerical error will not invert this way.

Check yourself

You have WTC^{W}T_{C} for two cameras and want the relative pose that takes points from camera 1 into camera 2. Write it.

Show answer

C2TC1=C2TW  WTC1=(WTC2)1WTC1^{C_2}T_{C_1} = {}^{C_2}T_{W}\; {}^{W}T_{C_1} = \left({}^{W}T_{C_2}\right)^{-1} {}^{W}T_{C_1} . The indices cancel through WW , which is the check. This expression is the input to the essential matrix, and getting it backwards produces epipolar lines that look plausible and are wrong.

Euler View - ML Experiment Monitor