Skip to content

cli: add download command for benchmark datasets #246

Description

@SkalskiP

Description

Add a trackers download CLI subcommand that lets users download benchmark datasets from a GCP bucket. Supports downloading full datasets or individual splits, with or without video frames. Datasets: MOT17, SportsMOT, SoccerNet Tracking, DenseTrack.

Proposed CLI interface

# List what's available
trackers download --list
# Download full dataset
trackers download mot17
# Download specific split, annotations only
trackers download mot17 --split train --annotations-only
# Custom output path
trackers download sportsmot --split val -o ./datasets

Tasks

  • Research and document the structure of each dataset (MOT17, SportsMOT, SoccerNet Tracking, DenseTrack): available splits, contents per split (frames, GT annotations, detections), directory layout.
  • Prepare zip files for each dataset/split/variant combination and upload them to a GCP bucket.
  • Create a dataset manifest (mapping dataset + split + variant to GCP URLs and metadata) inside the codebase.
  • Register the download subcommand in trackers/scripts/__main__.py.
  • Implement the --list flag to display available datasets, splits, and content types in a formatted table.
  • Implement download logic: resolve URL from manifest, download zip with progress bar, extract to output directory.
  • Handle edge cases: existing files (skip/overwrite), network errors, interrupted downloads.
  • Test the command end-to-end for each dataset and variant.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

cliLI commands and terminal interfacehelp wantedExtra attention is neededstale

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions