Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Event-Camera Weight Mirrors

SRB does not ship event-camera checkpoints in the repository. The three artifacts and their consumers are:

Artifact--artifact valueFilenameConsumer
SuperSloMo upsamplersupersloMo (default)SuperSloMo39.ckptNone currently; the pinned v2e emulator rejects cfg.frame_interp=True
E2VID reconstructione2vidE2VID_lightweight.pth.tarsrb.datasets.event_validation.reconstruction.e2vid_reconstruct
V2CE learned simulatorv2cev2ce_3d.ptsrb.core.sensor.event_camera.backends.v2ce.V2CEBackend

See the Status Matrix for readiness across weights, fixtures, and validation. The E2VID checkpoint is from the GPL-3.0 rpg_e2vid release; SRB’s runtime adapter uses the MIT e2vid package from uzh-rpg/e2calib. Do not vendor GPL model code into SRB.

Without --mirror or --url, each artifact defaults to an unpinned placeholder and the fetcher refuses the download. Mirrors are maintainer-pinned in KNOWN_MIRRORS; private Hugging Face mirrors require repository access and HF_TOKEN, HUGGING_FACE_HUB_TOKEN, or a token from hf auth login.

How users fetch weights today

Use a registered mirror or provide an explicit URL and SHA256:

srb event-camera list-mirrors
srb event-camera fetch-weights --mirror <short name>

srb event-camera fetch-weights --artifact supersloMo \
  --url https://example.com/SuperSloMo39.ckpt --sha256 <hex digest> \
  --name SuperSloMo39.ckpt
srb event-camera fetch-weights --artifact e2vid \
  --url https://example.com/E2VID_lightweight.pth.tar --sha256 <hex digest>
srb event-camera fetch-weights --artifact v2ce \
  --url https://example.com/v2ce_3d.pt --sha256 <hex digest>

The mirror’s artifact.name identifies the checkpoint kind. If both --mirror and --artifact are supplied, --mirror takes precedence.

Mirror requirements

Register mirrors in KNOWN_MIRRORS in srb/core/sensor/event_camera/weights.py only when they:

  • Have a stable URL fetchable with urllib.request; do not embed credentials or use expiring signed URLs, consent interstitials, or rate-limited redirects. Private Hugging Face repositories use the standard token configuration above.
  • Serve the exact upstream checkpoint: SuperSloMo v3.9, the lightweight rpg_e2vid checkpoint, or the pretrained V2CE-Toolbox model. Modified or retrained checkpoints need distinct names.
  • Have a SHA256 verified against a known-good reference.
  • Record license and attribution in WeightMirror.license_note, consistent with upstream redistribution terms.

PR template for adding a mirror

Add the registry entry, a CLI test for get_known_mirror, and an end-to-end srb event-camera fetch-weights --mirror <short_name> check. Include the CLI JSON output and license and redistribution evidence in the PR description. Use an artifact suffix such as -supersloMo, -e2vid, or -v2ce in the short name. SuperSloMo/v2e and V2CE-Toolbox are MIT; the E2VID checkpoint is GPL-3.0, while SRB’s E2VID Python provider is MIT.

Removing a mirror

Remove the registry entry and update the registry test when a mirror is unavailable or serves a corrupted file. Record the reason in the change description.

Why this is a registry and not a single canonical URL

SRB does not own upstream checkpoints. Multiple community and institutional mirrors avoid dependence on one repository or storage bucket.