dustrack
  • Home
  • DUSTrack GUI
    • Four-panel architecture (figure from the paper)
    • Current GUI (1.1.0)
  • GUI Keyboard Shortcuts
    • Annotation
    • Frame navigation
    • Layer
    • LK interpolation (event interval)
    • View
  • Key Design Concepts
    • Core Data Model
      • Annotations
      • Labels
      • Layers
      • Current Layer vs. Overlay Layer
      • Working with Layers
    • Workflow buttons and sidebar groups
      • Discarding unsaved annotations
      • Closing the window with unsaved changes
    • Video Frame Indexing
    • Frames of Interest
      • What are Frames of Interest?
      • Marking and Navigation
      • Workflow Example
    • Event Intervals for Optical Flow Interpolation
      • What are Event Intervals?
      • How It Works
      • The z-z-a Pattern
      • Overlay Layer as Boundary Conditions
      • Interpolating Multiple Labels
      • Design Rationale
    • Architecture: Building on datanavigator
      • Inheritance Hierarchy
  • Codebase organization
    • Reading guide
    • Entry points
      • __init__.py
      • cli.py
      • gui.py
      • dlcinterface.py
      • seed.py
      • batch.py
      • annotations.py
    • Core feature modules
      • Optical flow (LK pair)
      • DLC integration
    • Internal helpers (alphabetical)
      • _bundle.py
      • _bundle_swap.py
      • _close_guard.py
      • _config.py
      • _file_management.py
      • _image_enhance.py
      • _layer_names.py
      • _nav_widget.py
      • _open.py
      • _overlays.py
      • _preflight.py + _preflight_modal.py (pair)
      • _qt_styling.py
      • _seed_bundle_modal.py
      • _train_modal.py
      • _view_state.py
      • _workflow_gates.py
      • __version__.py
    • How a click flows through the codebase
      • Clicking Train DLC model
      • Clicking the multi-video ▶ arrow
    • Tests
  • API Reference
    • Entry point
      • open()
    • DUSTrack GUI
      • DUSTrack
        • DUSTrack.CORRECTIONS_LAYER_NAME
        • DUSTrack.__init__()
        • DUSTrack.discard_unsaved_annotations()
        • DUSTrack.freeze_plot_axes()
        • DUSTrack.unfreeze_plot_axes()
        • DUSTrack.create_dlc_project()
        • DUSTrack.process_dlc_project()
        • DUSTrack.process_with_lk()
        • DUSTrack.remove_current_layer()
        • DUSTrack.copy_existing_annotations_from_overlay()
        • DUSTrack.MANUAL_CORRECTIONS_SUFFIX
        • DUSTrack.apply_manual_corrections()
        • DUSTrack.save_annotation_as()
        • DUSTrack.swap_active_and_overlay()
        • DUSTrack.update()
        • DUSTrack.swap_to()
        • DUSTrack.swap_prev()
        • DUSTrack.swap_next()
        • DUSTrack.add_video()
        • DUSTrack.remove_video()
        • DUSTrack.replace_active_with()
        • DUSTrack.from_annotations()
        • DUSTrack.add_annotation_layers()
        • DUSTrack.remove_annotation_layer()
        • DUSTrack.set_key_bindings()
        • DUSTrack.refresh()
        • DUSTrack.add_events()
        • DUSTrack.ann
        • DUSTrack.set_image_background_color()
        • DUSTrack.update_annotation_visibility()
        • DUSTrack.update_frame_marker()
        • DUSTrack.copy_annotations_from_overlay()
        • DUSTrack.copy_current_annotation_from_overlay()
        • DUSTrack.copy_frames_of_interest_from_overlay()
        • DUSTrack.copy_frames_in_interval_from_overlay()
        • DUSTrack.add_annotation()
        • DUSTrack.remove_annotation()
        • DUSTrack.previous_frame_with_current_label()
        • DUSTrack.next_frame_with_current_label()
        • DUSTrack.previous_frame_with_any_label()
        • DUSTrack.next_frame_with_any_label()
        • DUSTrack.previous_frame_of_interest()
        • DUSTrack.next_frame_of_interest()
        • DUSTrack.previous_annotation_layer()
        • DUSTrack.next_annotation_layer()
        • DUSTrack.previous_annotation_overlay()
        • DUSTrack.next_annotation_overlay()
        • DUSTrack.previous_annotation_label()
        • DUSTrack.next_annotation_label()
        • DUSTrack.update_annotation_label_states()
        • DUSTrack.cycle_number_keys_behavior()
        • DUSTrack.increment_label_range()
        • DUSTrack.decrement_label_range()
        • DUSTrack.increment_if_unannotated()
        • DUSTrack.decrement_if_unannotated()
        • DUSTrack.save()
        • DUSTrack.select_label_with_mouse()
        • DUSTrack.place_label_with_mouse()
        • DUSTrack.go_to_frame()
        • DUSTrack.toggle_frame_of_interest()
        • DUSTrack.keep_overlapping_continuous_frames()
        • DUSTrack.keep_overlapping_frames()
        • DUSTrack.predict_labels_with_lucas_kanade()
        • DUSTrack.get_selected_interval()
        • DUSTrack.remove_labels_in_interval()
        • DUSTrack.decimate_annotations_in_interval()
        • DUSTrack.interpolate_with_lk()
        • DUSTrack.interpolate_with_lk_norstc()
        • DUSTrack.check_labels_with_lk()
        • DUSTrack.render()
    • Deep learning
      • DLCProject
        • DLCProject.__init__()
        • DLCProject.paths
        • DLCProject.config
        • DLCProject.name
        • DLCProject.trackers
        • DLCProject.label_names
        • DLCProject.trackermap
        • DLCProject.edit_config()
        • DLCProject.video_list
        • DLCProject.video_names
        • DLCProject.current_iteration
        • DLCProject.latest_iteration
        • DLCProject.latest_trained_iteration
        • DLCProject.all_iterations
        • DLCProject.all_snapshots
        • DLCProject.current_iteration_is_trained()
        • DLCProject.latest_iteration_is_trained()
        • DLCProject.iteration_is_trained()
        • DLCProject.increment_iteration()
        • DLCProject.add_videos()
        • DLCProject.copy_annotations()
        • DLCProject.extract_frames()
        • DLCProject.get_pose_cfg_file()
        • DLCProject.get_best_snapshot()
        • DLCProject.get_best_snapshot_test_error()
        • DLCProject.get_best_snapshot_idx()
        • DLCProject.initialize_weights()
        • DLCProject.create_training_dataset()
        • DLCProject.train()
        • DLCProject.evaluate()
        • DLCProject.analyze_videos()
        • DLCProject.process()
        • DLCProject.train_iteration()
        • DLCProject.annotate()
        • DLCProject.get_trajectories()
        • DLCProject.open()
    • Optical flow
      • gray()
      • lucas_kanade_2()
      • compute_sigmoid_weights()
      • lucas_kanade_rstc_2()
      • process_window()
      • lk_moving_average_filter()
    • Helpers
      • VideoAnnotation
        • VideoAnnotation.to_dlc()
        • VideoAnnotation.__init__()
        • VideoAnnotation.data
        • VideoAnnotation.from_multiple_files()
        • VideoAnnotation.load()
        • VideoAnnotation.n_frames
        • VideoAnnotation.n_annotations
        • VideoAnnotation.labels
        • VideoAnnotation.palette
        • VideoAnnotation.frames
        • VideoAnnotation.frames_overlapping
        • VideoAnnotation.plot_type
        • VideoAnnotation.get_frames()
        • VideoAnnotation.reload()
        • VideoAnnotation.save()
        • VideoAnnotation.to_json()
        • VideoAnnotation.sort_labels()
        • VideoAnnotation.sort_data()
        • VideoAnnotation.clip_trailing_empty_labels()
        • VideoAnnotation.remove_empty_labels()
        • VideoAnnotation.get_values_cv()
        • VideoAnnotation.add_at_frame()
        • VideoAnnotation.get_at_frame()
        • VideoAnnotation.to_dlc()
        • VideoAnnotation.to_trace()
        • VideoAnnotation.to_traces()
        • VideoAnnotation.to_signal()
        • VideoAnnotation.to_signals()
        • VideoAnnotation.to_pysampled()
        • VideoAnnotation.add_label()
        • VideoAnnotation.add()
        • VideoAnnotation.remove()
        • VideoAnnotation.setup_display_scatter()
        • VideoAnnotation.setup_display_trace()
        • VideoAnnotation.setup_display()
        • VideoAnnotation.clear_display()
        • VideoAnnotation.re_setup_display()
        • VideoAnnotation.invalidate_caches()
        • VideoAnnotation.update_display_scatter()
        • VideoAnnotation.update_display_trace()
        • VideoAnnotation.update_display()
        • VideoAnnotation.hide()
        • VideoAnnotation.show()
        • VideoAnnotation.show_trace()
        • VideoAnnotation.hide_trace()
        • VideoAnnotation.show_one_trace()
        • VideoAnnotation.set_alpha()
        • VideoAnnotation.set_plot_type()
        • VideoAnnotation.clip_labels()
        • VideoAnnotation.keep_overlapping_continuous_frames()
        • VideoAnnotation.keep_overlapping_frames()
        • VideoAnnotation.get_area()
        • VideoAnnotation.export_video()
      • VideoFileManager
        • VideoFileManager.__init__()
        • VideoFileManager.annotations
        • VideoFileManager.annotation_files
        • VideoFileManager.annotation_names
        • VideoFileManager.canonical_layer_name()
        • VideoFileManager.dlc_traces
        • VideoFileManager.dlc_trace_files
        • VideoFileManager.dlc_trace_names
        • VideoFileManager.labeled_data
        • VideoFileManager.get_new_json()
        • VideoFileManager.get_all_annotation_layers()
      • _extract_frames()
      • _extract_frames_decord()
      • get_annotation_file_name()
      • make_annotation_file_name()
      • merge_annotations_in_folder()
dustrack
  • Search


© Copyright 2025-present, Praneeth Namburi.

Built with Sphinx using a theme provided by Read the Docs.