Skip to main content

TraceWave Pipeline

TraceWave is a video tracking pipeline that runs SAM2 on frame sequences, produces per-frame CSV summaries, and exports annotated videos.

What You Get

  • Annotated MP4 outputs per chunk (and a merged MP4).
  • Per-frame CSVs per chunk (and a merged CSV).
  • A CLI for running the pipeline over frame folders and prompt YAMLs.

Requirements

  • Python 3.10+
  • SAM2 (installed automatically via pip)
  • CUDA GPU recommended for speed (CPU is supported but slow)

Install (PyPI)

pip install tracewave

Checkpoints (Auto-Download)

TraceWave automatically downloads the required SAM2 checkpoint on first run if it is missing. By default, checkpoints are stored in:

~/.cache/tracewave/sam2/checkpoints

You can also pre-download all checkpoints:

tracewave-download-checkpoints

To change the checkpoint location:

  • SAM2_CHECKPOINT_DIR=/path/to/checkpoints

To disable auto-download:

  • TRACEWAVE_AUTO_DOWNLOAD=0

Dev Helper (SAM2 + Checkpoints)

If you prefer a local clone of SAM2 (for development), you can still use:

make install

This creates a venv, installs TraceWave in editable mode, clones SAM2 into third_party/sam2, and downloads checkpoints.

Configure SAM2 (optional)

If SAM2 lives somewhere else, set:

  • SAM2_ROOT=/path/to/sam2 (should contain sam2/ and checkpoints/)
  • SAM2_MODEL=tiny|small|base_plus|large (default: large)

Usage

Run the pipeline:

tracewave -i /path/to/frames -o /path/to/output -p /path/to/prompts.yaml

Generate a tasks file for batch runs:

tracewave-gen-tasks /path/to/root -o tasks.tsv

Prompt YAML Format

Prompt files must contain a top-level prompts list. See src/tracewave/prompts/parser.py for the exact schema and examples.

Outputs

Given frame_dir=/data/frames/clipA, outputs are:

  • /output/clipA.csv (merged CSV)
  • /output/clipA.mp4 (merged annotated video)
  • /output/clipA_tmp/ (intermediate chunk files; removed if --del_tmp is set)

Troubleshooting

  • If SAM2 configs or checkpoints are missing, TraceWave will raise a clear error with the expected paths.
  • Set HYDRA_FULL_ERROR=1 for detailed SAM2 errors.

License

See LICENSE.

Metadata

Release files for tracewave 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tracewave 0.2.0
File Size Uploaded Provenance Actions
tracewave-0.2.0.tar.gz 29.2 kB With provenance Details for tracewave-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tracewave 0.2.0
File Interpreter ABI Platform Actions
tracewave-0.2.0-py3-none-any.whl Python 3 none any Details for tracewave-0.2.0-py3-none-any.whl

Total release size: 63.9 kB

Release files / tracewave-0.2.0.tar.gz

Download URL tracewave-0.2.0.tar.gz
Size 29.2 kB
Tags Source
SHA-256 checksum
How to use checksums
75316422479420fc4049212d32afc8a0960d13552204d04975883be45db89521
BLAKE2b-256 checksum
How to use checksums
f5de77ccd84741f01da74bd1ca7cf958367ee1d50bbf155d5671d91429ebc5c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.

Transparency log

Release files / tracewave-0.2.0-py3-none-any.whl

Download URL tracewave-0.2.0-py3-none-any.whl
Size 34.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
18202f7bd3574f8ae1428b3a0d2aca8e20c7b610c8cb68d27a9bbf0c6d83b534
BLAKE2b-256 checksum
How to use checksums
db90089a002d58653865f4037901ee6bbf0884bb1b090cff3c5954cdc088b97a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.

Transparency log

Security for tracewave 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tracewave-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 5, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page