This article explains how Motionprint Ergo processes motion capture data into ergonomic risk scores — what happens at each stage of the pipeline, how biomechanical variables are derived from recorded movement, and how assessment methods apply those variables to produce a result.

1 Overview

The processing pipeline takes a motion capture recording as input and produces a per-frame time-series of biomechanical variables and risk scores as output. The pipeline runs entirely locally on your machine — no motion data is transmitted externally at any point.

The pipeline has four stages: the recording is uploaded and validated; biomechanical variables are derived from the position and orientation data; the selected assessment method applies its scoring logic to those variables; and the results are rendered as interactive graphs, a 3D avatar playback, and an exportable report.

2 Motion Data Input

What motion capture data contains

A motion capture recording models the body as a set of rigid segments — torso, limbs, hands, feet — each tracked independently in three-dimensional space. At every frame, the system records the position of each segment (its location in world coordinates) and its orientation (the rotation of the segment relative to a reference frame). From adjacent segment orientations, joint angles — the relative rotation between two connected segments — can be derived for every joint in the body.

This produces a dense per-frame dataset: for a recording at 60 Hz, there are 60 snapshots of the full body pose per second. The entire recording becomes a time-series of positions, orientations, and angles that the processing pipeline works through frame by frame.

Currently supported: Xsens MVNX

Motionprint Ergo currently supports Xsens MVNX — an XML format exported from Xsens MVN Analyze Pro. Each sensor unit in the Xsens MVN system contains an accelerometer and gyroscope. The MVN Engine fuses the raw signals from all body-worn sensors into a clean, drift-corrected full-body pose at every frame. The MVNX file contains the output of this fusion process, not the raw sensor signals themselves.

The data channels read from each MVNX file are:

  • Segment positions — world-space (x, y, z) coordinates for each of the 23 body segments at every frame
  • Segment orientations — quaternion (qw, qx, qy, qz) representing each segment's rotation in 3D space
  • Joint angles — pre-computed three-axis angles (flexion/extension, axial rotation, lateral bending) for each joint, computed by the MVN Engine and stored in the file
  • Foot contacts — left and right foot contact flags, used in 3D visualisation only (not in assessment calculations)

Body model

The standard Xsens 23-segment body model is used. Each segment has its own position and orientation tracked independently at every frame.

Spine & Head
  • Pelvis
  • L5
  • L3
  • T12
  • T8
  • Neck
  • Head
Upper Limbs (×2)
  • Shoulder (R & L)
  • Upper Arm (R & L)
  • Forearm (R & L)
  • Hand (R & L)
Lower Limbs (×2)
  • Upper Leg (R & L)
  • Lower Leg (R & L)
  • Foot (R & L)
  • Toe (R & L)

3 Upload & Validation

When a file is uploaded, Motionprint Ergo validates its structure before allowing the assessment to proceed. The validation checks that:

  • The file is valid and can be fully parsed
  • A <subject> element is present with a frameRate attribute
  • At least one normal motion frame exists with both position and orientation data

If any check fails, a specific error message is shown explaining what is missing or incorrect. Metadata extracted during validation — frame rate, segment count, total frame count — is used to configure the processing pipeline for that recording.

4 Deriving Biomechanical Variables

The core of the processing pipeline converts the segment positions and orientations from the motion data into the distances, heights, and angles that assessment methods need. This happens in three steps.

Anatomical landmark positions

Segment positions in the MVNX file represent the origin of each body segment. In addition to segment origins, MVNX provides positional data for specific bony landmarks — precise anatomical reference points such as the palm centre, medial malleolus, or shoulder tip — stored separately in the file. The pipeline reads these landmark positions directly where they are available.

Where a landmark position is not stored explicitly in the file, the pipeline derives it by taking the segment origin and adding a fixed body-frame offset vector, then rotating that offset using the segment's quaternion orientation to bring it into world coordinates via quaternion-to-rotation-matrix conversion.

Distances, heights, and angles

With anatomical landmarks positioned in world space, the pipeline extracts the variables each assessment method requires:

  • Horizontal distances are computed from XY-plane projections of landmark positions (e.g., the distance between ankle mid-point and hand mid-point in the horizontal plane)
  • Vertical heights are read from the Z-coordinate of the relevant landmark relative to the calibrated floor plane (Z is the vertical axis in MVNX convention)
  • Body segment orientations are derived from each segment's quaternion by converting to a rotation matrix. These represent the absolute orientation of a segment in world space and are used to compute angles relative to gravity, the vertical axis, or other reference directions as required by the assessment method
  • Joint angles are read directly from the pre-computed values stored in the input file — they are not re-derived by the pipeline

Frame-by-frame time-series

Every variable is computed independently at every frame of the recording. A 60-second recording at 60 Hz produces 3,600 values per variable. This produces a full per-frame time-series for each metric — the dataset that drives the interactive graphs and 3D avatar playback in the In-Depth Analysis tab. The time-series lets you see not just the peak risk value, but where in the recording it occurred and how it evolved across the task.

5 Assessment-Specific Scoring

Once biomechanical variables are derived, the selected assessment method applies its scoring logic. Each method defines which variables it needs and how they combine into a risk score. How the NIOSH Lifting Equation and KIM-LHC specifically use these variables — including their formulas, multipliers, and risk classification — is covered in the dedicated articles for each method.