Skip to content

MoCap Meta Data

Christian Kothe edited this page Apr 28, 2021 · 3 revisions

This page specifies the meta-data for motion capture recordings.

If a stream has the content-type MoCap, we recommend that meta-data about the stream adheres to the structure and naming laid out in the following. While all meta-data is optional, we recommend that any stream should describe at least for each channel the label, marker and type of the channel.

<channels>           # specification of the channel layout 
  <channel>          # information about a single channel (repeated for each)
    <label>          # label of the channel 
    <marker>         # label of the marker that this channel refers to, if any 
    <object>         # label of the object that this channel refers to, if any 
    <type>           # type of data in this channel, can be an of the following values:
                     # ** PositionX, PositionY, PositionZ for euclidean position (strongly preferred unit: meters),
                     # ** OrientationA, OrientationB, OrientationC, OrientationD for quaternion-based orientations
                     #    (where B, C, D are the three axial components),
                     # ** OrientationP, OrientationH, OrientationR for Euler angles (pitch/heading/roll)
                     # ** Confidence for confidence information (preferred unit: normalized)
    <unit>           # measurement unit (e.g., meters)
  </channel> 
</channels> 

 <acquisition>       # information about the acquisition system 
  <manufacturer>     # manufacturer of the system 
  <model>            # model name of the system
  <settings>         # settings of the acquisition system 
  </settings> 
  <compensated_lag>  # amount of hardware/system lag that has been implicitly 
                     # compensated for in the stream's time stamps (in seconds)
</acquisition> 

 <setup>             # information about the physical setup (e.g. room layout) 
  <name>             # name of the setup 

  <bounds>           # bounding box of the space/room (in the same coordinate system as all others) 
    <minimum>        # smallest possible position in the operating volume (for each axis) 
      <X> 
      <Y> 
      <Z> 
    </minimum> 
    <maximum>        # largest possible position in the operating volume (for each axis) 
      <X> 
      <Y> 
      <Z> 
    </maximum> 
  </bounds> 
  
  <markers>          # information about point markers in the setup 
    <marker>         # information about a single marker (repeated for each one) 
      <label>        # label of the marker (referred to in the <marker> element of <channel>) 
                     # extra information about the marker (e.g., location on the body and the like)
    </marker> 
  </markers> 

   <objects>         # information about objects (e.g., rigid bodies) 
    <object>         # information about a single object (repeated for each one) 
      <label>        # label of the object 
      <class>        # class of the object (e.g., Rigid for rigid bodies/props, Bone, Skeleton, MarkerSet) 
    </object> 
  </objects> 

  <cameras>          # camera setup
    <model>          # camera model
    <camera>         # information about a single camera (repeated for each camera) 
      <label>        # label (or id) of the camera 
      <position>     # 3-d position of the camera, in meters (arbitrary coordinate system) 
        <X> 
        <Y> 
        <Z> 
      </position> 
      <orientation>  # orientation of the camera, specified as a quaternion 
        <A> 
        <B> 
        <C> 
        <D> 
      </orientation> 
      <confidence>   # numeric confidence in the position/orientation (preferably normalized between 0 and 1) 
      <settings>     # settings of the camera 
      </settings> 
    </camera> 
  </cameras> 
</setup> 

 <filtering>         # filtering applied to the data 
  <occlusions>       # handling of occlusions (Yes/No) 
  <swaps>            # handling of marker swaps (Yes/No)
  <smoothing>        # Exponential smoothing (Yes/No)
  <kalman>           # Kalman filter/smoother (Yes/No) 
  <rigids>           # system is accounting for rigid-body constraints (Yes/No) 
  <joints>           # system is accounting for joint constraints in articulated bodies (Yes/No) 
  <kinematics>       # system is accounting for physical kinematics (Yes/No) 
  <biomechanics>     # system is accounting for bio-mechanical constraints (Yes/No) 
</filtering>