Data capture
Instrumented mouthguards record translational and rotational head kinematics during head acceleration events. Sensors sample at 1 kHz; each impact window spans ~100 ms.
Demo · Brain strain results
We developed a machine learning model using the extreme gradient boosting (XGBoost) algorithm to rapidly predict brain deformation and provide brain strain estimates for critical brain regions of interest. Choose a preloaded archetype impact below — or stream impacts live from an Arduino-instrumented mouthguard. The model returns a max-principal-strain (MPS) value per white-matter region.
Each entry is the medoid of a cluster of real instrumented-mouthguard recordings, grouped by sport-dataset. Cluster sizes range from a few to several hundred impacts.
Live mode runs in a Chromium-based browser (Chrome, Edge, or Opera).Arduino streams over USB (Web Serial) fromHeadImpactAccelerometer_v3.ino at 921 600 baud;Byte connects wirelessly over Bluetooth (Web Bluetooth, Nordic UART Service). On first connect we load the ML models (~2 MB) into your browser — predictions then run locally, no data leaves your machine.
Polished voxel clouds · tonemapped · bloom + SMAA
Drag along the time axis to zoom · hover for per-axis values · double-click to reset.
90th-percentile max-principal-strain (MPS90) per region · impact 4
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 5
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 6
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 3
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Within the model's validated envelope. Trained on elite-male rugby (Protecht mouthguard); test-set R² 0.76–0.85. Values shown ± test-set RMSE.
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 5
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 6
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 3
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 6
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 3
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 3
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 4
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 5
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 4
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 4
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA_competitive. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 4
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 3
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is MMA. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is Boxing. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is Boxing. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 2
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is Boxing. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 0
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is Boxing. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · impact 1
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is Boxing. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
90th-percentile max-principal-strain (MPS90) per region · live capture · waiting for impact
Extrapolation — outside the validated envelope. The model was validated on elite-male rugby only; this is live capture. Treat predictions as indicative, not validated. (R² 0.76–0.85 on rugby; ± RMSE shown.)
MPS90 from the XGBoost regressors (TWP/model/model_XGB_finetuned_final/). Accuracy & envelope: Chan et al. 2025, Table 2 (validation_chan2025.json). No universally accepted strain injury threshold exists — colours are indicative.
Instrumented mouthguards record translational and rotational head kinematics during head acceleration events. Sensors sample at 1 kHz; each impact window spans ~100 ms.
Per-axis kinematic time series are reduced to four scalar features — range andsqrt(|max|) of resultant rotational velocity and rotational acceleration — and fed to the model.
A fine-tuned XGBoost regressor returns a max-principal-strain estimate per white-matter region. On iOS the models run on-device via Core ML; on the web the archetype impacts are pre-computed with the same Python pipeline, while live-mouthguard mode runs the models in your browser via ONNX Runtime Web.
Each region is rendered as a dense voxel cloud in its anatomical location (JHU white-matter atlas, MNI152 1 mm space) inside a translucent brain shell, and can be isolated individually. Per-region strain is encoded in the same colourmap the iOS app uses — green to yellow through red, with elevated regions in violet.