Skip to main content

Metadata Model

Metadata is the “dictionary” that explains what your streams mean.

Without metadata, a SkeletalPose is just numbers—metadata tells you the joint names, hierarchy, neutral pose, units, and coordinate system.


Metadata vs Streams

Streams = data over time
Metadata = the structure that gives meaning to that data

Think of metadata as blueprints.


Namespaced Metadata

Metadata identifiers look like this:

MIND.skeleton/HumanDefault@1.0.0

This tells you:

  • namespace (MIND)
  • family (skeleton)
  • name (HumanDefault)
  • version (1.0.0)

This pattern matches modern standards like USD, ROS, and OpenXR.


Metadata Families Explained

skeleton/

For human or agent skeleton structures.

camera/

For CV pipelines, multi-camera rigs, perspective models.

device/

For IMUs, VR controllers, gloves, trackers.

biosensor/

For EEG, EMG, ECG, GSR.

robot/

For robot links, joints, morphologies.

object/

For physical objects with known dimensions.

retarget/

For mapping between skeletons, robots, avatars.

ASCII diagram:

Metadata
├── skeleton/
├── camera/
├── device/
├── biosensor/
├── robot/
├── object/
└── retarget/

Why Streams Must Reference Metadata

A stream without metadata is ambiguous.

Examples:

  • Pose without skeleton = unusable
  • EEG without sensor layout = meaningless
  • CV landmarks without camera intrinsics = unprojectable
  • Robot commands without robot model = uninterpretable

Hierarchy and Composition

Metadata can contain subcomponents:

  • A skeleton contains hands and face
  • A camera rig contains multiple cameras
  • A robot contains links and joints
  • A biosensor rig contains electrodes

This mirrors USD and robotic URDF.


Calibration Transforms

Metadata defines the coordinate transforms needed to align multimodal data:

  • IMU orientation
  • camera extrinsics
  • skeleton neutral pose
  • robot joint offsets

Without these, fusion is impossible.


Temporal Validity Explained

Real-world systems recalibrate.

Metadata can specify:

valid_from: 1200 ms
valid_to: 5000 ms

This allows:

  • calibration drift handling
  • dynamic sensor changes
  • robot tool swaps

Metadata Referencing Streams

Useful for robotics and CV calibration:

  • CameraProfile → calibration frames
  • RobotModel → joint encoder logs
  • Biosensor profile → baseline EEG windows

Metadata Extensions

Vendors can add custom fields:

extensions: {
"LAB_X.sensorQuality": 0.98
}

This mirrors glTF and Khronos extension philosophy.


Summary

Metadata makes MIND data meaningful:

  • Defines bodies, sensors, robots
  • Provides transforms and calibration
  • Enables multimodal fusion
  • Works with real-time and offline systems
  • Fully extensible