.gitignore
LICENSE
README.md
README_pypi.md
pyproject.toml
setup.cfg
.github/scripts/release.py
.github/workflows/publish.yml
.github/workflows/release.yml
demos/2B_PLS.py
demos/how_many_pcs.ipynb
demos/pls_hypothesis_test.py
demos/principal_components_analysis.py
docs/.nojekyll
docs/Makefile
docs/index.html
docs/make.bat
docs/doctrees/environment.pickle
docs/doctrees/index.doctree
docs/doctrees/modules.doctree
docs/doctrees/python_shape_stats.doctree
docs/html/.buildinfo
docs/html/genindex.html
docs/html/index.html
docs/html/modules.html
docs/html/objects.inv
docs/html/py-modindex.html
docs/html/python_shape_stats.html
docs/html/search.html
docs/html/searchindex.js
docs/html/_modules/index.html
docs/html/_modules/python_shape_stats/helpers.html
docs/html/_modules/python_shape_stats/inlier_processes.html
docs/html/_modules/python_shape_stats/procrustes.html
docs/html/_modules/python_shape_stats/statistical_shape_models.html
docs/html/_sources/index.rst.txt
docs/html/_sources/modules.rst.txt
docs/html/_sources/python_shape_stats.rst.txt
docs/html/_static/basic.css
docs/html/_static/doctools.js
docs/html/_static/documentation_options.js
docs/html/_static/file.png
docs/html/_static/language_data.js
docs/html/_static/minus.png
docs/html/_static/nbsphinx-broken-thumbnail.svg
docs/html/_static/nbsphinx-code-cells.css
docs/html/_static/nbsphinx-gallery.css
docs/html/_static/nbsphinx-no-thumbnail.svg
docs/html/_static/plus.png
docs/html/_static/pygments.css
docs/html/_static/searchtools.js
docs/html/_static/sphinx_highlight.js
docs/html/_static/css/badge_only.css
docs/html/_static/css/theme.css
docs/html/_static/css/fonts/Roboto-Slab-Bold.woff
docs/html/_static/css/fonts/Roboto-Slab-Bold.woff2
docs/html/_static/css/fonts/Roboto-Slab-Regular.woff
docs/html/_static/css/fonts/Roboto-Slab-Regular.woff2
docs/html/_static/css/fonts/fontawesome-webfont.eot
docs/html/_static/css/fonts/fontawesome-webfont.svg
docs/html/_static/css/fonts/fontawesome-webfont.ttf
docs/html/_static/css/fonts/fontawesome-webfont.woff
docs/html/_static/css/fonts/fontawesome-webfont.woff2
docs/html/_static/css/fonts/lato-bold-italic.woff
docs/html/_static/css/fonts/lato-bold-italic.woff2
docs/html/_static/css/fonts/lato-bold.woff
docs/html/_static/css/fonts/lato-bold.woff2
docs/html/_static/css/fonts/lato-normal-italic.woff
docs/html/_static/css/fonts/lato-normal-italic.woff2
docs/html/_static/css/fonts/lato-normal.woff
docs/html/_static/css/fonts/lato-normal.woff2
docs/html/_static/js/badge_only.js
docs/html/_static/js/html5shiv-printshiv.min.js
docs/html/_static/js/html5shiv.min.js
docs/html/_static/js/theme.js
docs/source/conf.py
docs/source/index.rst
docs/source/modules.rst
docs/source/python_shape_stats.rst
img/PC_1_2_3_4.gif
img/PC_1_2_3_4.pdf
img/PC_1_2_3_4.png
img/PLS_Dim1.gif
img/PLS_Dim1.pdf
img/PLS_Dim1.png
img/regression.gif
img/regression_coeffs.pdf
img/regression_coeffs.png
img/regression_point_p_values.pdf
img/regression_point_p_values.png
misc/make_pinnochio.py
misc/slice_sim_pop_faces.py
src/python_shape_stats/__init__.py
src/python_shape_stats/helpers.py
src/python_shape_stats/inlier_processes.py
src/python_shape_stats/procrustes.py
src/python_shape_stats/statistical_shape_models.py
src/python_shape_stats.egg-info/PKG-INFO
src/python_shape_stats.egg-info/SOURCES.txt
src/python_shape_stats.egg-info/dependency_links.txt
src/python_shape_stats.egg-info/requires.txt
src/python_shape_stats.egg-info/top_level.txt
src/python_shape_stats/data/facial_part_masks/forehead_and_orbits.obj
src/python_shape_stats/data/facial_part_masks/forehead_and_orbits2.obj
src/python_shape_stats/data/facial_part_masks/forehead_and_orbits3.obj
src/python_shape_stats/data/facial_part_masks/full_face.obj
src/python_shape_stats/data/facial_part_masks/lower_face.obj
src/python_shape_stats/data/facial_part_masks/nose.obj
src/python_shape_stats/data/pickled_models/ShapeHypothesisTest.p
src/python_shape_stats/data/pickled_models/ShapePCA.p
src/python_shape_stats/data/pinnochio_data/Forehead.obj
src/python_shape_stats/data/pinnochio_data/HM.obj
src/python_shape_stats/data/sim_faces/SIMPOP_Metadata.xlsx
src/python_shape_stats/data/sim_faces/faces/SIMPOP_01.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_01.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_02.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_02.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_03.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_03.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_04.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_04.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_05.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_05.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_06.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_06.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_07.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_07.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_08.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_08.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_09.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_09.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_10.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_10.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_11.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_11.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_12.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_12.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_13.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_13.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_14.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_14.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_15.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_15.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_16.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_16.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_17.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_17.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_18.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_18.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_19.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_19.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_20.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_20.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_21.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_21.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_22.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_22.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_23.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_23.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_24.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_24.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_25.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_25.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_26.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_26.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_27.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_27.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_28.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_28.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_29.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_29.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_30.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_30.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_31.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_31.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_32.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_32.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_33.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_33.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_34.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_34.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_35.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_35.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_36.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_36.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_37.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_37.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_38.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_38.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_39.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_39.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_40.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_40.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_41.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_41.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_42.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_42.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_43.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_43.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_44.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_44.obj
src/python_shape_stats/data/sim_faces/faces/SIMPOP_45.mtl
src/python_shape_stats/data/sim_faces/faces/SIMPOP_45.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_01.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_02.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_03.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_04.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_05.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_06.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_07.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_08.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_09.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_10.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_11.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_12.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_13.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_14.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_15.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_16.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_17.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_18.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_19.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_20.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_21.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_22.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_23.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_24.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_25.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_26.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_27.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_28.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_29.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_30.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_31.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_32.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_33.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_34.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_35.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_36.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_37.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_38.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_39.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_40.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_41.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_42.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_43.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_44.obj
src/python_shape_stats/data/sim_faces/forehead_orbits/SIMPOP_45.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_01.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_02.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_03.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_04.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_05.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_06.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_07.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_08.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_09.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_10.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_11.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_12.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_13.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_14.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_15.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_16.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_17.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_18.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_19.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_20.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_21.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_22.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_23.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_24.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_25.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_26.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_27.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_28.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_29.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_30.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_31.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_32.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_33.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_34.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_35.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_36.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_37.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_38.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_39.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_40.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_41.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_42.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_43.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_44.obj
src/python_shape_stats/data/sim_faces/nose/SIMPOP_45.obj
src/python_shape_stats/data/ssm_1/Average.mtl
src/python_shape_stats/data/ssm_1/Average.obj
src/python_shape_stats/data/ssm_1/EigVal.txt
src/python_shape_stats/data/ssm_1/EigVec.txt
tests/test_helpers.py
tests/test_pca.py
tests/test_plotting.py
tests/test_plotting_PLSHypTest.py
tests/test_pls.py
tests/test_procrustes.py