simba-uw-tf-dev 5.4.1__tar.gz → 5.4.2__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.
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/PKG-INFO +1 -1
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/setup.py +1 -1
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/.recent_projects.txt +1 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/mitra_feature_extractor.py +2 -2
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/geometry_mixin.py +8 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/image_mixin.py +22 -3
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/timeseries_features_mixin.py +41 -14
- simba_uw_tf_dev-5.4.2/simba/pose_importers/sleap_slp_importer.py +195 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/PKG-INFO +1 -1
- simba_uw_tf_dev-5.4.1/simba/pose_importers/sleap_slp_importer.py +0 -277
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/bigquery_download_stats.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/cleaning.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/issue_msg.yml.disabled +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/issue_report.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/tests_py310.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.github/workflows/tests_py36.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.gitignore +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.pytest.ini +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/.readthedocs.yaml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/App.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/CITATION.cff +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/CODE_OF_CONDUCT.md +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/LICENSE +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/MANIFEST.in +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/README.md +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/requirements.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/requirements_arm.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/requirements_gpu.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/requirements_wsl.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/caltech_download.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/create_issues_report.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/dataverse_download.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/gitter_stats.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/make_qr_code.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/osf_download.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/scripts/upgrade_simba_keep_configs.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/setup.cfg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/SimBA.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/SimBA_logo.ico +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/.env +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/TheGoldenLab.PNG +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/dash_simba_base.css +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/fonts/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/fonts/Playwrite ES Deco.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/fonts/Poppins Bold.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/fonts/Poppins Regular.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/fonts/UbuntuMono-Regular.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo.icns +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo.ico +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo_3.ico +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo_3_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/SimBA_logo_4_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/abacus.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/abacus_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/abacus_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/about.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/add.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/add_on.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/analyze_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/analyze_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/api.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/application.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/archive.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/arrow_down_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/arrow_down_green_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/attributes_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/audio.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/average.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/average_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/avi.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/background.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bar_graph_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bar_graph_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bar_graph_light_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/batch.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/black_and_white.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/black_cross.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/blur.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bmp.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bold.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/boolean.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/boris.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/branches_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/brightness.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/browse.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/browse_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/brush_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bubble.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bubble_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bubble_pink.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bullet_grey.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bullseye.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/bw.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/calipher.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/camera.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/category.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/center.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/change.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/check_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/circle.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/circle_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/circle_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/circle_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/circle_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clahe.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clean.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clean_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clf.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clf_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clip.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/clock.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/close.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/cluster.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/cluster_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/coco_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/color_wheel.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_icons/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_icons/horizontal.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_icons/mixed_mosaic.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_icons/mosaic.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_icons/vertical.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/concat_videos.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/convert.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/counter.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/cpu_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/create.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/crop.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/crop_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/crop_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/crop_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/crossfade.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/csv_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/csv_grey.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/curve_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/danger.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dash_simba.css +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/data_table.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/decision_tree_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/decision_tree_purple.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/decision_tree_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/delete_large_orange.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/delete_large_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dependency.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/details.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/developer.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dice_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dimensionality_reduction.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/direction.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/direction_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/direction_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/display_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/distance.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/distance_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dlc_1.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dlc_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/documentation.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/documentation_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/download.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/draw.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/dumbbell.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/duplicate.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/duplicate_2_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/duplicate_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/duplicate_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ear_right.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ear_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/edit.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/edit_roi_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/egocentric.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/equation_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ethovision.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/exit.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/eye.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/factory.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fast_forward.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fast_forward_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fast_forward_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fast_forward_large_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fast_reverse.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fastforward_green_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/feather_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/features.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ffmpeg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/file.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/file_type.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fill.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/filter.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/finish.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fire.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/first.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/first_frame_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/first_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/flip_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/flip_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/flip_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/folder.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/folder_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/folder_video.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/font.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/font_size.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/forest.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/forward.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/forward_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/four_squares.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/fps.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/frames.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/frames_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gamma.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gantt_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gantt_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gif.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/github.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/github_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gitter.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gitter_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gpu.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gpu_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/gpu_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/green_check.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/green_dice.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/grey.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/greyscale.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/half_circle.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/half_circle_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/heatmap.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/height.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/hexagon.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/hexagon_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/hierarchy.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/hierarchy_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/histogram.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/home.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/horizontal.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/id_card.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/id_card_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/image.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/import.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/info.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/info_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ini.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/interaction_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/interactive_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/invert.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/join_purple.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/join_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/join_yellow.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/jpeg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/json.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/jump.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/keyboard.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/label.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/label_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/label_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/label_yellow.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/labelme.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/labelme_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/labelme_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/last.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/last_frame_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/last_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/leaf.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/left_arrow_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/left_arrow_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/left_ear.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/light_bulb.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/line.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/line_chart_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/line_chart_light_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/line_chart_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/link.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/list.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/load.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/load_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/load_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/location.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/log.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/magnifying.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mars.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mean.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/median.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/merge.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/metrics.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/metrics_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/metrics_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/minus.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/minus_blue_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/minus_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/minus_red_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mixing_panel.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/monitor.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mouse_head.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mouse_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mov.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/move.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/move_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/mp4.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/multiple_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/multiple_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/multiple_yellow.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/navigation.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/nose.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/number_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/obb.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/one.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/one_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/one_to_many.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/opacity.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/options_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/original_size.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/osf.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/osf_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/outlier.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/outside.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/outside_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/overlap_iou.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/paint.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/palette_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/palette_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/parquet.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/path.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/path_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pct.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pct_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pdf_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/permutation_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/photos.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/play.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/play_large_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/plot.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/plus.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/plus_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/plus_green_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/plus_green_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/png.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/point.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/point_right_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pointing_left_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/polygon.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/polygon_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/polygon_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pose.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/pose_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/print.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/probability.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/progressbar_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/python.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/question_mark.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/range_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/readthedocs_logo.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/recent_files.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rectangle.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rectangle_1_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rectangle_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rectangle_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rectangle_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/remove_bg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/reorganize.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/resize.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/restart.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/reverse.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/reverse_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/reverse_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/reverse_large_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rewind.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rewind_blue_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rewind_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rewind_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/right_arrow_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/right_arrow_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rocket.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/roi.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/roi_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rotate.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/rounding.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ruler.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ruler_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/run.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/sample.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/save.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/save_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/save_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/save_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/save_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/scale_1.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/scale_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/scale_3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/search.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/segment.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/seperate_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/settings.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shade.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shap.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shap_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shapes_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shapes_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/shapes_small_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/sigma.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/simba_logo_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/single_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/single_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/single_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/size_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/skip.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/skip_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/skip_forward_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/skip_previous_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/sleap_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/smooth.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/speedometer.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/split.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/split_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/spread.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/square_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/stack.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/star.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/stop.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/stopwatch.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/stream.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/style.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/subset_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/superimpose.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/svg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/system.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/t.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/table.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/table_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text_bg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text_color.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text_color_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/text_spacing.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/threshold.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/tick.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/tick_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/tiff.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/tile_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/time.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/timer.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/timer_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/trash.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/trash_red.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/triangle_black.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/triangle_small.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/tv_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/two.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ultralytics_1.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/ultralytics_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/verbose.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/vertical.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/video.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/video_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/video_file_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/video_large.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/visualize.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/visualize_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/visualize_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/walk.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/wand_blue.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/warning.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/watermark_green.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/webm.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/webp.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/weight.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/weights.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/width.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/x.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/y.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/zero.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/zoom_in.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/icons/zoom_out.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/about_me.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/bg.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/bg_2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/bg_2024.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/landing.mp4 +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/simon_n.webp +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/splash.mp4 +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/splash.pptx +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/splash_2024.mp4 +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/img/~$splash.pptx +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/critical_values_05.pickle +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/feature_extraction_headers.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/features.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/model_names.parquet +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/tooptips.json +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/unsupervised_example_x.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/yolo.yaml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/yolo_schematics/tappelby.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/yolo_schematics/yolo_7bps.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/lookups/yolo_schematics/yolo_mitra.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/ppyoloe_plus_crn_s_80e_coco.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/UbuntuMono-Regular.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/animal_distances.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/baseline_scale.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/color_bar.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/down_arrow.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/feature_categories/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/feature_categories/shap_feature_categories.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/intruder_movement.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/intruder_shape.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/resident_intruder_movement.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/resident_intruder_shape.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/resident_movement.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/resident_shape.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/side_scale.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/side_scale_5.jpg +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/shap/ubuntu.regular.ttf +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/stl/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/stl/grid_floor.stl +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/stl/operant_lever.stl +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/stl/operant_tray.stl +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/stl/operant_walls.stl +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/tracker_yml/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/tracker_yml/botsort.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/tracker_yml/bytetrack.yml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/tracker_yml/tow_bytetrack.yaml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/unsupervised/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/unsupervised/features.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/assets/unsupervised/model_names.parquet +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/agg_boundary_stats.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/boundary_menus.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/boundary_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/find_boundaries.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/visualize_boundaries.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/bounding_box_tools/yolo/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_clf_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_main_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_movement_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_tools.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/cue_light_tools/cue_light_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/dash_app/SimBA_dash_app.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/dash_app/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/dash_app/dash_app.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/dash_app/run_dash_tkinter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/advanced_interpolator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/advanced_smoothing.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/agg_clf_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/agg_clf_counter_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/blob_location_computer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/boolean_conditional_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/circling_detector.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/circular_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/create_shap_log.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/data.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/geometry.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/image.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/timeseries.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cuda/utils.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cue_light_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cue_light_clf_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/cue_light_movement_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/directing_animal_to_bodypart.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/directing_other_animals_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/distance_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/distance_timbin_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/egocentric_aligner.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/find_animal_blob_location.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/freezing_detector.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/freezing_detector_v2.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/fsttc_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/gibbs_sampler.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/interpolate.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/interpolate_pose.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/interpolation_smoothing.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/kleinberg_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/light_dark_box_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/movement_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/mutual_exclusivity_corrector.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/pup_retrieval_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/pybursts_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/pybursts_calculator_numba.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/severity_bout_based_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/severity_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/severity_frame_based_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/smoothing.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/spontaneous_alternation_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/timebins_clf_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/timebins_movement_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/timebins_movement_calculator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/data_processors/yolo_track_cleaner.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/aggression_feature_extractor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/amber_feature_extractor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/boundary_rearing_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/cave_fish_featurizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_14bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_16bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_4bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_7bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_8bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_8bps_2_animals.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_9bp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_extractor_user_defined.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/feature_subsets.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/gerbil_featurizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/add_probability_cnt_features.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/convex_hull_3_scratch_3.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/convex_hull_scratch_1.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/convex_hull_scratch_2.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/count_values_in_range.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/doctests.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/egocentrical_aligner.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/fish_feature_extractor_2022.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/fish_feature_extractor_2023_version_2.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/fish_feature_extractor_2023_version_3.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/fish_feature_extractor_2023_version_4.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/fish_feature_extractor_2023_version_5.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/graph_3d_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/graph_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/make_splash.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/mutual_exclusive.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/peaks.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/read_in_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/termite_rois.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/time_stamp_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/video_color.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/video_rotator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/misc/video_rotator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/perimeter_jit.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/rat_social_featurizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/riptortus_featurizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/straub_tail_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/wingwave_extractor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/extract_labelled_frames.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/extract_labelling_meta.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/labelling_advanced_interface.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/labelling_interface.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/mitra_style_appender.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/play_annotation_video.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/single_clf_appender_excel.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/standard_labeller.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/labelling/targeted_annotations_clips.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/abstract_classes.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/annotator_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/circular_statistics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/config_reader.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/feature_extraction_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/feature_extraction_supplement_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/network_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/plotting_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/pop_up_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/pose_importer_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/statistics_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/train_model_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/mixins/unsupervised_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/grid_search_multiclass_rf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/grid_search_rf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/inference_batch.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/inference_multi_animal_batch.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/inference_multiclass_batch.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/inference_validation.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/ordinal_clf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/regression/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/regression/metrics.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/regression/model.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/sam_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/train_multiclass_rf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/train_multilabel_rf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/train_rf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_fit.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_nvdec_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_pose_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_pose_track_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/model/yolo_seg_inference.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_location.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_location_advanced.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_location_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_movement.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_movement_advanced.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/outlier_corrector_movement_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/outlier_tools/skip_outlier_correction.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/EzPathPlot.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/ROI_feature_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/ROI_feature_visualizer_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/annotation_videos.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/blob_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/blob_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/circular_feature_overlay_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/circular_plotting.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/clf_validator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/clf_validator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/compare_bbox_mdls.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/cue_light_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/data_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/directing_animals_to_bodypart_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/directing_animals_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/directing_animals_visualizer_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/distance_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/distance_plotter_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/ez_path_plot.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/frame_mergerer_ffmpeg.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/gantt_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/gantt_creator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/gantt_plotly.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/geometry_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/heat_mapper_clf.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/heat_mapper_clf_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/heat_mapper_location.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/heat_mapper_location_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/interactive_probability_grapher.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/light_dark_box_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/path_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/path_plotter_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/plot_clf_results.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/plot_clf_results_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/pose_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/pose_plotter_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/probability_plot_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/probability_plot_creator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/roi_directing_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/roi_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/roi_plotter_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/sam_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/shap_agg_stats_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/single_run_model_validation_video.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/single_run_model_validation_video_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/skeleton_video_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/spontaneous_alternation_plotter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/tools/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/tools/tkinter_tools.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/yolo_annotation_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/yolo_pose_track_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/yolo_pose_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/yolo_seg_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/plotting/yolo_visualize.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/bp_names/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/bp_names/bp_names.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/configuration_names/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/configuration_names/pose_config_names.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/no_animals/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/no_animals/no_animals.csv +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/1.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/10.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/11.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/12.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/13.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/14.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/15.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/16.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/2.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/3.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/4.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/5.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/6.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/7.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/8.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_configurations/schematics/9.png +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/dlc_importer_csv.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/facemap_h5_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/import_mars.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/madlc_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/misc/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/misc/apt_trk_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/read_DANNCE_mat.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/simba_blob_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/simba_yolo_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/sleap_csv_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/sleap_h5_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/superanimal_import.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_importers/trk_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_processors/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_processors/pose_reset.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_processors/remove_keypoints.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_processors/reorganize_keypoint.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/pose_processors/reverse_pose.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/requirements.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/ROI_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/ROI_directing_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/ROI_feature_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/ROI_size_standardizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/ROI_time_bin_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/import_roi_csvs.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/interactive_modifier_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/interactive_roi_bufferer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/interactive_roi_modifier_tkinter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_aggregate_statistics_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_aggregate_stats_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_clf_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_clf_calculator_mp.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_ruler.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_selector_circle_tkinter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_selector_polygon_tkinter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_selector_rectangle_tkinter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_time_bins_analyzer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_ui_mixin.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/roi_tools/roi_utils.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/BENTO_appender.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/BORIS_appender.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/boris_source_cleaner.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/converters.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/deepethogram_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/ethovision_import.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/observer_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/shah_appender.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/solomon_importer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/third_party_appender.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/tools.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/coco_keypoints_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/coco_keypoints_to_yolo_bbox.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/coco_keypoints_to_yolo_seg.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/dlc_ma_h5_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/dlc_multi_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/dlc_single_to_multi_format_converter.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/dlc_to_labelme.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/dlc_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/labelme_to_df.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/labelme_to_dlc.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/labelme_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/labelme_to_yolo_keypoints.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/labelme_to_yolo_seg.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/litpose_crop_annotations.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/litpose_crop_annotations_bbox_square.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/litpose_merge_projects.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/litpose_to_yolo_bbox.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/litpose_to_yolo_keypoints.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/merge_yolo_projects.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/sam3_to_yolo_bbox.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/sam3_to_yolo_seg.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/simba_roi_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/simba_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/simba_to_yolo_seg.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/sleap_csv_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/sleap_h5_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/sleap_to_yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/utils.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/yolo_labels_to_yolo_project.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/third_party_label_appenders/transform/yolo_to_imgs.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/blob_quick_check_interface.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/blob_tracker_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/create_project_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/get_tree_view.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/import_pose_frame.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/import_videos_frame.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/machine_model_settings_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/ml_settings_frm.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/about_simba_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/animal_directing_other_animals_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/animal_directing_roi_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/annotated_bouts_videos_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/append_roi_features_animals_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/append_roi_features_bodypart_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/archive_files_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/batch_preprocess_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/blob_visualizer_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/boolean_conditional_slicer_pup_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/change_speed_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/check_videos_seekable_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_add_remove_print_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_annotation_counts_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_by_roi_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_by_timebins_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_descriptive_statistics_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_probability_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/clf_validation_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/coco_keypoints_to_yolo_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/create_user_defined_pose_configuration_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/csv_2_parquet_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/cue_light_clf_analyzer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/cue_light_data_analyzer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/cue_light_main_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/cue_light_movement_analyzer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/cue_light_visualizer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/data_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/delete_all_rois_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/directing_animal_to_bodypart_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/directing_other_animals_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/direction_animal_to_bodypart_settings_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/distance_analysis_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/distance_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/distance_timebins_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/dlc_annotations_to_labelme_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/dlc_h5_inference_to_yolo_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/dlc_to_labelme_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/dlc_to_yolo_keypoints_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/duplicate_rois_by_source_target_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/egocentric_alignment_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/extract_annotation_frames_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/ez_path_plot_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/fsttc_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/gantt_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/heatmap_clf_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/heatmap_location_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/helpers.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/import_roi_csv_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/initialize_blob_tracking_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/interpolate_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/kleinberg_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/labelme_bbox_to_yolo_bbox_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/labelme_dir_to_csv_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/labelme_to_df_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/labelme_to_imgs_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/make_path_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/merge_coco_keypoint_files_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/min_max_draw_size_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/movement_analysis_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/movement_analysis_time_bins_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/multiple_videos_to_frames_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/mutual_exclusivity_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/outlier_settings_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/path_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/pose_bp_drop_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/pose_reorganizer_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/print_video_meta_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/pup_retrieval_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/quick_path_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/remove_roi_features_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_aggregate_stats_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_analysis_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_analysis_time_bins_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_directing_visualizer_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_features_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_size_standardizer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_tracking_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/roi_video_table_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/run_machine_models_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/select_video_for_labelling_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/select_video_for_pseudo_labelling_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/severity_analysis_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/simba_rois_to_yolo_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/simba_to_yolo_keypoints_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/single_video_to_frames_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/sleap_annotations_to_yolo_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/sleap_csv_predictions_to_yolo_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/sleap_h5_inference_to_yolo_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/smoothing_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/splash_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/spontaneous_alternation_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/subset_feature_extractor_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/targeted_annotation_clips_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/third_party_annotator_appender_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/validation_plot_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/video_processing_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/visualize_pose_in_dir_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/yolo_inference_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/yolo_plot_results.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/pop_ups/yolo_pose_train_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/px_to_mm_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/tkinter_functions.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/user_defined_pose_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/utils.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/video_info_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/ui/video_timelaps.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/bout_aggregator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/cluster_frequentist_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/cluster_validation_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/cluster_video_visualizer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/cluster_xai_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/clusterer_comparison_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/data_extractor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/data_map.yaml +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/dataset_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/dbcv_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/embedding_correlation_calculator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/enums.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/grid_search_visualizers.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/hdbscan_clusterer.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/outlier_detector.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/cluster_frequentist_stats_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/cluster_validation_pop_up.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/cluster_videos_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/cluster_xai_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/clusterer_comparison_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/data_extractor_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/embedding_correlations_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/fit_cluster_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/fit_dim_reduction_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/grid_search_visualizer_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/print_embedding_info_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/transform_cluster_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/pop_ups/transform_dim_reduction_popup.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/tsne.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/umap_embedder.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/unsupervised/unsupervised_main.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/checks.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/cli/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/cli/cli_tools.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/config_creator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/custom_feature_extractor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/data.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/enums.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/errors.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/lookups.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/printing.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/read_write.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/warnings.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/utils/yolo.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/.DS_Store +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/__init__.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/async_frame_reader.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/async_frame_reader_gpu.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/batch_process_create_ffmpeg_commands.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/batch_process_menus.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/blob_tracking_executor.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/brightness_contrast_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/calculate_px_dist.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/clahe_ui.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/egocentric_video_rotator.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/extract_frames.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/extract_seqframes.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/multi_cropper.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/roi_selector.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/roi_selector_circle.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/roi_selector_polygon.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/video_processing.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/video_processors/videos_to_frames.py +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/SOURCES.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/dependency_links.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/entry_points.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/requires.txt +0 -0
- {simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba_uw_tf_dev.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: simba_uw_tf_dev
|
|
3
|
-
Version: 5.4.
|
|
3
|
+
Version: 5.4.2
|
|
4
4
|
Summary: Toolkit for computer classification and analysis of behaviors in experimental animals
|
|
5
5
|
Home-page: https://github.com/sgoldenlab/simba
|
|
6
6
|
Author: Simon Nilsson, Jia Jie Choong, Sophia Hwang
|
|
@@ -30,7 +30,7 @@ with open(GPU_REQUIREMENTS_PATH, "r") as f:
|
|
|
30
30
|
# Setup configuration
|
|
31
31
|
setuptools.setup(
|
|
32
32
|
name="simba_uw_tf_dev",
|
|
33
|
-
version="5.4.
|
|
33
|
+
version="5.4.2",
|
|
34
34
|
author="Simon Nilsson, Jia Jie Choong, Sophia Hwang",
|
|
35
35
|
author_email="sronilsson@gmail.com",
|
|
36
36
|
description="Toolkit for computer classification and analysis of behaviors in experimental animals",
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
H:/projects/nick_iso/nick_iso/project_folder/project_config.ini
|
|
1
2
|
G:/projects/sleap_bp_order/by_order/project_folder/project_config.ini
|
|
2
3
|
H:/projects/brainwide_trap/brainwide_trap/project_folder/project_config.ini
|
|
3
4
|
D:/troubleshooting/open_field_below/project_folder/project_config.ini
|
{simba_uw_tf_dev-5.4.1 → simba_uw_tf_dev-5.4.2}/simba/feature_extractors/mitra_feature_extractor.py
RENAMED
|
@@ -231,8 +231,8 @@ class MitraFeatureExtractor(ConfigReader,
|
|
|
231
231
|
# feature_extractor = MitraFeatureExtractor(config_path=args.config_path)
|
|
232
232
|
# feature_extractor.run()
|
|
233
233
|
#
|
|
234
|
-
feature_extractor = MitraFeatureExtractor(config_path=r"H:\projects\brainwide_trap\brainwide_trap\project_folder\project_config.ini")
|
|
235
|
-
feature_extractor.run()
|
|
234
|
+
# feature_extractor = MitraFeatureExtractor(config_path=r"H:\projects\brainwide_trap\brainwide_trap\project_folder\project_config.ini")
|
|
235
|
+
# feature_extractor.run()
|
|
236
236
|
|
|
237
237
|
|
|
238
238
|
# feature_extractor = MitraFeatureExtractor(config_path=r"E:\troubleshooting\mitra_pbn\mitra_pbn\project_folder\project_config.ini")
|
|
@@ -3654,6 +3654,10 @@ class GeometryMixin(object):
|
|
|
3654
3654
|
Hausdorff distance can be used to measure the similarity of the geometry in one frame relative to the geometry in the next frame.
|
|
3655
3655
|
Larger values indicate that the animal has a different shape than in the preceding shape.
|
|
3656
3656
|
|
|
3657
|
+
.. image:: _static/img/hausdorff_distance.webp
|
|
3658
|
+
:width: 450
|
|
3659
|
+
:align: center
|
|
3660
|
+
|
|
3657
3661
|
.. seealso::
|
|
3658
3662
|
:func:`simba.mixins.geometry_mixin.GeometryMixin.multiframe_hausdorff_distance`
|
|
3659
3663
|
|
|
@@ -4172,6 +4176,10 @@ class GeometryMixin(object):
|
|
|
4172
4176
|
smoothing is controlled by `smooth_factor`, and the number of interpolated points
|
|
4173
4177
|
along the new smoothed boundary is determined by `points`.
|
|
4174
4178
|
|
|
4179
|
+
.. image:: _static/img/smooth_geometry_bspline.webp
|
|
4180
|
+
:width: 650
|
|
4181
|
+
:align: center
|
|
4182
|
+
|
|
4175
4183
|
:param Union[np.ndarray, Polygon, List[Polygon]] data: The input geometry to be smoothed. This can be: A NumPy array of shape (N, 2) representing a single polygon. A NumPy array of shape (M, N, 2) representing multiple polygons. A `Polygon` object from Shapely. A list of `Polygon` objects.
|
|
4176
4184
|
:param float smooth_factor: The smoothing factor for the B-spline. Higher values result in smoother curves. Must be >= 0.1.
|
|
4177
4185
|
:param int points: The number of interpolated points used to redefine the smoothed polygon boundary. Must be >= 3.
|
|
@@ -216,6 +216,10 @@ class ImageMixin(object):
|
|
|
216
216
|
"""
|
|
217
217
|
Calculate contour similarity between two images.
|
|
218
218
|
|
|
219
|
+
.. image:: _static/img/get_contourmatch.webp
|
|
220
|
+
:width: 700
|
|
221
|
+
:align: center
|
|
222
|
+
|
|
219
223
|
:param np.ndarray img_1: First input image (numpy array).
|
|
220
224
|
:param np.ndarray img_2: Second input image (numpy array).
|
|
221
225
|
:param Optional[Literal['all', 'exterior']] method: Method for contour extraction. Options: 'all' (all contours) or 'exterior' (only exterior contours). Defaults to 'all'.
|
|
@@ -249,7 +253,9 @@ class ImageMixin(object):
|
|
|
249
253
|
img_2 = ImageMixin().canny_edge_detection(img=img_2)
|
|
250
254
|
img_1_contours = ImageMixin().find_contours(img=img_1, mode=mode, method=method)
|
|
251
255
|
img_2_contours = ImageMixin().find_contours(img=img_2, mode=mode, method=method)
|
|
252
|
-
|
|
256
|
+
cnt_1 = max(img_1_contours, key=cv2.contourArea)
|
|
257
|
+
cnt_2 = max(img_2_contours, key=cv2.contourArea)
|
|
258
|
+
return cv2.matchShapes(cnt_1, cnt_2, cv2.CONTOURS_MATCH_I1, 0.0)
|
|
253
259
|
|
|
254
260
|
@staticmethod
|
|
255
261
|
def slice_shapes_in_img(img: Union[np.ndarray, Tuple[cv2.VideoCapture, int]], geometries: List[Union[Polygon, np.ndarray]]) -> List[np.ndarray]:
|
|
@@ -265,6 +271,10 @@ class ImageMixin(object):
|
|
|
265
271
|
For GPU acceleration, see :func:`simba.data_processors.cuda.image.slice_imgs`
|
|
266
272
|
For single core method, see :func:`simba.mixins.image_mixin.ImageMixin.slice_shapes_in_imgs`
|
|
267
273
|
|
|
274
|
+
.. image:: _static/img/slice_shapes_in_img.webp
|
|
275
|
+
:width: 600
|
|
276
|
+
:align: center
|
|
277
|
+
|
|
268
278
|
.. video:: _static/img/slice_imgs_gpu.webm
|
|
269
279
|
:width: 800
|
|
270
280
|
:autoplay:
|
|
@@ -1201,6 +1211,7 @@ class ImageMixin(object):
|
|
|
1201
1211
|
threshold: int,
|
|
1202
1212
|
method: str = 'absolute') -> np.ndarray:
|
|
1203
1213
|
|
|
1214
|
+
|
|
1204
1215
|
"""
|
|
1205
1216
|
Computes the difference between two images using the specified method and applies a threshold to produce a binary image.
|
|
1206
1217
|
|
|
@@ -1532,6 +1543,10 @@ class ImageMixin(object):
|
|
|
1532
1543
|
of channels, they are converted to greyscale before computing the SSI. If the images are multi-channel (e.g., RGB),
|
|
1533
1544
|
the SSI is computed for each channel.
|
|
1534
1545
|
|
|
1546
|
+
.. image:: _static/img/structural_similarity_index.webp
|
|
1547
|
+
:width: 700
|
|
1548
|
+
:align: center
|
|
1549
|
+
|
|
1535
1550
|
.. seealso::
|
|
1536
1551
|
For matrix SSI of image stack, see :func:`simba.mixins.image_mixin.ImageMixin.structural_similarity_matrix`
|
|
1537
1552
|
for time-series based comparison, see :func:`simba.mixins.image_mixin.ImageMixin.sliding_structural_similarity_index`
|
|
@@ -1546,8 +1561,8 @@ class ImageMixin(object):
|
|
|
1546
1561
|
check_if_valid_img(data=img_2, source=f'{ImageMixin.structural_similarity_index.__name__} img_2')
|
|
1547
1562
|
multichannel = False
|
|
1548
1563
|
if img_1.ndim != img_2.ndim:
|
|
1549
|
-
img_1 = cv2.cvtColor(img_1, cv2.COLOR_BGR2GRAY)
|
|
1550
|
-
img_2 = cv2.cvtColor(img_2, cv2.COLOR_BGR2GRAY)
|
|
1564
|
+
if img_1.ndim == 3: img_1 = cv2.cvtColor(img_1, cv2.COLOR_BGR2GRAY)
|
|
1565
|
+
if img_2.ndim == 3: img_2 = cv2.cvtColor(img_2, cv2.COLOR_BGR2GRAY)
|
|
1551
1566
|
if img_1.ndim > 2: multichannel = True
|
|
1552
1567
|
return abs(structural_similarity(im1=img_1.astype(np.uint8), im2=img_2.astype(np.uint8), multichannel=multichannel))
|
|
1553
1568
|
|
|
@@ -1650,6 +1665,10 @@ class ImageMixin(object):
|
|
|
1650
1665
|
|
|
1651
1666
|
The NCC measures the similarity between two images by calculating the correlation coefficient of their pixel values. The output value ranges from -1 to 1, where 1 indicates perfect positive correlation, 0 indicates no correlation, and -1 indicates perfect negative correlation.
|
|
1652
1667
|
|
|
1668
|
+
.. image:: _static/img/cross_correlation_similarity.webp
|
|
1669
|
+
:width: 700
|
|
1670
|
+
:align: center
|
|
1671
|
+
|
|
1653
1672
|
.. seealso::
|
|
1654
1673
|
For time-series based NCC comparisons, see :func:`simba.mixins.image_mixin.ImageMixin.sliding_cross_correlation_similarity`
|
|
1655
1674
|
For matrix based NCC comparisons, see :func:`simba.mixins.image_mixin.ImageMixin.cross_correlation_matrix`
|
|
@@ -88,11 +88,18 @@ class TimeseriesFeatureMixin(object):
|
|
|
88
88
|
divided by the mobility.
|
|
89
89
|
:rtype:
|
|
90
90
|
|
|
91
|
+
.. image:: _static/img/hjort_parameters.webp
|
|
92
|
+
:width: 600
|
|
93
|
+
:align: center
|
|
94
|
+
|
|
95
|
+
.. note::
|
|
96
|
+
A constant first derivative (e.g. a perfectly linear ramp) yields ``var(dx) == 0``; in that
|
|
97
|
+
degenerate case the function returns ``(0, 0, 0)`` to avoid division by zero.
|
|
91
98
|
|
|
92
99
|
:example:
|
|
93
|
-
>>> data = np.array([1.0, 2.0,
|
|
100
|
+
>>> data = np.array([1.0, 3.0, 2.0, 6.0, 4.0, 5.0], dtype=np.float32)
|
|
94
101
|
>>> TimeseriesFeatureMixin().hjort_parameters(data)
|
|
95
|
-
>>> (2.
|
|
102
|
+
>>> (2.9166667, 1.2503713, 1.6617813) # (activity, mobility, complexity)
|
|
96
103
|
|
|
97
104
|
:math:`mobility = \sqrt{\\frac{dx_{var}}{x_{var}}}`
|
|
98
105
|
|
|
@@ -138,17 +145,17 @@ class TimeseriesFeatureMixin(object):
|
|
|
138
145
|
ddx = np.diff(np.ascontiguousarray(dx))
|
|
139
146
|
x_var, dx_var = np.var(sample), np.var(dx)
|
|
140
147
|
if (x_var <= 0) or (dx_var <= 0):
|
|
141
|
-
results[0, r
|
|
142
|
-
results[1, r
|
|
143
|
-
results[2, r
|
|
148
|
+
results[0, r - 1, i] = 0
|
|
149
|
+
results[1, r - 1, i] = 0
|
|
150
|
+
results[2, r - 1, i] = 0
|
|
144
151
|
else:
|
|
145
152
|
ddx_var = np.var(ddx)
|
|
146
153
|
mobility = np.sqrt(dx_var / x_var)
|
|
147
154
|
complexity = np.sqrt(ddx_var / dx_var) / mobility
|
|
148
155
|
activity = np.var(sample)
|
|
149
|
-
results[0, r
|
|
150
|
-
results[1, r
|
|
151
|
-
results[2, r
|
|
156
|
+
results[0, r - 1, i] = mobility
|
|
157
|
+
results[1, r - 1, i] = complexity
|
|
158
|
+
results[2, r - 1, i] = activity
|
|
152
159
|
|
|
153
160
|
return results.astype(np.float32)
|
|
154
161
|
|
|
@@ -749,6 +756,10 @@ class TimeseriesFeatureMixin(object):
|
|
|
749
756
|
:math:`PE` is the permutation entropy.
|
|
750
757
|
:math:`p_i` is the probability of each unique order pattern.
|
|
751
758
|
|
|
759
|
+
.. image:: _static/img/permutation_entropy.webp
|
|
760
|
+
:width: 600
|
|
761
|
+
:align: center
|
|
762
|
+
|
|
752
763
|
:param numpy.ndarray data: The time series data for which permutation entropy is calculated.
|
|
753
764
|
:param int dimension: It specifies the length of the order patterns to be considered.
|
|
754
765
|
:param int delay: Time delay between elements in an order pattern.
|
|
@@ -1443,6 +1454,10 @@ class TimeseriesFeatureMixin(object):
|
|
|
1443
1454
|
- spike_vals (List[np.ndarray]): A list of 1D arrays, each containing the values of the data points within a detected spike.
|
|
1444
1455
|
- spike_dict (Dict[int, Dict[str, float]]): A dictionary where the keys are spike indices, and the values are dictionaries containing spike characteristics including 'amplitude' (spike amplitude), 'fwhm' (FWHM), and 'half_width' (half-width).
|
|
1445
1456
|
|
|
1457
|
+
.. image:: _static/img/spike_finder.webp
|
|
1458
|
+
:width: 600
|
|
1459
|
+
:align: center
|
|
1460
|
+
|
|
1446
1461
|
.. note::
|
|
1447
1462
|
- The function uses the Numba JIT (Just-In-Time) compilation for optimized performance. Without fastmath=True there is no runtime improvement over standard numpy.
|
|
1448
1463
|
|
|
@@ -1465,7 +1480,7 @@ class TimeseriesFeatureMixin(object):
|
|
|
1465
1480
|
for i in prange(len(spike_idx)):
|
|
1466
1481
|
spike_data = data[spike_idx[i]]
|
|
1467
1482
|
spike_amplitude = np.max(spike_data) - baseline
|
|
1468
|
-
half_width_idx = np.argwhere(spike_data > spike_amplitude / 2).flatten()
|
|
1483
|
+
half_width_idx = np.argwhere(spike_data > baseline + spike_amplitude / 2).flatten()
|
|
1469
1484
|
spike_dict[i] = {
|
|
1470
1485
|
"amplitude": np.max(spike_data) - baseline,
|
|
1471
1486
|
"fwhm": (half_width_idx[-1] - half_width_idx[0]) / sample_rate,
|
|
@@ -1986,6 +2001,10 @@ class TimeseriesFeatureMixin(object):
|
|
|
1986
2001
|
where :math:`N` is the number of points, :math:`x_i` represents the position at each point,
|
|
1987
2002
|
and :math:`\frac{d^3 x_i}{dt^3}` is the third derivative of the position with respect to time.
|
|
1988
2003
|
|
|
2004
|
+
.. image:: _static/img/mean_squared_jerk.webp
|
|
2005
|
+
:width: 600
|
|
2006
|
+
:align: center
|
|
2007
|
+
|
|
1989
2008
|
:param np.ndarray x: A 2D array where each row represents the [x, y] position at a time step.
|
|
1990
2009
|
:param float time_step: The time difference between successive positions in seconds.
|
|
1991
2010
|
:param float sample_rate: The rate at which the positions are sampled (samples per second).
|
|
@@ -2022,7 +2041,7 @@ class TimeseriesFeatureMixin(object):
|
|
|
2022
2041
|
:param np.ndarray x: An (N, M) array representing the path of an object, where N is the number of samples (time steps) and M is the number of spatial dimensions (e.g., 2 for 2D motion). Each row represents the position at a time step.
|
|
2023
2042
|
:param float window_size: The size of each sliding window in seconds. This defines the interval over which the mean squared jerk is calculated.
|
|
2024
2043
|
:param float sample_rate: The sampling rate in Hz (samples per second), which is used to convert the window size from seconds to frames.
|
|
2025
|
-
:return: A 1D array of length N, containing the mean squared jerk for each sliding window that ends at each time step. The first `frame_step` values
|
|
2044
|
+
:return: A 1D array of length N, containing the mean squared jerk for each sliding window that ends at each time step. The first `frame_step` values are set to ``-1.0``, as they do not have enough preceding data points to compute jerk over the full window.
|
|
2026
2045
|
:rtype: np.ndarray
|
|
2027
2046
|
|
|
2028
2047
|
:example:
|
|
@@ -2041,13 +2060,13 @@ class TimeseriesFeatureMixin(object):
|
|
|
2041
2060
|
V = np.diff(x, axis=0)
|
|
2042
2061
|
A = np.diff(V, axis=0)
|
|
2043
2062
|
frame_step = int(max(1.0, window_size * sample_rate))
|
|
2044
|
-
results = np.full(x.shape[0], fill_value
|
|
2063
|
+
results = np.full(x.shape[0], fill_value=-1.0, dtype=np.float64)
|
|
2045
2064
|
for r in range(frame_step, x.shape[0]):
|
|
2046
2065
|
l = r - frame_step
|
|
2047
2066
|
V_a = A[l:r, :]
|
|
2048
2067
|
jerks = np.diff(V_a, axis=0)
|
|
2049
2068
|
if jerks.shape[0] == 0:
|
|
2050
|
-
results[r] = 0
|
|
2069
|
+
results[r] = 0.0
|
|
2051
2070
|
else:
|
|
2052
2071
|
results[r] = np.sum(jerks ** 2) / jerks.shape[0]
|
|
2053
2072
|
|
|
@@ -2541,12 +2560,16 @@ class TimeseriesFeatureMixin(object):
|
|
|
2541
2560
|
:return: The average kinetic energy of the animal.
|
|
2542
2561
|
:rtype: float
|
|
2543
2562
|
|
|
2563
|
+
.. image:: _static/img/avg_kinetic_energy.webp
|
|
2564
|
+
:width: 600
|
|
2565
|
+
:align: center
|
|
2566
|
+
|
|
2544
2567
|
:example:
|
|
2545
2568
|
>>> x = np.random.randint(0, 500, (200, 2))
|
|
2546
2569
|
>>> TimeseriesFeatureMixin.avg_kinetic_energy(x=x, mass=35, sample_rate=30)
|
|
2547
2570
|
"""
|
|
2548
2571
|
|
|
2549
|
-
delta_t =
|
|
2572
|
+
delta_t = 1 / sample_rate
|
|
2550
2573
|
vx, vy = np.gradient(x[:, 0], delta_t), np.gradient(x[:, 1], delta_t)
|
|
2551
2574
|
speed = np.sqrt(vx ** 2 + vy ** 2)
|
|
2552
2575
|
kinetic_energy = 0.5 * mass * speed ** 2
|
|
@@ -2580,7 +2603,7 @@ class TimeseriesFeatureMixin(object):
|
|
|
2580
2603
|
|
|
2581
2604
|
time_window_frms = np.ceil(sample_rate * time_window)
|
|
2582
2605
|
results = np.full(shape=(x.shape[0]), fill_value=-1.0, dtype=np.float32)
|
|
2583
|
-
delta_t =
|
|
2606
|
+
delta_t = 1 / sample_rate
|
|
2584
2607
|
for r in range(time_window_frms, x.shape[0] + 1):
|
|
2585
2608
|
l = r - time_window_frms
|
|
2586
2609
|
keypoint_sample, mass_sample = x[l:r], mass[l:r]
|
|
@@ -2602,6 +2625,10 @@ class TimeseriesFeatureMixin(object):
|
|
|
2602
2625
|
:param float sample_rate: Sampling rate in FPS.
|
|
2603
2626
|
:returns: Magnitude of the momentum.
|
|
2604
2627
|
:rtype: float
|
|
2628
|
+
|
|
2629
|
+
.. image:: _static/img/momentum_magnitude.webp
|
|
2630
|
+
:width: 600
|
|
2631
|
+
:align: center
|
|
2605
2632
|
"""
|
|
2606
2633
|
|
|
2607
2634
|
check_valid_array(data=x, source=f'{TimeseriesFeatureMixin.momentum_magnitude.__name__} x', accepted_ndims=(2,), accepted_axis_1_shape=[2, ], accepted_dtypes=Formats.NUMERIC_DTYPES.value)
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
__author__ = "Simon Nilsson; sronilsson@gmail.com"
|
|
2
|
+
|
|
3
|
+
import json
|
|
4
|
+
import os
|
|
5
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
6
|
+
|
|
7
|
+
import h5py
|
|
8
|
+
import numpy as np
|
|
9
|
+
import pandas as pd
|
|
10
|
+
|
|
11
|
+
from simba.data_processors.interpolate import Interpolate
|
|
12
|
+
from simba.data_processors.smoothing import Smoothing
|
|
13
|
+
from simba.mixins.config_reader import ConfigReader
|
|
14
|
+
from simba.mixins.pose_importer_mixin import PoseImporterMixin
|
|
15
|
+
from simba.utils.checks import (check_file_exist_and_readable,
|
|
16
|
+
check_if_dir_exists,
|
|
17
|
+
check_if_keys_exist_in_dict, check_int,
|
|
18
|
+
check_str, check_valid_lst)
|
|
19
|
+
from simba.utils.enums import Methods, TagNames
|
|
20
|
+
from simba.utils.errors import CountError
|
|
21
|
+
from simba.utils.printing import (SimbaTimer, log_event, stdout_information,
|
|
22
|
+
stdout_success)
|
|
23
|
+
from simba.utils.read_write import (clean_sleap_file_name,
|
|
24
|
+
find_all_videos_in_project, get_fn_ext,
|
|
25
|
+
get_video_meta_data, write_df)
|
|
26
|
+
|
|
27
|
+
FRAME_IDX_COL, INST_START_COL, INST_END_COL = 2, 3, 4
|
|
28
|
+
INSTANCE_TRACK_COL = 4
|
|
29
|
+
POINT_X_COL, POINT_Y_COL, POINT_SCORE_COL = 0, 1, 4
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def _field(arr: np.ndarray, name: str, pos: int) -> np.ndarray:
|
|
33
|
+
"""Return a column of a (possibly structured) numpy array by field name, falling back to positional index."""
|
|
34
|
+
names = arr.dtype.names
|
|
35
|
+
if names is not None and name in names:
|
|
36
|
+
return np.asarray(arr[name])
|
|
37
|
+
if names is not None:
|
|
38
|
+
return np.asarray(arr[names[pos]])
|
|
39
|
+
return np.asarray(arr[:, pos])
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class SLEAPImporterSLP(ConfigReader, PoseImporterMixin):
|
|
43
|
+
"""
|
|
44
|
+
Class for importing SLEAP pose-estimation data (``.slp`` files) into a SimBA project.
|
|
45
|
+
|
|
46
|
+
:param str project_path: path to SimBA project config file in Configparser format.
|
|
47
|
+
:param str data_folder: Path to folder containing SLEAP data in ``.slp`` format.
|
|
48
|
+
:param List[str] id_lst: Animal names. This will be ignored in one animal projects and default to ``Animal_1``.
|
|
49
|
+
:param Optional[Dict[str, str]] interpolation_settings: Dict defining the type and method to use to perform interpolation e.g. {'type': 'animals', 'method': 'linear'}.
|
|
50
|
+
:param Optional[Dict[str, Union[str, int]]] smoothing_settings: Dictionary defining the pose estimation smoothing method e.g. {'time_window': 500, 'method': 'gaussian'}.
|
|
51
|
+
|
|
52
|
+
:example:
|
|
53
|
+
>>> slp_importer = SLEAPImporterSLP(project_path="MyConfigPath", data_folder=r'MySLPDataFolder', id_lst=['Mouse_1', 'Mouse_2'], interpolation_settings={'type': 'animals', 'method': 'linear'}, smoothing_settings={'time_window': 200, 'method': 'savitzky-golay'})
|
|
54
|
+
>>> slp_importer.run()
|
|
55
|
+
|
|
56
|
+
References
|
|
57
|
+
----------
|
|
58
|
+
.. [1] Pereira et al., SLEAP: A deep learning system for multi-animal pose tracking, `Nature Methods`, 2022.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
def __init__(self,
|
|
62
|
+
project_path: Union[str, os.PathLike],
|
|
63
|
+
data_folder: Union[str, os.PathLike],
|
|
64
|
+
id_lst: List[str],
|
|
65
|
+
interpolation_settings: Optional[Dict[str, str]] = None,
|
|
66
|
+
smoothing_settings: Optional[Dict[str, Any]] = None):
|
|
67
|
+
|
|
68
|
+
ConfigReader.__init__(self, config_path=project_path, read_video_info=False)
|
|
69
|
+
PoseImporterMixin.__init__(self)
|
|
70
|
+
log_event(logger_name=str(__class__.__name__), log_type=TagNames.CLASS_INIT.value, msg=self.create_log_msg_from_init_args(locals=locals()))
|
|
71
|
+
check_file_exist_and_readable(file_path=project_path)
|
|
72
|
+
check_if_dir_exists(in_dir=data_folder, source=self.__class__.__name__)
|
|
73
|
+
check_valid_lst(data=id_lst, source=f'{self.__class__.__name__} id_lst', valid_dtypes=(str,), min_len=1)
|
|
74
|
+
if interpolation_settings is not None:
|
|
75
|
+
check_if_keys_exist_in_dict(data=interpolation_settings, key=['method', 'type'], name=f'{self.__class__.__name__} interpolation_settings')
|
|
76
|
+
check_str(name=f'{self.__class__.__name__} interpolation_settings type', value=interpolation_settings['type'], options=('body-parts', 'animals'))
|
|
77
|
+
check_str(name=f'{self.__class__.__name__} interpolation_settings method', value=interpolation_settings['method'], options=('linear', 'quadratic', 'nearest'))
|
|
78
|
+
if smoothing_settings is not None:
|
|
79
|
+
check_if_keys_exist_in_dict(data=smoothing_settings, key=['method', 'time_window'], name=f'{self.__class__.__name__} smoothing_settings')
|
|
80
|
+
check_str(name=f'{self.__class__.__name__} smoothing_settings method', value=smoothing_settings['method'], options=('savitzky-golay', 'gaussian'))
|
|
81
|
+
check_int(name=f'{self.__class__.__name__} smoothing_settings time_window', value=smoothing_settings['time_window'], min_value=1)
|
|
82
|
+
|
|
83
|
+
self.interpolation_settings, self.smoothing_settings = interpolation_settings, smoothing_settings
|
|
84
|
+
self.data_folder, self.id_lst = data_folder, id_lst
|
|
85
|
+
self.import_log_path = os.path.join(self.logs_path, f"data_import_log_{self.datetime}.csv")
|
|
86
|
+
self.video_paths = find_all_videos_in_project(videos_dir=self.video_dir, raise_error=True if len(id_lst) > 1 else False)
|
|
87
|
+
self.input_data_paths = self.find_data_files(dir=self.data_folder, extensions=[".slp"])
|
|
88
|
+
if self.pose_setting is Methods.USER_DEFINED.value:
|
|
89
|
+
self.__update_config_animal_cnt()
|
|
90
|
+
if self.animal_cnt > 1:
|
|
91
|
+
self.data_and_videos_lk = self.link_video_paths_to_data_paths(data_paths=self.input_data_paths, video_paths=self.video_paths, filename_cleaning_func=clean_sleap_file_name)
|
|
92
|
+
self.check_multi_animal_status()
|
|
93
|
+
self.animal_bp_dict = self.create_body_part_dictionary(self.multi_animal_status, self.id_lst, self.animal_cnt, self.x_cols, self.y_cols, self.p_cols, self.clr_lst)
|
|
94
|
+
if self.pose_setting is Methods.USER_DEFINED.value:
|
|
95
|
+
self.update_bp_headers_file(update_bp_headers=True)
|
|
96
|
+
else:
|
|
97
|
+
self.data_and_videos_lk = dict([(get_fn_ext(file_path)[1], {"DATA": file_path, "VIDEO": None}) for file_path in self.input_data_paths])
|
|
98
|
+
stdout_information(msg=f"Importing {len(list(self.data_and_videos_lk.keys()))} file(s)...", source=self.__class__.__name__)
|
|
99
|
+
|
|
100
|
+
@staticmethod
|
|
101
|
+
def _read_metadata(file_path: Union[str, os.PathLike]) -> dict:
|
|
102
|
+
"""Pull the JSON ``metadata`` blob (skeleton / node order) out of an .slp file."""
|
|
103
|
+
result = {}
|
|
104
|
+
|
|
105
|
+
def _visitor(name, obj):
|
|
106
|
+
if name == "metadata":
|
|
107
|
+
attrs = list(obj.attrs.items())
|
|
108
|
+
result["meta"] = dict(json.loads(attrs[1][1].decode("utf-8")))
|
|
109
|
+
|
|
110
|
+
with h5py.File(file_path, "r") as f:
|
|
111
|
+
f.visititems(_visitor)
|
|
112
|
+
return result["meta"]
|
|
113
|
+
|
|
114
|
+
def _slp_to_arrays(self, file_path: Union[str, os.PathLike]) -> Tuple[np.ndarray, np.ndarray, List[str]]:
|
|
115
|
+
"""
|
|
116
|
+
Read an .slp file and return:
|
|
117
|
+
* ``data`` : (n_instances, n_nodes * 3) float64 array of interleaved [x, y, p].
|
|
118
|
+
* ``idx`` : (n_instances, 2) array of [track_id, frame_idx].
|
|
119
|
+
* ``ordered_bps`` : body-part names in skeleton node order.
|
|
120
|
+
"""
|
|
121
|
+
meta = self._read_metadata(file_path)
|
|
122
|
+
bp_names = [bp["name"] for bp in meta["nodes"]]
|
|
123
|
+
ordered_ids = [n["id"] for n in meta["skeletons"][0]["nodes"]]
|
|
124
|
+
ordered_bps = [bp_names[i] for i in ordered_ids]
|
|
125
|
+
n_nodes = len(ordered_bps)
|
|
126
|
+
|
|
127
|
+
with h5py.File(file_path, "r") as f:
|
|
128
|
+
frames = f["frames"][:]
|
|
129
|
+
instances = f["instances"][:]
|
|
130
|
+
pred_points = f["pred_points"][:]
|
|
131
|
+
|
|
132
|
+
n_instances = instances.shape[0]
|
|
133
|
+
expected_points = n_instances * n_nodes
|
|
134
|
+
if pred_points.shape[0] != expected_points:
|
|
135
|
+
raise CountError(msg=f"SLP file {file_path}: expected {expected_points} predicted points "
|
|
136
|
+
f"({n_instances} instances x {n_nodes} nodes) but found {pred_points.shape[0]}.",
|
|
137
|
+
source=self.__class__.__name__)
|
|
138
|
+
|
|
139
|
+
frame_idx_vals = _field(frames, "frame_idx", FRAME_IDX_COL).astype(np.int64)
|
|
140
|
+
inst_start = _field(frames, "instance_id_start", INST_START_COL).astype(np.int64)
|
|
141
|
+
inst_end = _field(frames, "instance_id_end", INST_END_COL).astype(np.int64)
|
|
142
|
+
instance_frame_idx = np.repeat(frame_idx_vals, inst_end - inst_start)
|
|
143
|
+
|
|
144
|
+
track_ids = _field(instances, "track", INSTANCE_TRACK_COL).astype(np.int64)
|
|
145
|
+
|
|
146
|
+
px = _field(pred_points, "x", POINT_X_COL).astype(np.float64).reshape(n_instances, n_nodes)
|
|
147
|
+
py = _field(pred_points, "y", POINT_Y_COL).astype(np.float64).reshape(n_instances, n_nodes)
|
|
148
|
+
pp = _field(pred_points, "score", POINT_SCORE_COL).astype(np.float64).reshape(n_instances, n_nodes)
|
|
149
|
+
|
|
150
|
+
data = np.empty((n_instances, n_nodes * 3), dtype=np.float64)
|
|
151
|
+
data[:, 0::3] = px
|
|
152
|
+
data[:, 1::3] = py
|
|
153
|
+
data[:, 2::3] = pp
|
|
154
|
+
|
|
155
|
+
idx = np.column_stack([track_ids, instance_frame_idx])
|
|
156
|
+
return data, idx, ordered_bps
|
|
157
|
+
|
|
158
|
+
def run(self):
|
|
159
|
+
for file_cnt, (video_name, video_data) in enumerate(self.data_and_videos_lk.items()):
|
|
160
|
+
output_filename = clean_sleap_file_name(filename=video_name)
|
|
161
|
+
stdout_information(msg=f"Importing {output_filename}...", source=self.__class__.__name__)
|
|
162
|
+
video_timer = SimbaTimer(start=True)
|
|
163
|
+
self.video_name = video_name
|
|
164
|
+
self.save_path = os.path.join(self.input_csv_dir, f"{output_filename}.{self.file_type}")
|
|
165
|
+
|
|
166
|
+
data, idx, _ = self._slp_to_arrays(file_path=video_data["DATA"])
|
|
167
|
+
|
|
168
|
+
if self.animal_cnt > 1:
|
|
169
|
+
self.data_df = pd.DataFrame(self.transpose_multi_animal_table(data=data, idx=idx, animal_cnt=self.animal_cnt))
|
|
170
|
+
else:
|
|
171
|
+
self.data_df = pd.DataFrame(data).set_index(idx[:, 1]).sort_index()
|
|
172
|
+
self.data_df = self.data_df.reindex(range(0, int(self.data_df.index[-1]) + 1), fill_value=0)
|
|
173
|
+
|
|
174
|
+
if len(self.bp_headers) != len(self.data_df.columns):
|
|
175
|
+
raise CountError(msg=f"The SimBA project expects {len(self.bp_headers)} data columns, but the reshaped "
|
|
176
|
+
f"SLEAP data at {video_data['DATA']} produced {len(self.data_df.columns)} columns. "
|
|
177
|
+
f"Make sure you have specified the correct number of animals and body-parts in your project.",
|
|
178
|
+
source=self.__class__.__name__)
|
|
179
|
+
self.data_df.columns = self.bp_headers
|
|
180
|
+
|
|
181
|
+
if self.animal_cnt > 1:
|
|
182
|
+
self.initialize_multi_animal_ui(animal_bp_dict=self.animal_bp_dict, video_info=get_video_meta_data(video_data["VIDEO"]), data_df=self.data_df, video_path=video_data["VIDEO"])
|
|
183
|
+
self.multianimal_identification()
|
|
184
|
+
else:
|
|
185
|
+
self.out_df = self.insert_multi_idx_columns(df=self.data_df.fillna(0))
|
|
186
|
+
|
|
187
|
+
write_df(df=self.out_df, file_type=self.file_type, save_path=self.save_path, multi_idx_header=True)
|
|
188
|
+
if self.interpolation_settings is not None:
|
|
189
|
+
Interpolate(config_path=self.config_path, data_path=self.save_path, type=self.interpolation_settings['type'], method=self.interpolation_settings['method'], multi_index_df_headers=True, copy_originals=False).run()
|
|
190
|
+
if self.smoothing_settings is not None:
|
|
191
|
+
Smoothing(config_path=self.config_path, data_path=self.save_path, time_window=self.smoothing_settings['time_window'], method=self.smoothing_settings['method'], multi_index_df_headers=True, copy_originals=False).run()
|
|
192
|
+
video_timer.stop_timer()
|
|
193
|
+
stdout_success(msg=f"Video {output_filename} data imported...", elapsed_time=video_timer.elapsed_time_str, source=self.__class__.__name__)
|
|
194
|
+
self.timer.stop_timer()
|
|
195
|
+
stdout_success(msg=f"All SLEAP SLP data files imported to {self.input_csv_dir} directory", elapsed_time=self.timer.elapsed_time_str, source=self.__class__.__name__)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: simba-uw-tf-dev
|
|
3
|
-
Version: 5.4.
|
|
3
|
+
Version: 5.4.2
|
|
4
4
|
Summary: Toolkit for computer classification and analysis of behaviors in experimental animals
|
|
5
5
|
Home-page: https://github.com/sgoldenlab/simba
|
|
6
6
|
Author: Simon Nilsson, Jia Jie Choong, Sophia Hwang
|