kinemotion 0.23.0__tar.gz → 0.25.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kinemotion might be problematic. Click here for more details.
- kinemotion-0.25.0/.gitattributes +41 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.gitignore +1 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.pre-commit-config.yaml +1 -1
- {kinemotion-0.23.0 → kinemotion-0.25.0}/CHANGELOG.md +48 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/PKG-INFO +98 -14
- {kinemotion-0.23.0 → kinemotion-0.25.0}/README.md +97 -13
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/README.md +9 -1
- kinemotion-0.25.0/docs/development/validation-roadmap.md +1741 -0
- kinemotion-0.25.0/docs/reference/json-output-format.md +554 -0
- kinemotion-0.25.0/docs/reference/json-structure-comparison.md +299 -0
- kinemotion-0.25.0/docs/research/paper-downloader/HOW-TO-FIND-DOIS.md +210 -0
- kinemotion-0.25.0/docs/research/paper-downloader/README.md +173 -0
- kinemotion-0.25.0/docs/research/paper-downloader/dois.txt +37 -0
- kinemotion-0.25.0/docs/research/paper-downloader/download.py +208 -0
- kinemotion-0.25.0/docs/research/paper-downloader/pyproject.toml +15 -0
- kinemotion-0.25.0/docs/research/paper-downloader/uv.lock +504 -0
- kinemotion-0.25.0/docs/research/thirdparty/MANUAL-DOWNLOAD-GUIDE.md +124 -0
- kinemotion-0.25.0/docs/research/thirdparty/README.md +141 -0
- kinemotion-0.25.0/docs/research/thirdparty/convert_pdfs.py +80 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/athlete-monitoring/2001_Foster_Session-RPE-Training-Monitoring.md +974 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/athlete-monitoring/2015_Buchheit_GPS-Accelerometers-Stride-Stiffness.md +348 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/athlete-monitoring/2018_Flatt_HRV-Recovery-Swimmers.md +572 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/athlete-monitoring/2018_Saw_Training-Camps-Monitoring.md +518 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/athlete-monitoring/2018_Ward_Putting-i-in-Team.md +566 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2011_Petersen_Nordic-Hamstring-Prevention.md +774 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2011_Wilk_Shoulder-GIRD-Baseball-Pitchers.md +625 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2012_Hewit_Multidirectional-Leg-Asymmetry.md +625 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2015_Ford_Hip-Neuromuscular-Exercise-Valgus.md +1731 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2015_Mosler_Hip-Groin-Pain-Factors.md +1076 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2015_Sconce_Nordic-Hamstring-Validity.md +629 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2016_Mendez-Villanueva_Hamstring-MRI-Regional.md +729 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2016_Read_Youth-Soccer-Injury-Risk.md +790 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2017_Mason-Mackay_Ankle-Dorsiflexion-Landing.md +877 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2017_Mendiguchia_Hamstring-Treatment-Algorithm.md +866 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2018_Balsalobre-Fernandez_Ankle-Dorsiflexion-App.md +496 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2018_Bramah_Pathological-Gait-Running-Injuries.md +789 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/injury-prevention/2020_Fidai_Fatigue-Knee-Valgus-Youth.md +862 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2011_Harper_10-to-5-Jump-Test.md +21 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2012_Samozino_Optimal-Force-Velocity-Profile.md +1814 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2014_Samozino_FV-Imbalance.md +710 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2016_Jimenez-Reyes_Force-Velocity-Training.md +1463 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2016_Morin-Samozino_Power-Force-Velocity-Profiles.md +500 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2018_Garcia-Ramos_Two-Point-Method-Optimization.md +869 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/jump-performance/2022_Wells_Golf-Clubhead-CMJ.md +1125 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2005_Morin_Running-Stiffness-Measurement.md +892 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2015_Balsalobre-Fernandez_Strength-Training-Running-Economy.md +1233 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2016_Balsalobre-Fernandez_iPhone-Running-Mechanics.md +675 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2016_Moore_Economical-Running-Technique.md +1545 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2020_Filter_Curve-Sprint-Test-Soccer.md +646 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2020_Harper_Horizontal-Deceleration-Radar.md +802 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2021_vanOeveren_Running-Biomechanics-Synthesis.md +2244 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/running-biomechanics/2024_Bramah_Sprint-Mechanics-Assessment-Score.md +836 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/smartphone-technology/2015_Balsalobre-Fernandez_iPhone-Vertical-Jump.md +536 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/smartphone-technology/2022_Bishop_MyJumpLab-Validation.md +732 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2011_Jidovtseff_Load-Velocity-1RM-Prediction.md +461 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2016_Conceicao_Movement-Velocity-Lower-Limb.md +830 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2016_Pareja-Blanco_Velocity-Loss-Training.md +1137 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2017_Balsalobre-Fernandez_Barbell-Velocity-1RM.md +547 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2020_Balsalobre-Fernandez_Barbell-Trajectory-Snatch.md +566 -0
- kinemotion-0.25.0/docs/research/thirdparty/markdown/velocity-based-training/2023_Balsalobre-Fernandez_AI-Barbell-Velocity.md +759 -0
- kinemotion-0.25.0/docs/research/thirdparty/online-references-for-papers.md +519 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/athlete-monitoring/2001_Foster_Session-RPE-Training-Monitoring.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/athlete-monitoring/2015_Buchheit_GPS-Accelerometers-Stride-Stiffness.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/athlete-monitoring/2018_Flatt_HRV-Recovery-Swimmers.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/athlete-monitoring/2018_Saw_Training-Camps-Monitoring.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/athlete-monitoring/2018_Ward_Putting-i-in-Team.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2011_Petersen_Nordic-Hamstring-Prevention.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2011_Wilk_Shoulder-GIRD-Baseball-Pitchers.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2012_Hewit_Multidirectional-Leg-Asymmetry.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2015_Ford_Hip-Neuromuscular-Exercise-Valgus.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2015_Mosler_Hip-Groin-Pain-Factors.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2015_Sconce_Nordic-Hamstring-Validity.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2016_Mendez-Villanueva_Hamstring-MRI-Regional.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2016_Read_Youth-Soccer-Injury-Risk.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2017_Mason-Mackay_Ankle-Dorsiflexion-Landing.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2017_Mendiguchia_Hamstring-Treatment-Algorithm.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2018_Balsalobre-Fernandez_Ankle-Dorsiflexion-App.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2018_Bramah_Pathological-Gait-Running-Injuries.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/injury-prevention/2020_Fidai_Fatigue-Knee-Valgus-Youth.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2011_Harper_10-to-5-Jump-Test.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2012_Samozino_Optimal-Force-Velocity-Profile.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2014_Samozino_FV-Imbalance.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2016_Jimenez-Reyes_Force-Velocity-Training.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2016_Morin-Samozino_Power-Force-Velocity-Profiles.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2018_Garcia-Ramos_Two-Point-Method-Optimization.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/jump-performance/2022_Wells_Golf-Clubhead-CMJ.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2005_Morin_Running-Stiffness-Measurement.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2015_Balsalobre-Fernandez_Strength-Training-Running-Economy.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2016_Balsalobre-Fernandez_iPhone-Running-Mechanics.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2016_Moore_Economical-Running-Technique.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2020_Filter_Curve-Sprint-Test-Soccer.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2020_Harper_Horizontal-Deceleration-Radar.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2021_vanOeveren_Running-Biomechanics-Synthesis.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/running-biomechanics/2024_Bramah_Sprint-Mechanics-Assessment-Score.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/smartphone-technology/2015_Balsalobre-Fernandez_iPhone-Vertical-Jump.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/smartphone-technology/2022_Bishop_MyJumpLab-Validation.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2011_Jidovtseff_Load-Velocity-1RM-Prediction.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2016_Conceicao_Movement-Velocity-Lower-Limb.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2016_Pareja-Blanco_Velocity-Loss-Training.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2017_Balsalobre-Fernandez_Barbell-Velocity-1RM.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2020_Balsalobre-Fernandez_Barbell-Trajectory-Snatch.pdf +3 -0
- kinemotion-0.25.0/docs/research/thirdparty/pdfs/velocity-based-training/2023_Balsalobre-Fernandez_AI-Barbell-Velocity.pdf +3 -0
- kinemotion-0.25.0/docs/validation/determinism-test.md +322 -0
- kinemotion-0.25.0/docs/validation-status.md +457 -0
- kinemotion-0.25.0/presentation/.gitignore +34 -0
- kinemotion-0.25.0/presentation/README.md +372 -0
- kinemotion-0.25.0/presentation/demos/.gitignore +23 -0
- kinemotion-0.25.0/presentation/demos/README.md +222 -0
- kinemotion-0.25.0/presentation/demos/api_demo.ipynb +216 -0
- kinemotion-0.25.0/presentation/demos/batch_processing_demo.py +156 -0
- kinemotion-0.25.0/presentation/demos/sample_data/.gitkeep +10 -0
- kinemotion-0.25.0/presentation/presentation_guide.md +509 -0
- kinemotion-0.25.0/presentation/revealjs/.gitignore +16 -0
- kinemotion-0.25.0/presentation/revealjs/Makefile +75 -0
- kinemotion-0.25.0/presentation/revealjs/README.md +198 -0
- kinemotion-0.25.0/presentation/revealjs/slides.md +505 -0
- kinemotion-0.25.0/presentation/speaker_script.md +429 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/pyproject.toml +1 -1
- kinemotion-0.25.0/scripts/README.md +173 -0
- kinemotion-0.25.0/scripts/analyze_determinism_variance.py +181 -0
- kinemotion-0.25.0/scripts/test_determinism.sh +129 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/api.py +196 -1
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/cli.py +23 -211
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/kinematics.py +33 -9
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/__init__.py +11 -0
- kinemotion-0.25.0/src/kinemotion/core/metadata.py +222 -0
- kinemotion-0.25.0/src/kinemotion/core/quality.py +396 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/dropjump/cli.py +25 -180
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/dropjump/kinematics.py +38 -7
- kinemotion-0.25.0/tests/core/test_quality.py +520 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_api.py +14 -4
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_cli_dropjump.py +7 -3
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_cmj_kinematics.py +9 -7
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_kinematics.py +17 -13
- {kinemotion-0.23.0 → kinemotion-0.25.0}/uv.lock +1 -1
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.dockerignore +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/pull_request_template.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/workflows/docs.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/workflows/release.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.github/workflows/test.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.readthedocs.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/.tool-versions +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/CLAUDE.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/CODE_OF_CONDUCT.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/CONTRIBUTING.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/Dockerfile +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/GEMINI.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/LICENSE +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/SECURITY.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/api/cmj.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/api/core.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/api/dropjump.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/api/overview.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/development/errors-findings.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/development/testing.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/development/type-hints.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/development/validation-plan.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/development/wallball-norep-detection.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/guides/bulk-processing.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/guides/camera-setup.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/guides/cmj-guide.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/index.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/reference/parameters.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/reference/pose-systems.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/research/sports-biomechanics-pose-estimation.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/technical/framerate.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/technical/implementation-details.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/technical/imu-metadata.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/technical/real-time-analysis.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/technical/triple-extension.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/docs/translations/es/camera-setup.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/examples/bulk/README.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/examples/bulk/bulk_processing.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/examples/bulk/simple_example.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/examples/programmatic_usage.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/mkdocs.yml +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/requirements-docs.txt +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/samples/cmjs/README.md +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/sonar-project.properties +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/__init__.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cli.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/__init__.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/analysis.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/debug_overlay.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/cmj/joint_angles.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/auto_tuning.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/cli_utils.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/debug_overlay_utils.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/filtering.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/pose.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/smoothing.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/core/video_io.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/dropjump/__init__.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/dropjump/analysis.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/dropjump/debug_overlay.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/src/kinemotion/py.typed +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/__init__.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_adaptive_threshold.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_aspect_ratio.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_cli_cmj.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_cli_imports.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_cmj_analysis.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_com_estimation.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_contact_detection.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_filtering.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_joint_angles.py +0 -0
- {kinemotion-0.23.0 → kinemotion-0.25.0}/tests/test_polyorder.py +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2024_Bramah_Sprint-Mechanics-Assessment-Score.pdf filter=lfs diff=lfs merge=lfs -text
|
|
2
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2016_Conceicao_Movement-Velocity-Lower-Limb.pdf filter=lfs diff=lfs merge=lfs -text
|
|
3
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2023_Balsalobre-Fernandez_AI-Barbell-Velocity.pdf filter=lfs diff=lfs merge=lfs -text
|
|
4
|
+
docs/research/thirdparty/pdfs/athlete-monitoring/2015_Buchheit_GPS-Accelerometers-Stride-Stiffness.pdf filter=lfs diff=lfs merge=lfs -text
|
|
5
|
+
docs/research/thirdparty/pdfs/jump-performance/2016_Jimenez-Reyes_Force-Velocity-Training.pdf filter=lfs diff=lfs merge=lfs -text
|
|
6
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2020_Filter_Curve-Sprint-Test-Soccer.pdf filter=lfs diff=lfs merge=lfs -text
|
|
7
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2016_Pareja-Blanco_Velocity-Loss-Training.pdf filter=lfs diff=lfs merge=lfs -text
|
|
8
|
+
docs/research/thirdparty/pdfs/athlete-monitoring/2018_Saw_Training-Camps-Monitoring.pdf filter=lfs diff=lfs merge=lfs -text
|
|
9
|
+
docs/research/thirdparty/pdfs/injury-prevention/2017_Mason-Mackay_Ankle-Dorsiflexion-Landing.pdf filter=lfs diff=lfs merge=lfs -text
|
|
10
|
+
docs/research/thirdparty/pdfs/injury-prevention/2018_Balsalobre-Fernandez_Ankle-Dorsiflexion-App.pdf filter=lfs diff=lfs merge=lfs -text
|
|
11
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2005_Morin_Running-Stiffness-Measurement.pdf filter=lfs diff=lfs merge=lfs -text
|
|
12
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2021_vanOeveren_Running-Biomechanics-Synthesis.pdf filter=lfs diff=lfs merge=lfs -text
|
|
13
|
+
docs/research/thirdparty/pdfs/smartphone-technology/2022_Bishop_MyJumpLab-Validation.pdf filter=lfs diff=lfs merge=lfs -text
|
|
14
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2011_Jidovtseff_Load-Velocity-1RM-Prediction.pdf filter=lfs diff=lfs merge=lfs -text
|
|
15
|
+
docs/research/thirdparty/pdfs/jump-performance/2011_Harper_10-to-5-Jump-Test.pdf filter=lfs diff=lfs merge=lfs -text
|
|
16
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2020_Harper_Horizontal-Deceleration-Radar.pdf filter=lfs diff=lfs merge=lfs -text
|
|
17
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2017_Balsalobre-Fernandez_Barbell-Velocity-1RM.pdf filter=lfs diff=lfs merge=lfs -text
|
|
18
|
+
docs/research/thirdparty/pdfs/athlete-monitoring/2018_Flatt_HRV-Recovery-Swimmers.pdf filter=lfs diff=lfs merge=lfs -text
|
|
19
|
+
docs/research/thirdparty/pdfs/injury-prevention/2011_Petersen_Nordic-Hamstring-Prevention.pdf filter=lfs diff=lfs merge=lfs -text
|
|
20
|
+
docs/research/thirdparty/pdfs/injury-prevention/2012_Hewit_Multidirectional-Leg-Asymmetry.pdf filter=lfs diff=lfs merge=lfs -text
|
|
21
|
+
docs/research/thirdparty/pdfs/injury-prevention/2016_Mendez-Villanueva_Hamstring-MRI-Regional.pdf filter=lfs diff=lfs merge=lfs -text
|
|
22
|
+
docs/research/thirdparty/pdfs/injury-prevention/2016_Read_Youth-Soccer-Injury-Risk.pdf filter=lfs diff=lfs merge=lfs -text
|
|
23
|
+
docs/research/thirdparty/pdfs/injury-prevention/2017_Mendiguchia_Hamstring-Treatment-Algorithm.pdf filter=lfs diff=lfs merge=lfs -text
|
|
24
|
+
docs/research/thirdparty/pdfs/injury-prevention/2020_Fidai_Fatigue-Knee-Valgus-Youth.pdf filter=lfs diff=lfs merge=lfs -text
|
|
25
|
+
docs/research/thirdparty/pdfs/jump-performance/2012_Samozino_Optimal-Force-Velocity-Profile.pdf filter=lfs diff=lfs merge=lfs -text
|
|
26
|
+
docs/research/thirdparty/pdfs/athlete-monitoring/2001_Foster_Session-RPE-Training-Monitoring.pdf filter=lfs diff=lfs merge=lfs -text
|
|
27
|
+
docs/research/thirdparty/pdfs/jump-performance/2018_Garcia-Ramos_Two-Point-Method-Optimization.pdf filter=lfs diff=lfs merge=lfs -text
|
|
28
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2015_Balsalobre-Fernandez_Strength-Training-Running-Economy.pdf filter=lfs diff=lfs merge=lfs -text
|
|
29
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2016_Moore_Economical-Running-Technique.pdf filter=lfs diff=lfs merge=lfs -text
|
|
30
|
+
docs/research/thirdparty/pdfs/smartphone-technology/2015_Balsalobre-Fernandez_iPhone-Vertical-Jump.pdf filter=lfs diff=lfs merge=lfs -text
|
|
31
|
+
docs/research/thirdparty/pdfs/velocity-based-training/2020_Balsalobre-Fernandez_Barbell-Trajectory-Snatch.pdf filter=lfs diff=lfs merge=lfs -text
|
|
32
|
+
docs/research/thirdparty/pdfs/jump-performance/2014_Samozino_FV-Imbalance.pdf filter=lfs diff=lfs merge=lfs -text
|
|
33
|
+
docs/research/thirdparty/pdfs/jump-performance/2016_Morin-Samozino_Power-Force-Velocity-Profiles.pdf filter=lfs diff=lfs merge=lfs -text
|
|
34
|
+
docs/research/thirdparty/pdfs/injury-prevention/2015_Ford_Hip-Neuromuscular-Exercise-Valgus.pdf filter=lfs diff=lfs merge=lfs -text
|
|
35
|
+
docs/research/thirdparty/pdfs/injury-prevention/2015_Mosler_Hip-Groin-Pain-Factors.pdf filter=lfs diff=lfs merge=lfs -text
|
|
36
|
+
docs/research/thirdparty/pdfs/injury-prevention/2015_Sconce_Nordic-Hamstring-Validity.pdf filter=lfs diff=lfs merge=lfs -text
|
|
37
|
+
docs/research/thirdparty/pdfs/jump-performance/2022_Wells_Golf-Clubhead-CMJ.pdf filter=lfs diff=lfs merge=lfs -text
|
|
38
|
+
docs/research/thirdparty/pdfs/athlete-monitoring/2018_Ward_Putting-i-in-Team.pdf filter=lfs diff=lfs merge=lfs -text
|
|
39
|
+
docs/research/thirdparty/pdfs/injury-prevention/2011_Wilk_Shoulder-GIRD-Baseball-Pitchers.pdf filter=lfs diff=lfs merge=lfs -text
|
|
40
|
+
docs/research/thirdparty/pdfs/injury-prevention/2018_Bramah_Pathological-Gait-Running-Injuries.pdf filter=lfs diff=lfs merge=lfs -text
|
|
41
|
+
docs/research/thirdparty/pdfs/running-biomechanics/2016_Balsalobre-Fernandez_iPhone-Running-Mechanics.pdf filter=lfs diff=lfs merge=lfs -text
|
|
@@ -39,7 +39,7 @@ repos:
|
|
|
39
39
|
additional_dependencies:
|
|
40
40
|
- mdformat-gfm>=0.3.5 # GitHub Flavored Markdown
|
|
41
41
|
- mdformat-tables # Table formatting
|
|
42
|
-
exclude: (^CLAUDE\.md$|^CHANGELOG\.md$)
|
|
42
|
+
exclude: (^CLAUDE\.md$|^CHANGELOG\.md$|^presentation/revealjs/slides\.md$)
|
|
43
43
|
|
|
44
44
|
- repo: https://github.com/compilerla/conventional-pre-commit
|
|
45
45
|
rev: v4.3.0
|
|
@@ -7,6 +7,54 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
<!-- version list -->
|
|
9
9
|
|
|
10
|
+
## v0.25.0 (2025-11-14)
|
|
11
|
+
|
|
12
|
+
### Documentation
|
|
13
|
+
|
|
14
|
+
- Add comprehensive validation status and roadmap
|
|
15
|
+
([`207b3ab`](https://github.com/feniix/kinemotion/commit/207b3abf4790e423ab69340eee98781aa9bcadc6))
|
|
16
|
+
|
|
17
|
+
- Add presentation
|
|
18
|
+
([`0f2715a`](https://github.com/feniix/kinemotion/commit/0f2715adf93a01fd12c72cd310339daf5d072b3e))
|
|
19
|
+
|
|
20
|
+
- Add research papers
|
|
21
|
+
([`b623c2a`](https://github.com/feniix/kinemotion/commit/b623c2ab265f34bedb38b6174958368bbd5e53bf))
|
|
22
|
+
|
|
23
|
+
- Google colab
|
|
24
|
+
([`98f474c`](https://github.com/feniix/kinemotion/commit/98f474cde68d5bc5ec3b7dc7f438eb912ebc617d))
|
|
25
|
+
|
|
26
|
+
- Google colab
|
|
27
|
+
([`f6bc11b`](https://github.com/feniix/kinemotion/commit/f6bc11bb08a566e846a0eb3549cf8e752839c54d))
|
|
28
|
+
|
|
29
|
+
### Features
|
|
30
|
+
|
|
31
|
+
- Add automatic quality assessment and confidence scores to all outputs
|
|
32
|
+
([`8eee0e0`](https://github.com/feniix/kinemotion/commit/8eee0e051c3ac4fee8610f05f5735676a4d50331))
|
|
33
|
+
|
|
34
|
+
- Refactor CLI to call API functions, adding automatic quality assessment
|
|
35
|
+
([`b6511cb`](https://github.com/feniix/kinemotion/commit/b6511cbbb7bb93458b827d967636d72391651d0e))
|
|
36
|
+
|
|
37
|
+
- Restructure JSON output to data/metadata format
|
|
38
|
+
([`bb00d3e`](https://github.com/feniix/kinemotion/commit/bb00d3e871c68369dcbb308429084b11eecad0e0))
|
|
39
|
+
|
|
40
|
+
### Testing
|
|
41
|
+
|
|
42
|
+
- Add determinism validation scripts and confirm algorithm reliability
|
|
43
|
+
([`bd115b0`](https://github.com/feniix/kinemotion/commit/bd115b056b91a55027c5b85362cc3942cf6ea7c5))
|
|
44
|
+
|
|
45
|
+
### Breaking Changes
|
|
46
|
+
|
|
47
|
+
- JSON output format restructured from flat to nested {data, metadata}
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## v0.24.0 (2025-11-11)
|
|
51
|
+
|
|
52
|
+
### Features
|
|
53
|
+
|
|
54
|
+
- Document platform-specific system dependencies for Windows, macOS, and Linux
|
|
55
|
+
([`928a6ad`](https://github.com/feniix/kinemotion/commit/928a6adbef18df77f5941ae0b2e82ba9d62a38b7))
|
|
56
|
+
|
|
57
|
+
|
|
10
58
|
## v0.23.0 (2025-11-10)
|
|
11
59
|
|
|
12
60
|
### Features
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: kinemotion
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.25.0
|
|
4
4
|
Summary: Video-based kinematic analysis for athletic performance
|
|
5
5
|
Project-URL: Homepage, https://github.com/feniix/kinemotion
|
|
6
6
|
Project-URL: Repository, https://github.com/feniix/kinemotion
|
|
@@ -79,17 +79,42 @@ Description-Content-Type: text/markdown
|
|
|
79
79
|
- **Metrics**: Jump height, flight time, countermovement depth, eccentric/concentric durations
|
|
80
80
|
- **Validated accuracy**: 50.6cm jump (±1 frame precision)
|
|
81
81
|
|
|
82
|
-
## Validation Status
|
|
82
|
+
## ⚠️ Validation Status
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
**Current Status:** Pre-validation (not validated against force plates or motion capture systems)
|
|
85
85
|
|
|
86
|
-
|
|
86
|
+
### What This Tool IS Suitable For
|
|
87
87
|
|
|
88
|
-
-
|
|
89
|
-
-
|
|
90
|
-
|
|
88
|
+
✅ **Training monitoring** - Track relative changes within the same athlete over time
|
|
89
|
+
✅ **Educational purposes** - Learn about jump biomechanics and video analysis
|
|
90
|
+
✅ **Exploratory analysis** - Initial investigation before formal testing
|
|
91
|
+
✅ **Proof-of-concept research** - Demonstrate feasibility of video-based methods
|
|
91
92
|
|
|
92
|
-
|
|
93
|
+
### What This Tool IS NOT Suitable For
|
|
94
|
+
|
|
95
|
+
❌ **Research publications** - As a validated measurement instrument
|
|
96
|
+
❌ **Clinical decision-making** - Injury assessment, return-to-play decisions
|
|
97
|
+
❌ **Talent identification** - Absolute performance comparisons between athletes
|
|
98
|
+
❌ **Legal/insurance assessments** - Any context requiring validated measurements
|
|
99
|
+
❌ **High-stakes testing** - Draft combines, professional athlete evaluation
|
|
100
|
+
|
|
101
|
+
### Known Limitations
|
|
102
|
+
|
|
103
|
+
- **No force plate validation** - Accuracy claims are theoretical, not empirical
|
|
104
|
+
- **MediaPipe constraints** - Accuracy affected by lighting, clothing, occlusion, camera quality
|
|
105
|
+
- **Lower sampling rate** - Typical video (30-60fps) vs validated apps (120-240Hz)
|
|
106
|
+
- **Indirect measurement** - Landmarks → CoM estimation introduces potential error
|
|
107
|
+
- **No correction factors** - Unlike validated tools (e.g., MyJump), no systematic bias corrections applied
|
|
108
|
+
|
|
109
|
+
### Recommended Use
|
|
110
|
+
|
|
111
|
+
If you need validated measurements for research or clinical use, consider:
|
|
112
|
+
|
|
113
|
+
- **Commercial validated apps**: MyJump 2, MyJumpLab (smartphone-based, force plate validated)
|
|
114
|
+
- **Laboratory equipment**: Force plates, optical motion capture systems
|
|
115
|
+
- **Validation testing**: Compare kinemotion against validated equipment in your specific use case
|
|
116
|
+
|
|
117
|
+
For detailed validation status and roadmap, see [`docs/validation-status.md`](docs/validation-status.md).
|
|
93
118
|
|
|
94
119
|
## Setup
|
|
95
120
|
|
|
@@ -103,15 +128,24 @@ For clinical, research, or performance assessment requiring validated accuracy,
|
|
|
103
128
|
|
|
104
129
|
#### Windows
|
|
105
130
|
|
|
106
|
-
|
|
131
|
+
**Required system dependencies:**
|
|
132
|
+
|
|
133
|
+
- [Microsoft Visual C++ 2022 Redistributable](https://visualstudio.microsoft.com/visual-cpp-build-tools/) - Runtime libraries for OpenCV/MediaPipe
|
|
134
|
+
- Python 3.10-3.12 (64-bit) - MediaPipe requires 64-bit Python
|
|
107
135
|
|
|
108
136
|
**Recommended for mobile video support:**
|
|
109
137
|
|
|
110
|
-
- [FFmpeg](https://ffmpeg.org/download.html) - Download and add to PATH
|
|
138
|
+
- [FFmpeg](https://ffmpeg.org/download.html) - Download and add to PATH for full video codec support
|
|
111
139
|
|
|
112
140
|
#### macOS
|
|
113
141
|
|
|
114
|
-
|
|
142
|
+
**Required system dependencies:**
|
|
143
|
+
|
|
144
|
+
- Xcode Command Line Tools - Provides compilers and system frameworks
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
xcode-select --install
|
|
148
|
+
```
|
|
115
149
|
|
|
116
150
|
**Recommended for mobile video support:**
|
|
117
151
|
|
|
@@ -126,9 +160,10 @@ brew install ffmpeg
|
|
|
126
160
|
```bash
|
|
127
161
|
sudo apt-get update
|
|
128
162
|
sudo apt-get install -y \
|
|
129
|
-
libgl1
|
|
130
|
-
libglib2.0-0 \
|
|
131
|
-
|
|
163
|
+
libgl1 \ # OpenGL library for OpenCV
|
|
164
|
+
libglib2.0-0 \ # GLib library for MediaPipe
|
|
165
|
+
libgomp1 \ # OpenMP library for multi-threading
|
|
166
|
+
ffmpeg # Video codec support and metadata extraction
|
|
132
167
|
```
|
|
133
168
|
|
|
134
169
|
**Note:** `ffmpeg` provides the `ffprobe` tool for video metadata extraction (rotation, aspect ratio). Kinemotion works without it, but mobile/rotated videos may not process correctly. A warning will be shown if `ffprobe` is not available.
|
|
@@ -232,6 +267,55 @@ kinemotion cmj-analyze videos/*.mp4 --batch --workers 4 \
|
|
|
232
267
|
--csv-summary summary.csv
|
|
233
268
|
```
|
|
234
269
|
|
|
270
|
+
### Quality Indicators & Confidence Scores
|
|
271
|
+
|
|
272
|
+
All analysis outputs include automatic quality assessment to help you know when to trust results:
|
|
273
|
+
|
|
274
|
+
```json
|
|
275
|
+
{
|
|
276
|
+
"jump_height_m": 0.352,
|
|
277
|
+
"flight_time_s": 0.534,
|
|
278
|
+
"confidence": "high",
|
|
279
|
+
"quality_score": 87.3,
|
|
280
|
+
"quality_indicators": {
|
|
281
|
+
"avg_visibility": 0.89,
|
|
282
|
+
"min_visibility": 0.82,
|
|
283
|
+
"tracking_stable": true,
|
|
284
|
+
"phase_detection_clear": true,
|
|
285
|
+
"outliers_detected": 2,
|
|
286
|
+
"outlier_percentage": 1.5,
|
|
287
|
+
"position_variance": 0.0008,
|
|
288
|
+
"fps": 60.0
|
|
289
|
+
},
|
|
290
|
+
"warnings": []
|
|
291
|
+
}
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
**Confidence Levels:**
|
|
295
|
+
|
|
296
|
+
- **High** (score ≥75): Trust these results, good tracking quality
|
|
297
|
+
- **Medium** (score 50-74): Use with caution, check quality indicators
|
|
298
|
+
- **Low** (score \<50): Results may be unreliable, review warnings
|
|
299
|
+
|
|
300
|
+
**Common Warnings:**
|
|
301
|
+
|
|
302
|
+
- Poor lighting or occlusion detected
|
|
303
|
+
- Unstable landmark tracking (jitter)
|
|
304
|
+
- High outlier rate (tracking glitches)
|
|
305
|
+
- Low frame rate (\<30fps)
|
|
306
|
+
- Unclear phase transitions
|
|
307
|
+
|
|
308
|
+
**Filtering by Quality:**
|
|
309
|
+
|
|
310
|
+
```python
|
|
311
|
+
# Only use high-confidence results
|
|
312
|
+
metrics = process_cmj_video("video.mp4")
|
|
313
|
+
if metrics.quality_assessment.confidence == "high":
|
|
314
|
+
print(f"Reliable jump height: {metrics.jump_height:.3f}m")
|
|
315
|
+
else:
|
|
316
|
+
print(f"Low quality - warnings: {metrics.quality_assessment.warnings}")
|
|
317
|
+
```
|
|
318
|
+
|
|
235
319
|
## Python API
|
|
236
320
|
|
|
237
321
|
Use kinemotion as a library for automated pipelines and custom analysis.
|
|
@@ -50,17 +50,42 @@
|
|
|
50
50
|
- **Metrics**: Jump height, flight time, countermovement depth, eccentric/concentric durations
|
|
51
51
|
- **Validated accuracy**: 50.6cm jump (±1 frame precision)
|
|
52
52
|
|
|
53
|
-
## Validation Status
|
|
53
|
+
## ⚠️ Validation Status
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
**Current Status:** Pre-validation (not validated against force plates or motion capture systems)
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
### What This Tool IS Suitable For
|
|
58
58
|
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
|
|
59
|
+
✅ **Training monitoring** - Track relative changes within the same athlete over time
|
|
60
|
+
✅ **Educational purposes** - Learn about jump biomechanics and video analysis
|
|
61
|
+
✅ **Exploratory analysis** - Initial investigation before formal testing
|
|
62
|
+
✅ **Proof-of-concept research** - Demonstrate feasibility of video-based methods
|
|
62
63
|
|
|
63
|
-
|
|
64
|
+
### What This Tool IS NOT Suitable For
|
|
65
|
+
|
|
66
|
+
❌ **Research publications** - As a validated measurement instrument
|
|
67
|
+
❌ **Clinical decision-making** - Injury assessment, return-to-play decisions
|
|
68
|
+
❌ **Talent identification** - Absolute performance comparisons between athletes
|
|
69
|
+
❌ **Legal/insurance assessments** - Any context requiring validated measurements
|
|
70
|
+
❌ **High-stakes testing** - Draft combines, professional athlete evaluation
|
|
71
|
+
|
|
72
|
+
### Known Limitations
|
|
73
|
+
|
|
74
|
+
- **No force plate validation** - Accuracy claims are theoretical, not empirical
|
|
75
|
+
- **MediaPipe constraints** - Accuracy affected by lighting, clothing, occlusion, camera quality
|
|
76
|
+
- **Lower sampling rate** - Typical video (30-60fps) vs validated apps (120-240Hz)
|
|
77
|
+
- **Indirect measurement** - Landmarks → CoM estimation introduces potential error
|
|
78
|
+
- **No correction factors** - Unlike validated tools (e.g., MyJump), no systematic bias corrections applied
|
|
79
|
+
|
|
80
|
+
### Recommended Use
|
|
81
|
+
|
|
82
|
+
If you need validated measurements for research or clinical use, consider:
|
|
83
|
+
|
|
84
|
+
- **Commercial validated apps**: MyJump 2, MyJumpLab (smartphone-based, force plate validated)
|
|
85
|
+
- **Laboratory equipment**: Force plates, optical motion capture systems
|
|
86
|
+
- **Validation testing**: Compare kinemotion against validated equipment in your specific use case
|
|
87
|
+
|
|
88
|
+
For detailed validation status and roadmap, see [`docs/validation-status.md`](docs/validation-status.md).
|
|
64
89
|
|
|
65
90
|
## Setup
|
|
66
91
|
|
|
@@ -74,15 +99,24 @@ For clinical, research, or performance assessment requiring validated accuracy,
|
|
|
74
99
|
|
|
75
100
|
#### Windows
|
|
76
101
|
|
|
77
|
-
|
|
102
|
+
**Required system dependencies:**
|
|
103
|
+
|
|
104
|
+
- [Microsoft Visual C++ 2022 Redistributable](https://visualstudio.microsoft.com/visual-cpp-build-tools/) - Runtime libraries for OpenCV/MediaPipe
|
|
105
|
+
- Python 3.10-3.12 (64-bit) - MediaPipe requires 64-bit Python
|
|
78
106
|
|
|
79
107
|
**Recommended for mobile video support:**
|
|
80
108
|
|
|
81
|
-
- [FFmpeg](https://ffmpeg.org/download.html) - Download and add to PATH
|
|
109
|
+
- [FFmpeg](https://ffmpeg.org/download.html) - Download and add to PATH for full video codec support
|
|
82
110
|
|
|
83
111
|
#### macOS
|
|
84
112
|
|
|
85
|
-
|
|
113
|
+
**Required system dependencies:**
|
|
114
|
+
|
|
115
|
+
- Xcode Command Line Tools - Provides compilers and system frameworks
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
xcode-select --install
|
|
119
|
+
```
|
|
86
120
|
|
|
87
121
|
**Recommended for mobile video support:**
|
|
88
122
|
|
|
@@ -97,9 +131,10 @@ brew install ffmpeg
|
|
|
97
131
|
```bash
|
|
98
132
|
sudo apt-get update
|
|
99
133
|
sudo apt-get install -y \
|
|
100
|
-
libgl1
|
|
101
|
-
libglib2.0-0 \
|
|
102
|
-
|
|
134
|
+
libgl1 \ # OpenGL library for OpenCV
|
|
135
|
+
libglib2.0-0 \ # GLib library for MediaPipe
|
|
136
|
+
libgomp1 \ # OpenMP library for multi-threading
|
|
137
|
+
ffmpeg # Video codec support and metadata extraction
|
|
103
138
|
```
|
|
104
139
|
|
|
105
140
|
**Note:** `ffmpeg` provides the `ffprobe` tool for video metadata extraction (rotation, aspect ratio). Kinemotion works without it, but mobile/rotated videos may not process correctly. A warning will be shown if `ffprobe` is not available.
|
|
@@ -203,6 +238,55 @@ kinemotion cmj-analyze videos/*.mp4 --batch --workers 4 \
|
|
|
203
238
|
--csv-summary summary.csv
|
|
204
239
|
```
|
|
205
240
|
|
|
241
|
+
### Quality Indicators & Confidence Scores
|
|
242
|
+
|
|
243
|
+
All analysis outputs include automatic quality assessment to help you know when to trust results:
|
|
244
|
+
|
|
245
|
+
```json
|
|
246
|
+
{
|
|
247
|
+
"jump_height_m": 0.352,
|
|
248
|
+
"flight_time_s": 0.534,
|
|
249
|
+
"confidence": "high",
|
|
250
|
+
"quality_score": 87.3,
|
|
251
|
+
"quality_indicators": {
|
|
252
|
+
"avg_visibility": 0.89,
|
|
253
|
+
"min_visibility": 0.82,
|
|
254
|
+
"tracking_stable": true,
|
|
255
|
+
"phase_detection_clear": true,
|
|
256
|
+
"outliers_detected": 2,
|
|
257
|
+
"outlier_percentage": 1.5,
|
|
258
|
+
"position_variance": 0.0008,
|
|
259
|
+
"fps": 60.0
|
|
260
|
+
},
|
|
261
|
+
"warnings": []
|
|
262
|
+
}
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
**Confidence Levels:**
|
|
266
|
+
|
|
267
|
+
- **High** (score ≥75): Trust these results, good tracking quality
|
|
268
|
+
- **Medium** (score 50-74): Use with caution, check quality indicators
|
|
269
|
+
- **Low** (score \<50): Results may be unreliable, review warnings
|
|
270
|
+
|
|
271
|
+
**Common Warnings:**
|
|
272
|
+
|
|
273
|
+
- Poor lighting or occlusion detected
|
|
274
|
+
- Unstable landmark tracking (jitter)
|
|
275
|
+
- High outlier rate (tracking glitches)
|
|
276
|
+
- Low frame rate (\<30fps)
|
|
277
|
+
- Unclear phase transitions
|
|
278
|
+
|
|
279
|
+
**Filtering by Quality:**
|
|
280
|
+
|
|
281
|
+
```python
|
|
282
|
+
# Only use high-confidence results
|
|
283
|
+
metrics = process_cmj_video("video.mp4")
|
|
284
|
+
if metrics.quality_assessment.confidence == "high":
|
|
285
|
+
print(f"Reliable jump height: {metrics.jump_height:.3f}m")
|
|
286
|
+
else:
|
|
287
|
+
print(f"Low quality - warnings: {metrics.quality_assessment.warnings}")
|
|
288
|
+
```
|
|
289
|
+
|
|
206
290
|
## Python API
|
|
207
291
|
|
|
208
292
|
Use kinemotion as a library for automated pipelines and custom analysis.
|
|
@@ -24,6 +24,7 @@ Welcome to the kinemotion documentation. This directory contains guides, technic
|
|
|
24
24
|
|
|
25
25
|
### 🔬 Research & Validation
|
|
26
26
|
|
|
27
|
+
- **[⚠️ Validation Status](validation-status.md)** - **READ FIRST** - Current validation status, limitations, and appropriate use cases
|
|
27
28
|
- **[Sports Biomechanics Pose Estimation](research/sports-biomechanics-pose-estimation.md)** - Comprehensive research analysis on pose detection systems for sports biomechanics
|
|
28
29
|
- Pose2Sim validation (3-4° accuracy)
|
|
29
30
|
- Stereo MediaPipe validation (30.1mm RMSE)
|
|
@@ -39,6 +40,7 @@ Welcome to the kinemotion documentation. This directory contains guides, technic
|
|
|
39
40
|
|
|
40
41
|
### 👨💻 Development
|
|
41
42
|
|
|
43
|
+
- **[Validation Roadmap](development/validation-roadmap.md)** - 3-month validation plan (no lab equipment required)
|
|
42
44
|
- **[Validation Plan](development/validation-plan.md)** - Testing and validation strategy
|
|
43
45
|
- **[Errors & Findings](development/errors-findings.md)** - Known issues and debugging information
|
|
44
46
|
- **[Wall Ball No-Rep Detection](development/wallball-norep-detection.md)** - Future feature implementation plan for HYROX wall ball analysis
|
|
@@ -73,9 +75,15 @@ Start here:
|
|
|
73
75
|
|
|
74
76
|
### For Researchers
|
|
75
77
|
|
|
78
|
+
#### ⚠️ IMPORTANT: Read validation status first before using in research
|
|
79
|
+
|
|
80
|
+
1. [**Validation Status**](validation-status.md) - **READ FIRST** - Limitations and appropriate use
|
|
81
|
+
|
|
76
82
|
1. [Sports Biomechanics Pose Estimation](research/sports-biomechanics-pose-estimation.md) - Research analysis
|
|
83
|
+
|
|
77
84
|
1. [Pose Systems Quick Reference](reference/pose-systems.md) - System comparisons
|
|
78
|
-
|
|
85
|
+
|
|
86
|
+
1. [Validation Roadmap](development/validation-roadmap.md) - Planned validation activities
|
|
79
87
|
|
|
80
88
|
### For Developers
|
|
81
89
|
|