GI Ego1
Head-worn stereo headset: colour rolling-shutter fisheye cameras, 9-DoF IMU

- Cameras
- 2× 1080p, 30 fps, colourMaker ↗︎
- Shutter
- RollingMaker ↗︎
- Field of view
- Calibrated ~122° × 68°Measured
120° × 72°, fisheyeMaker ↗︎ - Baseline
- 63 mmMaker ↗︎
- IMU
- 9-DoF, 200 HzMaker ↗︎
- Output
- One .mcap file, H.265Maker ↗︎
Maker values checked 2026-11-03 · 1 recording, 30.1 s · CC BY-NC 4.0 · ~ is read past the range the board corners reached. Past the fit: no value, the edge lies beyond where the lens fit holds.
Demo and values
Section titled “Demo and values”One 30-second recording of an AprilGrid, solved with MVIS for camera, IMU and time offsets, with the rolling-shutter readout estimated too.
One recording, with no independent reference. These values show what MVIS solved, not how close they are to the truth.
Calibration process
Section titled “Calibration process”The solved path of the rig around the board. Press Play or drag the bar to follow it, and use the buttons to change the view.
Solved rig
Section titled “Solved rig”The solved rig in 3D, to scale. Tap a sensor for its values. Full screen lets you rotate and zoom. Grid squares are 20 mm.
To scale, from above and the front
| Camera | Lever x, y, z (mm) | Distance (mm) | log(R) (rad) | td (ms) | Field of view |
|---|---|---|---|---|---|
| cam0 | −12.7, −21.3, −20.2 | 31.9 | [+0.023, −3.125, −0.021] | +55.55 | ~122° × 68° |
| cam1 | +49.4, −20.4, −21.8 | 57.8 | [+0.022, −3.117, −0.008] | +55.63 | ~128° × 68° |
Solved by MVIS. Lever arms are in the IMU frame. Rotation is log(R), camera in the IMU frame.
Specifications
Section titled “Specifications”| Measured in these recordings | |
|---|---|
| Shutter | Rolling, readout about 26 ms (solved) |
| Cameras | 2 × 1920×1080 at about 30 fps |
| Calibrated field of view | cam0 ~122° × 68° · cam1 ~128° × 68° |
| Published by the maker | |
| Field of view | 120° × 72° |
| IMU | 200 Hz, 9-DoF |
| Not published | |
| Open | Sensor part numbers |
Dataset
Section titled “Dataset”| Recording | 2026-07-17, 30.1 s |
| Format | MCAP, H.265 |
| Frames | Everything except the board is blurred |
| Frames kept at decode | cam0 889 of 900, cam1 about 859 |
| Board | AprilGrid 6×6, tag 35.2 mm, spacing 0.3 |
| Bags, configs and results | Calibench community, gi-ego1/ (access by automatic approval) |
| Licence | CC BY-NC 4.0, for the data and for this page's clip and figures; commercial use by request |
| Hosted | Calibench, gilabs-examples/ (access by automatic approval) |
Detailed results
Section titled “Detailed results”Lens Calibrated field of view
Calibrated field of view, horizontal × vertical. cam0: ~122° × 68°, corners reach 44° from the axis · cam1: ~128° × 68°, corners reach 50° from the axis
cam0 cam1
Read from the calibrated lens fit at the image edges, through the principal point. ~ marks an axis past the range the corners reached, where the fit is extrapolated. Past the fit means an edge lies beyond where the fit holds, so no value is given.
IMU Gyro-to-accel offset −5.66 ms
Scale as deviation from 1. Model: calyx. Gyro-to-accel time offset t_ga: −5.66 ± 0.64 ms.
Timing cam0 td +55.55 ms
Offsets to scale, with t_imu = t_cam + td.
Full results Every solved parameter
Rotation is log(R) in rad, camera in the IMU frame.
| Parameter | MVIS |
|---|---|
| cam0 | |
| fx px | 917.21 |
| fy px | 917.02 |
| cx px | 959.66 |
| cy px | 565.21 |
| k1 | −0.02889 |
| k2 | −0.00898 |
| k3 | −0.01316 |
| k4 | 0.03078 |
| Lever x mm | −12.67 |
| Lever y mm | −21.28 |
| Lever z mm | −20.16 |
| log(R) rad | [+0.0228, −3.1248, −0.0213] |
| td ms | +55.545 |
| Reprojection px | 0.194 |
| Readout ms | −26.48 |
| cam1 | |
| fx px | 922.97 |
| fy px | 922.72 |
| cx px | 894.01 |
| cy px | 561.58 |
| k1 | −0.03227 |
| k2 | −0.00100 |
| k3 | 0.00497 |
| k4 | −0.01177 |
| Lever x mm | +49.43 |
| Lever y mm | −20.45 |
| Lever z mm | −21.78 |
| log(R) rad | [+0.0220, −3.1169, −0.0083] |
| td ms | +55.631 |
| Reprojection px | 0.198 |
| Readout ms | −26.53 |
| IMU | |
| t_ga ms | −5.66 ± 0.64 |
Limits
Section titled “Limits”- One recording, with no independent reference. These values show what MVIS solved, not how close they are to the truth.
- Gyro scale solves 3 to 4 % below 1 on all axes. We have not confirmed the cause.
How it was run
Section titled “How it was run”- Recording converted to EuRoC layout, camera-only solve per camera, then camera + IMU with camera intrinsics free, t_ga on and the rolling-shutter readout estimated. Batch of 2026-11-03.
- sha256 of the recording:
f4443fc201d70088a28aa2011c1f82597ae911f2896745bdf267fa043f8aeae4