Skip to main content

PySide6-based GUI to run real time pose estimation experiments with DeepLabCut

Project description

DeepLabCut-Live-GUI DLC LIVE! GUI

PyPI - Package Version PyPI - Downloads Python versions

License Image.sc forum Gitter Twitter Follow Code style:Ruff

GUI to run DeepLabCut-Live on a video feed, preview and record from one or multiple cameras, and optionally record external timestamps and processor outputs.

Update

The GUI has been modernized and is now built with PySide6 (Qt) (replacing tkinter).

The new interface supports multi-camera preview with a tiled display, PyTorch models, and features improved interactive workflows for experimental use.

Documentation

Find the full documentation at the DeepLabCut docs website

System requirements (quick summary)

  • Python 3.10, 3.11 or 3.12
  • One inference backend (choose at least one):
    • PyTorch (recommended for best performance & compatibility)
    • TensorFlow (for backwards compatibility with existing models; Windows installs are no longer available for Python > 3.10)
  • A supported camera backend (OpenCV webcams by default; additional backends supported)

Installation

While the previous deeplabcut-live-gui is available on PyPI, the newest PySide6-based GUI and features must be obtained by installing from source.

To get the latest version, please follow the instructions below.

1) Clone the repository

git clone https://github.com/DeepLabCut/DeepLabCut-live-GUI.git
cd DeepLabCut-live-GUI

Option A — Install with uv

2) Create & activate a new virtual environment

uv venv dlclivegui

# Linux/macOS:
source dlclivegui/bin/activate

# Windows (Command Prompt):
.\dlclivegui\Scripts\activate.bat

# Windows (PowerShell):
.\dlclivegui\Scripts\Activate.ps1

2) Choose inference backend and install

You may install PyTorch or TensorFlow extras (or both), but you must choose at least one to run inference.

  • PyTorch (recommended):
uv pip install -e .[pytorch]
  • TensorFlow (backwards compatibility):
uv pip install -e .[tf]

Option B — Install with mamba / conda

1) Create & activate a new conda environment

conda create -n dlclivegui python=3.12
conda activate dlclivegui

2) Install with your inference backend

  • PyTorch (recommended):
pip install -e .[pytorch]
  • TensorFlow:
pip install -e .[tf]

Run the application

[!TIP] For GPU/CUDA support specifics and framework compatibility, please follow the official PyTorch/TensorFlow install guidance for your OS and drivers.

After installation, start the application with:

dlclivegui # in conda/mamba

# OR:
uv run dlclivegui

[!IMPORTANT] Activate your venv/conda environment before launching so the GUI can access installed dependencies.

Typical workflow

The new GUI supports one or more cameras.

Typical workflow:

  1. Configure Cameras (choose backend and devices)
    • Adjust camera settings (serial, exposure, ROI/cropping, etc.)
  2. Start Preview
    • Adjust visualization settings (keypoint color map, bounding boxes, etc.)
  3. Start inference
    • Choose a DeepLabCut Live model
    • Choose which camera to run inference on (currently one at a time)
  4. Start recording
    • Adjust recording settings (codec, output format, etc.)
    • Record video and timestamps to organized session folders

[!NOTE] OpenCV-compatible cameras (USB webcams, OBS virtual camera) work out of the box. For additional camera ecosystems (Basler, GenTL, Aravis, etc.), see the relevant documentation.

Current limitations

  • Pose inference runs on one selected camera at a time (even in multi-camera mode)
  • Camera features support and availability depends on backend capabilities and hardware
    • OpenCV controls for resolution/FPS are best-effort and device-driver dependent
  • DeepLabCut-Live models must be exported and compatible with the chosen backend
  • Performance depends on resolution, frame rate, GPU availability, and codec choice

References

If you use this code, we kindly ask you to please cite:


Contributing / Feedback

This project is under active development — feedback from real experimental use is highly valued.

Please report issues, suggest features, or contribute here on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deeplabcut_live_gui-2.0.0rc1.tar.gz (585.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deeplabcut_live_gui-2.0.0rc1-py3-none-any.whl (601.7 kB view details)

Uploaded Python 3

File details

Details for the file deeplabcut_live_gui-2.0.0rc1.tar.gz.

File metadata

  • Download URL: deeplabcut_live_gui-2.0.0rc1.tar.gz
  • Upload date:
  • Size: 585.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for deeplabcut_live_gui-2.0.0rc1.tar.gz
Algorithm Hash digest
SHA256 54a9dd12efe15536f1f00993326ae93afaafb72e3619b515b078f8882c0d62c0
MD5 9d1e219abacb49dcf94cddb2c9034a29
BLAKE2b-256 57fffad349dacd6ebd0ce546f1ce8dfe968e8264977ce84b0219a64686a9b5a0

See more details on using hashes here.

File details

Details for the file deeplabcut_live_gui-2.0.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for deeplabcut_live_gui-2.0.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 a783cd6cde74cb29e4cf69a5a029c42147942977e75b75b146688dfe6e94b8df
MD5 2397d05c21eaaba5c65a25176d0d5132
BLAKE2b-256 c885f87732b4e9fb4e9106aa846ba780783b969bab956697d5ce95a4a1774207

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page