Data for: Detecting artificially impaired balance in human locomotion: metrics, perturbation effects and detection thresholds
Data files
May 22, 2025 version files 72.93 GB
-
Main_README.txt
28.10 KB
-
README.md
26.41 KB
-
Scripts.zip
273.49 KB
-
Subject_10.zip
7.57 GB
-
Subject_11.zip
7.24 GB
-
Subject_12.zip
7.16 GB
-
Subject_13.zip
7.33 GB
-
Subject_14.zip
7.12 GB
-
Subject_5.zip
7.55 GB
-
Subject_6.zip
7.60 GB
-
Subject_7.zip
7.35 GB
-
Subject_8.zip
6.97 GB
-
Subject_9.zip
7.05 GB
Abstract
Measuring balance is important for detecting impairments and developing interventions to prevent falls, but there is no consensus on which method is most effective. Many balance metrics derived from steady-state walking data have been proposed, such as step width variability, step time variability, foot placement predictability, maximum Lyapunov exponent, and margin of stability. Recently, perturbation-based metrics such as center of mass displacement have also been explored. Perturbations typically involve unexpected disturbances applied to the subject. In this study, we collected walking data from 10 healthy subjects while walking normally and impairing their balance with ankle braces, eye-blocking masks, and pneumatic jets on their legs. In some walking trials, we also applied mechanical perturbations to their pelvis. We provide a comprehensive biomechanics dataset as supplementary material. We compared the ability of various metrics to detect impaired balance using steady-state walking and perturbation recovery data. We also compared metric performance using thresholds informed by data from multiple subjects versus subject-specific thresholds. We found that step width variability, step time variability, and foot placement predictability, using steady-state data and subject-specific thresholds, detected impaired balance with the highest accuracy (≥86%), while other metrics were less effective (≤68%). Incorporating perturbation data did not improve the accuracy of these metrics, though this comparison was limited by the small amount of perturbation data included and analyzed. Subject-specific baseline measurements improved the detection of changes in balance ability. In clinical practice, taking baseline measurements might improve the detection of impairment due to aging or disease progression.
Dataset DOI: 10.5061/dryad.cnp5hqch3
Description of the data and file structure
1) <”Scripts” folder> section: Describes the folder titled “Scripts”, which includes information on how we processed our data.
2) <”Subject X” folders…> section: Describes all the data in the folders that can be found in the “Subject X” folders.
3)
“Scripts” folder
Scripts and aggregate data used for time-synchronizing sensors (e.g., between Vicon, EMG, etc.) and sensor data processing.
Read the README in the “Scripts” folder for a more detailed guide on how we processed our data using these scripts.
visualizeProcessedData.m demonstrates how to load important signals in the dataset using MATLAB.
Note: All code using the data in this dataset to generate results in the accompanying manuscript is written in Python and R, using Jupyter and RStudio, respectively.
Code located at https://github.com/mraitor/balanceMetric
“Subject X” folders (With X being the subject number)
The directories in this dataset contain perturbation and steady-state walking data for participants in various balance impairment conditions.
Each subject has their own folder with a README describing details specific to the subject and sessions experienced by that subject.
This top-level readme describes the perturbation data/conditions experienced by each subject, the overall data structure, and how to interpret filenames.
Note: subject numbers are shifted relative to the supplementary figure in the accompanying manuscript.
Manuscript subject 1 corresponds to subject 5 in this dataset, manuscript subject 2 corresponds to subject 6 in this dataset, and so on.
Subject number in manuscript = subject number in dataset - 4.
Folder organization within each subject folder:
OpenSim (OpenSim files)
\> SXXTYZ (See "Reading session ID numbers" section below for interpretation)
\> Models (unscaled and scaled OSim model for session, Geometry subfolder contains model geometry files)
\> C3D (C3D files)
\> Marker Data (.trc files from standing and trials)
\> IK (Inverse kinematics results)
\> ExtractedSignals (Signals generated using OpenSim, recorded in csv per trial.
Signals include com_pos, com_vel, kinetic_energy, whole body angular momentum, and principal moments of inertia of the whole body.
Note: These directories are downloaded from addBiomechanics, and the format may change as they are auto-generated
Perturbation Order
\> SXXTYZ (See "Reading session ID numbers" section below for interpretation)
.csv and .mat files contain the same information.
They include information on perturbation magnitude, direction, and timing.
\- The row numbers indicate the order in which the perturbations were experienced. This corresponds to the
\- pertPointCycleLME: Perturbation point in gait cycle as a fraction of the full gait cycle (Starting from left heel strike and ending before next
left heel strike. e.g., 0% is left heel strike, 32.5% is mid-stance of left leg, and 65% is approximately toe-off for left leg)
\- pertForceDirLME_ML: Perturbation component in medial-lateral direction. Has convention of + to the right, - to the left
\- pertForceDirLME_AP: Perturbation component in anterior-posterior direction. Has convention of + to anterior, - to posterior
\- pertForceMagLME: Perturbation magnitude as fraction of subject bodyweight
\- pertID: Perturbation ID. Each perturbation type (of a certain direction and magnitude) has a unique ID number. This is consistent across subjects.
e.g., leftward + high force will always have a pertID of 7. This number is different from the perturbation order
\- pertRepeatNum: Each perturbation type (of a certain direction and magnitude) is repeated twice. This records if it's the 1st or 2nd occurrence.
Speedgoat Processed Data
\> SXXTYZ (See "Reading session ID numbers" section below for interpretation)
\> SXXDYZ01 - SXXDYZ16: 16 files for 16 perturbation trials
\- .mat files include a data structure 'speedgoatDataTrimmed' that includes the following data (See 'Speedgoat data' section for more info)
\- Bump'em module pull force trajectories: in speedgoatDataTrimmed.data columns 5-8
\- time: in speedgoatDataTrimmed.data column 33
\- Various controller states: in speedgoatDataTrimmed.data, all other columns
\- Perturbation number is represented by the last 2 characters in the file name.
\- These are time-synced with Vicon and OpenSim files (they cover the same period of time, but sample at different frequencies.
See the "Recording Rates" section further down the README for details.
Speedgoat Raw Data
\> SXXTYZ (See "Reading session ID numbers" section below for interpretation)
\> .DAT file is a full session record (all 16 perturbations)
The accompanying .mat file with relevant variables (_VARS) for perturbation order is only included for completeness.
Users should not need this data. It is only included for completeness.
Vicon Processed data
\> SXXCC0
\> bumpem: Bump’em module markers in capture volume
\> SXXCC0qq file (where qq is a 2-digit number): Can be ignored. The info included is redundant
\> SXXCYZ - All other "Calibration" files, where 4th character = 'C' (See "Reading session ID numbers" section below for interpretation)
\> emg: Maximum voluntary muscle contraction for EMG
\> post_pert_walk: 3 min walking trial after perturbation sequence
\> pre_pert_walk: 3 min walking trial before perturbation sequence
\> standing: standing and ROM motion on treadmill for subject scaling
\> SXXDYZqq files (where qq is a 2-digit number): Can be ignored. The info included is redundant to the previous 4 listed files
\> SXXDYZ "Data" files, where the 4th character = 'D' (See "Reading session ID numbers" section below for interpretation)
\> SXXDYZ01 - SXXDYZ16: 16 files for 16 perturbation trials
\- .mat file includes a data structure that includes the following data
\- Ground reaction force data: in data.Analog.Signal columns 1-12 (See 'Ground reaction force data' section below for more info)
\- EMG data: in data.Analog.Signal columns 25-40 (See 'EMG data' section for more info)
\- Marker motion caption data: in data.Coor.Signal columns 1-12 (See 'Vicon marker motion capture data' section below for more info)
\- The last two characters (01 to 16) represent the order in which that perturbation was experienced. This corresponds to the row numbers in
the corresponding session folder within the 'Perturbation Order' folder (see 'Perturbation Order' folder description above to understand
How to get pull force and direction info from the perturbation order number.
\- Additional notes
\- Marker position data were filtered with a 30 Hz 4th-order Butterworth low-pass (zero-lag) filter unless otherwise noted in subject/session notes.
\- .mat files in this folder carry redundant info to .c3d and are included for convenience.
\- During a 3-minute walk, the subject had arms up on the harness as they do during perturbations (no arm swing).
\- Bump’em is on in low-force tracking mode for all 3-min walk tests, take the middle 3 min as some recordings are longer due to
starting/stopping condition (e.g., putting on eye mask, etc.)
Vicon Raw data
\> SXXTYZ (See "Reading session ID numbers" section below for interpretation)
\> Unlabelled raw data from Vicon from session (as a redundancy only, in case it is of interest to users)
Reading session ID numbers:
(Session IDs are the folder names in Subject X\…\SXXTYZ)
General form: “SXXTYZ”
1st Character: “S” stands for “subject”
2nd-3rd characters: XX is a placeholder for the subject number
4th character: T is a placeholder for the Trial type
"C" = "calibration" trials, which include recordings of standing calibrations, range of motion calibrations, and 3-min walking pre and post perturbation
"D" = "Data", meaning recordings of actual perturbations.
5th character: Y is a placeholder for Balance impairment condition when it is “N”, “A”, “E”, or “P”. “C” is an exception to the category
"N" = Normal shoe condition (Wearing normal walking shoes)
"A" = Ankle braces condition (aircast boots instead of normal walking shoes)
"E" = Eyes blocked condition (wearing blindfold and normal walking shoes)
"P" = Pneumatic condition (normal walking shoes + air thrusters perturbing at the ankles simulating neuromuscular noise)
"C" = Bumpem module position registration recording with Vicon. This is found only in Vicon data folders.
6th character: Z is a placeholder for the order number that the condition was experienced in (1-4), or 0 if it is a Bumpem module position registration file
"1", "2", "3", or "4" = the order in which that condition was experienced. This was randomized.
"0" = This is a Bumpem module position registration file
For example
"S05DN4" would indicate that we are looking at Subject 05, perturbation data, for the normal shoes condition, where it was the 4th condition experienced
"S08CP3" would indicate that we are looking at Subject 08, calibration data, for the pneumatic condition, where it was the 3rd condition experienced
"S02CC0" would indicate that we are looking at Subject 02's motor module registration file (Only found in "Vicon Raw Data" and "Vicon Processed Data" folders)
Example of where to find data
E.g., we want to find data from: Subject 5, Normal shoes condition, Rightward, low force perturbation, first occurrence (each perturbation type is repeated twice)
\- SESSION ID: Based on subject number and condition of interest, we know that we are looking at session ID S05DN4 (Based on 'Reading session ID numbers' section)
\- PERTURBATION NUMBER: To find perturbation number,
\- Open: Subject 5/Perturbation Order/S05DN4
\- Find first row where pertForceDirLME_ML = 1, pertForceMagLME = 0.0749
\- In this case, perturbation number = 5 (since it's on row 5)
\- KINEMATICS:
\- Find data in Subject 5/OpenSim/S05DN4/IK/S05DN405.mot
\- TREADMILL GROUND REACTION FORCE:
\- Find data in Subject 5/Vicon Processed Data/S05DN4/S05DN405 > 'data' matlab structure > data.Analog.Signal columns 1-12
(See 'Ground reaction force data' section for more info)
\- EMG:
\- Find data in Subject 5/Vicon Processed Data/S05DN4/S05DN405 > 'data' matlab structure > data.Analog.Signal columns 25-40
(See 'EMG data' section for more info)
\- BUMP'EM MODULE FORCES:
\- Find data in Subject 5/Speedgoat Processed Data/S05DN4/S05DN405 > 'speedgoatDataTrimmed' matlab structure > columns 5-8
(See 'Speedgoat data' section for more info)
Additional details about the data and various labels
Contains detailed information on the dataset and the labels within various MATLAB data structures
Recording Rates and important experimental values across all subjects/trials:
Speedgoat records at 1000Hz
Xsens records at approx. 100 Hz
Vicon motion capture records at 100Hz
Vicon analog signals (EMG, force plates) recorded at 1000Hz
Walking speed: 1.25 m/s
Stride cycle is left heel strike based (0% is at left heel strike)
Each perturbation trial is 21 seconds long, and perturbation is targeted to occur at 10s into the recording, lasting 300ms
Each subject experiences 4 conditions (Ankle braces, Eyes blocked, pneumatic, and normal shoes). Within each condition, the subject experiences 16 perturbations
(4 directions (front, back, left, right), 2 magnitudes (7.5%, 15% of bodyweight), 2 repeat perturbations, all in a pseudorandom order. Perturbation timing
always targets to begin at 32.5% of the gait cycle (mid-stance of the left leg). Subjects walk unperturbed for approximately 3 minutes before and after each
bout of 16 perturbations.
Reference Frames
- Vicon data: Z upward, X to the right side of the treadmill (and generally rightward of the person as well), Y forward on the treadmill (and generally on the person as
well). Origin is the back left corner of the treadmill. Vicon data in both .c3d and .mat files has this orientation/origin.
- OpenSim has a different convention. Y is upward, X is forward on the treadmill, and Z is to the right. The origin is in the back left corner of the treadmill. This ref frame applies
to .trc, .mot, and files derived from them, such as ‘ExtractedSignals’ .csv files.
- Bertec treadmill force plate data: X is leftward, Y is forward, Z is downward
Ground reaction force data
- Ground reaction force data from the treadmill can be found in: Subject X\Vicon Processed Data\SXXDYZ\SXXDYZqq.mat
- Data is contained in the MATLAB structure labeled ‘data’
- data.Analog.Signal contains ground reaction force data in columns 1-12 as labeled in data.Analog.Label
- data.Analog.Label contains the headers of each signal. The headers corresponding to ground reaction forces are in the first 12 rows as follows:
'Force.Fx1' -> Force on left belt in x-direction (in Newtons)
'Force.Fy1' -> Force on left belt in y-direction (in Newtons)
'Force.Fz1' -> Force on left belt in z-direction (in Newtons)
'Moment.Mx1' -> Moment on left belt in x-direction (in Newton-meters)
'Moment.My1' -> Moment on left belt in y-direction (in Newton-meters)
'Moment.Mz1' -> Moment on left belt in z-direction (in Newton-meters)
'Force.Fx2' -> Force on right belt in x-direction (in Newtons)
'Force.Fy2' -> Force on right belt in y-direction (in Newtons)
'Force.Fz2' -> Force on right belt in z-direction (in Newtons)
'Moment.Mx2' -> Moment on right belt in x-direction (in Newton-meters)
'Moment.My2' -> Moment on right belt in y-direction (in Newton-meters)
'Moment.Mz2' -> Moment on right belt in z-direction (in Newton-meters)
- Reference frame
\- For Bertec treadmill data: X is leftward, Y is forward, and Z is downward.
\- Origin of left force plate forces and moments is in the back left of the left force plate, 15mm below the force plate.
\- Origin of right force plate forces and moments is in the back right of the right force plate, 15mm below the force plate.
\- Origins of left and right force plates are 1m apart in the x-direction.
EMG data
- EMG data taken at 16 locations can be found in: Subject X\Vicon Processed Data\SXXDYZ\SXXDYZqq.mat
- Data is contained in the MATLAB structure labeled ‘data’
- data.Analog.Signal contains EMG data in columns 25-40 as follows:
Columns 25-32: Left leg
25-> Tib Aant
26-> Soleus
27-> Gastroc (Med)
28-> Semi Tend
29-> Vast Lat
30-> Rec Fem
31-> Glut Max
32-> Glut Med
Columns 33-40: Right leg
33-> Tib Aant
34-> Soleus
35-> Gastroc (Med)
36-> Semi Tend
37-> Vast Lat
38-> Rec Fem
39-> Glut Max
40-> Glut Med
- data.Analog.Label contains the data headers. Voltage.1 to Voltage.16 in rows 25-40 correspond to the 16 EMG signals
- Note: EMG signals have not been filtered in any way. Suggested filtering demonstrated in Scripts/Extra Manual Motion Capture Processing Scripts/visualizeEMG.m
Vicon marker motion capture data
- Motion capture data of 45 Vicon markers can be found in Subject X/Processed Vicon Data/SXXDYZ\SXXDYZqq.mat
- Data is contained in the MATLAB structure labeled ‘data’
- data.Coor.Signal contains the x, y, and z coordinate data of each of the 45 markers
- data.Coor.Label contains the headers of each of the 45 markers. The headers correspond to markers placed on different parts of the body as follows:
'RASI' -> Right anterior superior iliac crest
'LASI' -> Left anterior superior iliac crest
'RPSI' -> Right posterior superior iliac crest
'LPSI' -> Left posterior superior iliac crest
'RLKN' -> Right lateral knee
'RTH1' -> Right thigh tracking marker 1
'RTH2' -> Right thigh tracking marker 2
'RTH3' -> Right thigh tracking marker 3
'LLKN' -> Left lateral knee
'LTH1' -> Left thigh tracking marker 1
'LTH2' -> Left thigh tracking marker 2
'LTH3' -> Left thigh tracking marker 3
'LLAK' -> Left lateral ankle
'LSH1' -> Left shank tracking marker 1
'LSH2' -> Left shank tracking marker 2
'LSH3' -> Left shank tracking marker 3
'LTOE' -> Left toe (distal end of first metatarsal)
'LMT5' -> Left 5th metatarsal distal end
'LCAL' -> Left calcaneus
'RLAK' -> Right lateral ankle
'RSH1' -> Right shank tracking marker 1
'RSH2' -> Right shank tracking marker 2
'RSH3' -> Right shank tracking marker 3
'RTOE' -> Right toe (distal end of first metatarsal)
'RMT5' -> Right 5th metatarsal distal end
'RCAL' -> Right calcalcaneus
'RSHL' -> Right shoulder (acromion)
'LSHL' -> Left shoulder (acromion)
'C7' -> 7th cervical segment of the spine
'RLEL' -> Right lateral elbow (epicondyle)
'RUA1' -> Right upper arm tracking marker 1
'RUA2' -> Right upper arm tracking marker 2
'RUA3' -> Right upper arm tracking marker 3
'RULN' -> Right ulna (distal end)
'RRAD' -> Right radius (distal end)
'RFA' -> Right forearm tracking marker
'LLEL' -> Left lateral elbow (epicondyle)
'LUA1' -> Left upper arm tracking marker 1
'LUA2' -> Left upper arm tracking marker 2
'LUA3' -> Left upper arm tracking marker 3
'LULN' -> Left ulna (distal end)
'LRAD' -> Left radius (distal end)
'LFA' -> Left forearm tracking marker
'SAC' -> Sacrum
'CLAV' -> Clavicle
Speedgoat data
- Data from our real-time target machine (FPGA) that includes recordings of pull forces from bump’em modules, time, and various controller state variables can be
found in Subject X/Speedgoat Processed Data/SXXDYZ/SXXDYZqq.mat
- Data can be found in Subject X/Speedgoat Processed Data/SXXDYZ/SXXDYZqq.mat
- Data is contained in the MATLAB structure labeled ‘speedgoatDataTrimmed’
- speedgoatDataTrimmed.data includes data of various signals as labeled in speedgoatDataTrimmed.signalNames
- speedgoatDataTrimmed.signalNames are headers that correspond to the following signals:
'Controller/state' -> Controller state variable
'Controller/Pull Pressed' -> Controller state variable
'Controller/pull_state' -> Controller state variable
'Controller/stride_svg_gain/s4' -> Controller state variable
'Controller/F_mem/s1' -> Bump'em pull force from module 1 = rightward (in Newtons)
'Controller/F_mem1/s1' -> Bump'em pull force from module 2 = forward (in Newtons)
'Controller/F_mem2/s1' -> Bump'em pull force from module 3 = leftward (in Newtons)
'Controller/F_mem3/s1' -> Bump'em pull force from module 4 = backward (in Newtons)
'Controller/XHat gain /s1' -> Controller state variable (estimated medial-lateral position of pelvis)
'Controller/XHat gain 1/s2' -> Controller state variable (estimated anterior-posterior position of pelvis)
'Controller/XHat gain 2/s3' -> Controller state variable (estimated medial-lateral velocity of pelvis)
'Controller/XHat gain 3/s4' -> Controller state variable (estimated anterior-posterior velocity of pelvis)
'Controller/grfL/s1' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfL/s2' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfL/s3' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfL/s4' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfL/s5' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfL/s6' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s1' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s2' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s3' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s4' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s5' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/grfR/s6' -> Ground reaction forces (We recommend using data from Vicon as detailed in the 'Ground reaction force data' section instead)
'Controller/tStrideL' -> Controller state variable
'Controller/tStrideR' -> Controller state variable
'Controller/pullCountGain' -> Controller state variable
'Controller/Vicon_status_rec' -> Digital signal indicating if Vicon is recording, used for time-synchronization.
'Controller/xsens_status' -> Digital signal indicating if Xsens is recording, used for time synchronization.
'Controller/pneuTimingArrayIdxGain'-> Controller state variable
'Controller/F_res_des Gain/s1' -> Controller state variable (desired medial-lateral force from bump'em)
'Controller/F_res_des Gain/s2' -> Controller state variable (desired anterior-posterior force from bump'em)
'Time' -> Time
OpenSim data detailed description
Joint angle data from inverse kinematics in the session/IK/ directory for each subject
OpenSim variable -> description
time -> time in seconds since the beginning of the recording
pelvis_tilt -> pelvis tilt
pelvis_list -> pelvis list
pelvis_rotation -> pelvis rotation
pelvis_tx -> pelvis x position in the x direction of the OpenSim global coordinate system
pelvis_ty -> pelvis y position in the x direction of the OpenSim global coordinate system
pelvis_tz -> pelvis z position in the x direction of the OpenSim global coordinate system
hip_flexion_r -> right hip flexion
hip_adduction_r -> right hip adduction
hip_rotation_r -> right hip rotation
knee_angle_r -> right knee flexion angle
ankle_angle_r -> right ankle plantar flexion angle
subtalar_angle_r -> right subtler angle
mtp_angle_r -> right metatarsal angle
hip_flexion_l -> left hip flexion angle
hip_adduction_l -> left hip adduction angle
hip_rotation_l -> left hip rotation angle
knee_angle_l -> left knee flexion angle
ankle_angle_l -> left ankle plantar flexion angle
subtalar_angle_l -> left subtalar angle
mtp_angle_l -> left metatarsal angle
lumbar_extension -> lumbar extension angle
lumbar_bending -> lumbar bend angle
lumbar_rotation -> lumbar rotation angle
arm_flex_r -> right shoulder flexion
arm_add_r -> right should adduction
arm_rot_r -> right shoulder rotation
elbow_flex_r -> right elbow flexion angle
pro_sup_r -> right pronation angle
wrist_flex_r -> right wrist flexion angle
wrist_dev_r -> right wrist deviation angle
arm_flex_l -> left shoulder flexion
arm_add_l -> left should adduction
arm_rot_l -> left shoulder rotation
elbow_flex_l -> left elbow flexion
pro_sup_l -> left pronation angle
wrist_flex_l -> left wrist flexion
wrist_dev_l -> left wrist deviation
Additional extracted signals generated using OpenSim after inverse kinematics were solved
time -> time in seconds since the beginning of the recording
com_pos_x -> center of mass position in the x direction of the OpenSim global coordinate system
Com_pos_y -> center of mass position in the y direction of the OpenSim global coordinate system
com_pos_z -> center of mass position in the z direction of the OpenSim global coordinate system
com_vel_x -> center of mass velocity in the x direction of the OpenSim global coordinate system
com_vel_y -> center of mass velocity in the y direction of the OpenSim global coordinate system
com_vel_z -> center of mass velocity in the z direction of the OpenSim global coordinate system
kinetic_energy -> kinetic energy of the whole body viewed from the laboratory reference frame
angular_momentum_x -> x component of the angular momentum of the whole body system viewed from, and expressed in, the laboratory reference frame
angular_momentum_y -> y component of the angular momentum of the whole body system viewed from, and expressed in, the laboratory reference frame
angular_momentum_z -> z component of the angular momentum of the whole body system viewed from, and expressed in, the laboratory reference frame
central_inertia_00 -> principal component of inertia of the whole body in the x direction of the laboratory reference frame (often abbreviated as Ixx in dynamics texts)
central_inertia_11 -> principal component of inertia of the whole body in the y direction of the laboratory reference frame (often abbreviated as Iyy in dynamics texts)
central_inertia_22 -> principal component of inertia of the whole body in the z direction of the laboratory reference frame (often abbreviated as Izz in dynamics texts)
Access information
Other publicly accessible locations of the data:
Human subjects data
We confirm that we obtained explicit written consent from all participants to publish their de-identified data in the public domain as part of the study’s approved IRB protocol. To ensure privacy, all identifying information was removed, and each participant was assigned a random numerical code. The dataset includes only biomechanical and sensor data with no names, dates of birth, or other personally identifiable information.