gitextract_oe5oij8h/ ├── .claude/ │ ├── commands/ │ │ ├── coverage.md │ │ ├── lint.md │ │ └── pr-description.md │ └── skills/ │ ├── investigation/ │ │ └── SKILL.md │ ├── pr/ │ │ └── skill.md │ ├── qt-testing/ │ │ ├── SKILL.md │ │ └── scripts/ │ │ └── qt_capture.py │ └── sleap-support/ │ ├── SKILL.md │ ├── gh-commands.md │ ├── response-templates.md │ └── troubleshooting-patterns.md ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── config.yml │ └── workflows/ │ ├── build.yml │ ├── ci.yml │ ├── docs.yml │ └── pr-preview.yml ├── .gitignore ├── CLAUDE.md ├── LICENSE ├── MANIFEST.in ├── README.md ├── codecov.yml ├── docs/ │ ├── assets/ │ │ └── stylesheets/ │ │ └── extra.css │ ├── code-of-conduct.md │ ├── contribute.md │ ├── guides/ │ │ ├── creating-a-custom-training-profile.md │ │ ├── guides-overview.md │ │ ├── importing-predictions-for-labeling.md │ │ ├── instance-size-distribution.md │ │ ├── label-quality-control.md │ │ ├── migrating-to-sleap-1-5.md │ │ ├── run-training-and-inference-on-colab.md │ │ ├── running-sleap-remotely.md │ │ └── tracking-and-proofreading.md │ ├── help.md │ ├── index.md │ ├── installation.md │ ├── learnings/ │ │ ├── gui.md │ │ ├── index.md │ │ ├── main-mistakes-by-tracking.md │ │ ├── prediction-assisted-labeling.md │ │ ├── skeleton-design.md │ │ └── system-overview.md │ ├── notebooks/ │ │ ├── Analysis_examples.ipynb │ │ ├── Data_structures.ipynb │ │ ├── Interactive_and_resumable_training.ipynb │ │ ├── Model_evaluation.ipynb │ │ ├── Post_inference_tracking.ipynb │ │ ├── SLEAP_Tutorial_at_Cosyne_2024_Using_exported_data.ipynb │ │ ├── Training_and_inference_on_an_example_dataset.ipynb │ │ ├── Training_and_inference_using_Google_Drive.ipynb │ │ ├── notebooks-overview.md │ │ └── sleap_io_idtracker_IDs.ipynb │ ├── overview.md │ ├── reference/ │ │ ├── command-line-interfaces.md │ │ └── datasets.md │ └── tutorial/ │ ├── correcting-predictions.md │ ├── exporting-the-results.md │ ├── i-m-done-sleaping-now-what.md │ ├── importing-data.md │ ├── initial-labeling.md │ ├── overview.md │ ├── proofreading.md │ ├── setup.md │ ├── tracking-new-data.md │ └── training-a-model.md ├── hooks/ │ └── copy_source_markdown.py ├── mkdocs.yml ├── pyproject.toml ├── scripts/ │ ├── gen_changelog.py │ ├── gen_ref_pages.py │ └── get_changed_docs_urls.py ├── sleap/ │ ├── __init__.py │ ├── cli.py │ ├── config/ │ │ ├── colors.yaml │ │ ├── frame_range_form.yaml │ │ ├── head_type_form.yaml │ │ ├── labeled_clip_form.yaml │ │ ├── path_prefixes.yaml │ │ ├── pipeline_form.yaml │ │ ├── shortcuts.yaml │ │ ├── suggestions.yaml │ │ ├── training_editor_form.yaml │ │ └── video_clip_form.yaml │ ├── diagnostic.py │ ├── gui/ │ │ ├── __init__.py │ │ ├── app.py │ │ ├── color.py │ │ ├── commands.py │ │ ├── config_utils.py │ │ ├── dataviews.py │ │ ├── dialogs/ │ │ │ ├── __init__.py │ │ │ ├── delete.py │ │ │ ├── export_clip.py │ │ │ ├── filedialog.py │ │ │ ├── formbuilder.py │ │ │ ├── frame_range.py │ │ │ ├── importvideos.py │ │ │ ├── merge.py │ │ │ ├── message.py │ │ │ ├── metrics.py │ │ │ ├── missingfiles.py │ │ │ ├── qc.py │ │ │ ├── query.py │ │ │ ├── render_clip.py │ │ │ ├── shortcuts.py │ │ │ ├── size_distribution.py │ │ │ └── update_checker.py │ │ ├── learning/ │ │ │ ├── __init__.py │ │ │ ├── configs.py │ │ │ ├── dialog.py │ │ │ ├── load_legacy_metrics.py │ │ │ ├── main_tab.py │ │ │ ├── receptivefield.py │ │ │ ├── runners.py │ │ │ ├── size.py │ │ │ ├── unet_utils.py │ │ │ └── wandb_utils.py │ │ ├── overlays/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── confmaps.py │ │ │ ├── instance.py │ │ │ ├── pafs.py │ │ │ └── tracks.py │ │ ├── shortcuts.py │ │ ├── state.py │ │ ├── suggestions.py │ │ ├── utils.py │ │ ├── web.py │ │ └── widgets/ │ │ ├── __init__.py │ │ ├── docks.py │ │ ├── frame_target_selector.py │ │ ├── imagedir.py │ │ ├── monitor.py │ │ ├── mpl.py │ │ ├── multicheck.py │ │ ├── qc.py │ │ ├── rendering_preview.py │ │ ├── size_distribution.py │ │ ├── slider.py │ │ ├── video.py │ │ ├── video_worker.py │ │ └── views.py │ ├── info/ │ │ ├── __init__.py │ │ ├── align.py │ │ ├── feature_suggestions.py │ │ ├── labels.py │ │ ├── metrics.py │ │ ├── summary.py │ │ └── write_tracking_h5.py │ ├── io/ │ │ ├── __init__.py │ │ ├── convert.py │ │ ├── format/ │ │ │ ├── __init__.py │ │ │ ├── adaptor.py │ │ │ ├── csv.py │ │ │ ├── filehandle.py │ │ │ ├── genericjson.py │ │ │ └── sleap_analysis.py │ │ ├── pathutils.py │ │ └── visuals.py │ ├── legacy_cli_adaptors.py │ ├── message.py │ ├── nn_cli.py │ ├── prefs.py │ ├── qc/ │ │ ├── __init__.py │ │ ├── config.py │ │ ├── detector.py │ │ ├── features/ │ │ │ ├── __init__.py │ │ │ ├── baseline.py │ │ │ ├── reference.py │ │ │ ├── skeleton.py │ │ │ ├── structural.py │ │ │ └── visibility.py │ │ ├── frame_level.py │ │ ├── gmm.py │ │ └── results.py │ ├── rangelist.py │ ├── skeletons/ │ │ ├── bees.json │ │ ├── flies13.json │ │ ├── fly32.json │ │ ├── gerbils.json │ │ ├── mice_hc.json │ │ └── mice_of.json │ ├── sleap_io_adaptors/ │ │ ├── __init__.py │ │ ├── instance_utils.py │ │ ├── lf_labels_utils.py │ │ ├── skeleton_utils.py │ │ └── video_utils.py │ ├── system_info.py │ ├── training_profiles/ │ │ ├── baseline.centroid.yaml │ │ ├── baseline.multi_class_bottomup.yaml │ │ ├── baseline.multi_class_topdown.yaml │ │ ├── baseline_large_rf.bottomup.yaml │ │ ├── baseline_large_rf.single.yaml │ │ ├── baseline_large_rf.topdown.yaml │ │ ├── baseline_medium_rf.bottomup.yaml │ │ ├── baseline_medium_rf.single.yaml │ │ └── baseline_medium_rf.topdown.yaml │ ├── util.py │ └── version.py └── tests/ ├── __init__.py ├── conftest.py ├── data/ │ ├── alphatracker/ │ │ └── at_testdata.json │ ├── configs/ │ │ └── yaml/ │ │ ├── config_centroid_unet.yaml │ │ ├── config_multi_class_bottomup_unet.yaml │ │ ├── config_single_instance_unet.yaml │ │ └── minimal_instance_centroid_training_config.yaml │ ├── csv_format/ │ │ └── minimal_instance.000_centered_pair_low_quality.analysis.csv │ ├── dlc/ │ │ ├── labeled-data/ │ │ │ └── video/ │ │ │ ├── CollectedData_LM.csv │ │ │ ├── dlc_testdata.csv │ │ │ ├── dlc_testdata_v2.csv │ │ │ ├── madlc_testdata.csv │ │ │ ├── madlc_testdata_v2.csv │ │ │ ├── maudlc_testdata.csv │ │ │ └── maudlc_testdata_v2.csv │ │ └── madlc_230_config.yaml │ ├── dlc_multiple_datasets/ │ │ ├── video1/ │ │ │ └── dlc_dataset_1.csv │ │ └── video2/ │ │ └── dlc_dataset_2.csv │ ├── hdf5_format_v1/ │ │ ├── centered_pair_predictions.h5 │ │ ├── centered_pair_predictions.slp │ │ └── training.scale=0.50,sigma=10.h5 │ ├── json_format_v1/ │ │ └── centered_pair.json │ ├── json_format_v2/ │ │ ├── centered_pair_predictions.json │ │ └── minimal_instance.json │ ├── mat/ │ │ └── labels.mat │ ├── models/ │ │ ├── min_tracks_2node.UNet.bottomup_multiclass/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ └── training_config.json │ │ ├── min_tracks_2node.UNet.topdown_multiclass/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ └── training_config.json │ │ ├── minimal_instance.UNet.bottomup/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ ├── labels_gt.train.slp │ │ │ ├── labels_gt.val.slp │ │ │ ├── labels_pr.train.slp │ │ │ ├── labels_pr.val.slp │ │ │ ├── metrics.train.npz │ │ │ ├── metrics.val.npz │ │ │ ├── training_config.json │ │ │ └── training_log.csv │ │ ├── minimal_instance.UNet.centered_instance/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ ├── labels_gt.train.slp │ │ │ ├── labels_gt.val.slp │ │ │ ├── labels_pr.train.slp │ │ │ ├── labels_pr.val.slp │ │ │ ├── metrics.train.npz │ │ │ ├── metrics.val.npz │ │ │ ├── training_config.json │ │ │ └── training_log.csv │ │ ├── minimal_instance.UNet.centered_instance_with_scaling/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ └── training_config.json │ │ ├── minimal_instance.UNet.centroid/ │ │ │ ├── best_model.h5 │ │ │ ├── initial_config.json │ │ │ ├── labels_gt.train.slp │ │ │ ├── labels_gt.val.slp │ │ │ ├── labels_pr.train.slp │ │ │ ├── labels_pr.val.slp │ │ │ ├── metrics.train.npz │ │ │ ├── metrics.val.npz │ │ │ ├── training_config.json │ │ │ └── training_log.csv │ │ └── minimal_robot.UNet.single_instance/ │ │ ├── best_model.h5 │ │ ├── initial_config.json │ │ ├── labels_gt.train.slp │ │ ├── labels_gt.val.slp │ │ ├── training_config.json │ │ └── training_log.csv │ ├── siv_format_v1/ │ │ └── small_robot_siv.slp │ ├── siv_format_v2/ │ │ └── small_robot_siv_caching.slp │ ├── skeleton/ │ │ ├── fly_skeleton_legs.json │ │ ├── fly_skeleton_legs_pystate_dict.json │ │ └── leap_mat_format/ │ │ └── skeleton_legs.mat │ ├── slp_hdf5/ │ │ ├── centered_pair.slp │ │ ├── dance.mp4.labels.slp │ │ ├── minimal_instance.slp │ │ └── small_robot_minimal.slp │ ├── test_grid/ │ │ ├── grid_2x2.h5 │ │ ├── test_grid_labels.legacy.slp │ │ └── test_grid_labels.midpoint.slp │ ├── tracks/ │ │ ├── clip.2node.slp │ │ ├── clip.predictions.slp │ │ └── clip.slp │ └── training_profiles/ │ ├── set_a/ │ │ ├── default_centroids.json │ │ ├── default_confmaps.json │ │ └── default_pafs.json │ └── set_b/ │ └── test_confmaps.json ├── fixtures/ │ ├── datasets.py │ ├── instances.py │ ├── models.py │ ├── skeletons.py │ └── videos.py ├── gui/ │ ├── learning/ │ │ ├── __init__.py │ │ ├── test_cli_construction.py │ │ ├── test_config_bindings.py │ │ ├── test_edge_cases.py │ │ ├── test_integration.py │ │ ├── test_learning_dialog.py │ │ ├── test_main_tab.py │ │ └── test_size.py │ ├── test_app.py │ ├── test_color.py │ ├── test_commands.py │ ├── test_conf_maps_view.py │ ├── test_dataviews.py │ ├── test_delete.py │ ├── test_dialogs.py │ ├── test_filedialog.py │ ├── test_formbuilder.py │ ├── test_grid_system.py │ ├── test_imagedir_widget.py │ ├── test_import.py │ ├── test_merge.py │ ├── test_missingfiles.py │ ├── test_missingfiles_sequences.py │ ├── test_monitor.py │ ├── test_multicheck.py │ ├── test_quiver.py │ ├── test_render_clip.py │ ├── test_shortcuts.py │ ├── test_slider.py │ ├── test_state.py │ ├── test_suggestions.py │ ├── test_tracks.py │ ├── test_update_checker.py │ ├── test_video_player.py │ ├── test_web.py │ └── widgets/ │ ├── test_docks.py │ ├── test_frame_target_selector.py │ ├── test_qc.py │ └── test_size_distribution.py ├── info/ │ ├── test_align.py │ ├── test_feature_suggestions.py │ ├── test_h5.py │ ├── test_metrics.py │ └── test_summary.py ├── io/ │ ├── test_convert.py │ ├── test_pathutils.py │ └── test_visuals.py ├── qc/ │ ├── __init__.py │ ├── test_config.py │ ├── test_detector.py │ ├── test_features.py │ ├── test_frame_level.py │ ├── test_gmm.py │ └── test_results.py ├── sleap_io_adaptors/ │ ├── __init__.py │ └── test_lf_labels_utils.py ├── test_cli.py ├── test_predictions_to_instances.py ├── test_prefs.py ├── test_rangelist.py ├── test_sleap_io_adaptor.py ├── test_system_info.py ├── test_util.py └── test_version.py