Embodied AI Glossary中文

Right-Handed Frame & Axis Conventions

右手坐标系与轴向约定Common

Conventions for how x, y, z are arranged and which axis points up — inconsistent across software, and a frequent source of bugs.

A right-handed coordinate frame is one where x, y, and z follow the right-hand rule: point the right thumb, index, and middle fingers along x, y, and z respectively, so x crossed with y gives z; a positive rotation about an axis is the direction the fingers curl when the right thumb points along that axis's positive direction. ROS's REP 103 (drafted starting 2010) specifies that a body frame points x forward, y left, and z up, and that geographic coordinates use east-north-up (ENU); cameras get a separate frame with an _optical suffix, where z points forward, x points right, and y points down. Another point of disagreement is which axis points up: ROS, MuJoCo, and Isaac Sim default to Z-up, while glTF specifies Y-up; a USD camera looks down −Z with +Y up, which differs from ROS's optical frame by a 180° rotation about x. Importing a mesh, motion-capture data, or a point cloud without reconciling these conventions leads to models lying on their side, mirrored left-right, or point clouds turned upside down.

ExampleA depth camera's point cloud comes out in the optical frame, where z points forward; used directly as if it were the body frame (x forward, z up), objects on a table would appear to stand up in midair, as if rotated 90° — a fixed rotation has to be applied first, converting from the camera_optical frame to the camera_link frame.

Also called
REP 103, Z-up vs. Y-up, Camera Optical Frame, ENU
Related
Coordinate Frame · Coordinate Transformation · Camera Coordinate Frame · TF / tf2 Transform Tree · REP 105 · Quaternion Component Order (wxyz vs. xyzw)
Sources
REP 103: Standard Units of Measure and Coordinate Conventions
Isaac Sim Documentation: Conventions Reference
glTF 2.0 Specification: Coordinate System and Units

See it in the full glossary →