In literature (3D graphics, computer vision, 3d deep learning etc.) I notice that often an object's pose is represented using a rigid transformation, i.e a member of the group SE(3) combining a rotation and a translation.

While I understand the mathematics of such transformation, how do you ascribe semantic meaning to such a pose?

i.e lets assume we are describing the pose of a camera in a 3d scene. The translation part would then represent the point in space where the camera is centered but then there needs to be some canonical convention that gives meaning to the specific orientation of the camera's coordinate system (e.g the rotation) - is this simply taken to be application-specific / based on conventions? e.g. "Y positive axis always means up direction, and camera usually looks forward at positive Z direction"?

I guess put simply my question is - how is the rotation part of the rigid transformation representation associated with an object's particular pose semantics?

  • $\begingroup$ The rotation matrix has no inherent semantic meaning. The meaning is implicitly prescribed by how you map things to your screen in computer graphics and how you choose to denote your axes. Mathematically the matrix does not know or care what you call up, forward, or right. $\endgroup$
    – lightxbulb
    May 15 at 0:05
  • $\begingroup$ I understand that’s exactly my question. If I’m given what is supposed to be the pose of the camera as a rigid transformation matrix, how do I know to parse that? Simply Context specific? $\endgroup$
    – giorgio
    May 15 at 0:59
  • 1
    $\begingroup$ It is context specific. For example, in NeRF, we should know the definition of both the local camera frame and the matrix, before we apply the parsed rotation transformation. The transformation matrices from different conventions will lead to different results, see ref1 and ref2. I recall when I wanted to use COLMAP transformations in NeRF, I had to add an extra tranformation matrix to account for differences in convention. $\endgroup$ May 15 at 1:36

1 Answer 1


In the usual situations, scenes are described in a virtual World coordinate system that is taken as an absolute reference.

Objects are positioned in this space using a rigid transformation, which is defined by selecting a center point (usually the origin of a coordinate system local to the object), and main axis directions (defining local coordinate system).

The camera can be positioned the same way. It is often the case that objects are defined as assemblies (or boolean combinations), so that every component requires its own reference frame, and parts are positioned wrt a common system.

Now at rendering time, you need the coordinates as seen from the camera. This can be done by computing the object-to world transformation(s), followed by the world-to-camera transformation, which is the inverse of camera-to-world.

The process is eased by the fact that the combination of two rigid transformation is also a rigid transformation, so that a chain of transformations can be merged into a single one.

New contributor
Yves Daoust is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.