Skip to content

Camera to IMU transformation #985

@TreeHugger101

Description

@TreeHugger101

Hello everyone,

I’m currently working on a project with ORB-SLAM3 (Stereo/Monocular-Inertial mode) and I need some clarification on how the system defines the camera and IMU coordinate axes.

From my understanding so far:

ORB-SLAM3 follows the standard pinhole camera model, where:

x-axis → points right in the image plane

y-axis → points down in the image plane

z-axis → points forward (optical axis)

For the IMU, the convention is less clear to me. In some references I’ve seen:

x-axis → points forward

y-axis → points left

z-axis → points upward

What is the exact coordinate frame definition for the camera and the IMU in ORB-SLAM3?

When specifying the camera-IMU extrinsics in the YAML configuration, should the transform be defined as T_cam_imu (IMU to Camera) or T_imu_cam (Camera to IMU)?

Does ORB-SLAM3 internally enforce any gravity alignment during IMU initialization (e.g., Z-axis aligned with gravity)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions