GI Labs · Ego 1 GS VIO accuracy benchmark · September 2026
Stereo-inertial tracking vs. Vive Tracker

Under 1% drift per meter moved.

Two global-shutter cameras and an IMU are all Ego 1 GS needs to track its own motion. Across 7,545 one-meter movements its estimate drifts 0.87% on average, and after 8 meters of motion the error is still only 14 mm.

Vive Tracker reference Ego 1 GS VIO
t 0.0 sSession 5 · grid 10 cm · drag to rotate
Drag or use arrow keys to rotate the trajectory.
0.87%
Drift per meter
average of 7,545 one-meter movements
0.18%
Drift over 8 meters
14 mm after 8 m of motion
0.47°/m
Rotation drift per meter
falls to 0.10°/m over 8 m
0.21%
Drift over 30 seconds
14 mm across 6.1 m moved
Drift per movement

8 meters of motion, 14 mm of error

Error hardly grows as Ego 1 GS keeps moving: every stretch of motion from 0.25 m to 8 m, measured against the reference.

All sessionsEach session

Position error after the movement mm · mean

Drift as a share of distance moved % · mean

Rotation drift per meter °/m · mean

Every movement counted

96% of 2-meter movements drift under 1%

Not an average: the share of all movements in each drift band.

Movements by drift band all sessions

Drift per time

1.4 cm after 30 seconds of motion

Every time window from 0.1 s to 30 s, across all sessions. From 5 seconds on, drift stays under 1% of the distance moved.

All sessionsEach session

Position error in the window mm · RMSE

Drift as a share of distance moved %

Rotation error in the window ° · RMSE

Session 5 · 114 s

Steady from the first meter to the last

Drift over the meter just travelled, at every moment the device is moving.

Drift over the last 1 m %

All five sessions

Five sessions, five minutes, 60 meters

Same device, same calibration, every benchmark session shown.

ReferenceEgo 1 GS VIO

Drift per meter % · mean

Rotation drift per meter °/m · mean

Same recordings, same time window

Up to 46% less drift per meter than Basalt

Sessions 2–4 were also processed with Basalt, a widely used open-source VIO.

Ego 1 GS VIOBasalt

Drift per meter % · mean

Drift over 5 seconds mm · RMSE

Also measured

Absolute accuracy

Position against the reference after one alignment in the first 5 seconds, never repeated.

Vive Tracker referenceEgo 1 GS VIO
Session 5 RMSE 10.4 mm · 0.66° All sessions RMSE 14.7 mm · 0.73° Poses within 2 cm 86%

Top view session 5 · grid 10 cm

Side view grid 10 cm

Close-up

Position error over time session 5 · mm

Position RMSE by session mm

Share of poses within an error all sessions

Results

Every number, per session

Drift per movementDrift per timeAbsolute
SessionDurationDistancePer 1 mPer 2 mRotation / 1 mOver 1 sOver 5 sPosition RMSEOrientation RMSE
Session 141.6 s10.4 m0.85%0.45%0.47°/m7.0 mm8.8 mm9.4 mm0.67°
Session 239.7 s9.3 m0.92%0.57%0.38°/m7.0 mm9.5 mm12.2 mm0.52°
Session 354.5 s11.1 m1.32%0.70%0.52°/m8.7 mm14.3 mm24.0 mm0.72°
Session 451.2 s10.0 m0.73%0.49%0.46°/m6.0 mm7.4 mm14.9 mm1.02°
Session 5113.9 s18.9 m0.67%0.40%0.48°/m4.8 mm8.0 mm10.4 mm0.66°
All sessions300.9 s59.7 m0.87%0.51%0.47°/m6.5 mm9.6 mm14.7 mm0.73°
Method

How we measured

Ego 1 GS2 global-shutter cameras + IMU
VIO trajectory6-DoF pose, 30 Hz
Pose-by-pose comparison100% of VIO poses matched to the reference
Vive TrackerRigidly mounted on Ego 1 GS
Reference trajectory6-DoF pose, 120 Hz
Drift per movementFor every stretch of motion of a set length, the motion Ego 1 GS measured is compared with the reference. The gap, divided by the distance, is the drift.
Drift per timeThe same comparison over every time window from 0.1 s to 30 s. No alignment is involved.
Absolute errorOne rigid alignment over the first 5 seconds, then never repeated. No scale fitting — distances are true metric.
Stereo-inertial VIOOpenVINS-based pipeline, run on the camera and IMU streams Ego 1 GS records.
Everything countedReported error also contains the Vive Tracker's own error and calibration and time-sync uncertainty.