Skip to content

Add 3.0 changelog#3340

Merged
MMathisLab merged 2 commits into
release/version_3_0from
cy/changelog-3.0
May 21, 2026
Merged

Add 3.0 changelog#3340
MMathisLab merged 2 commits into
release/version_3_0from
cy/changelog-3.0

Conversation

@C-Achard

@C-Achard C-Achard commented May 21, 2026

Copy link
Copy Markdown
Collaborator

Contents

  • Finalized 3.0 changelog
  • Adds benchmark images

TODO

  • Fix image links to point to github user content on main

Preview:


DeepLabCut 3.0: familiar workflows, modern foundations, better performance

DeepLabCut 3.0 introduces a PyTorch-first training and inference stack while keeping the core DeepLabCut workflow familiar.
Projects still follow the same labeling, training, evaluation, and video-analysis pipeline used throughout the 2.x series, but the underlying engine has been substantially modernized.

For users who have already been following the release candidates, many of these changes will already feel familiar.
DeepLabCut 3.0 consolidates these incremental changes into a stable release.

Increased model performance and speed

Benchmark table Openfield benchmark results
Pose estimation performance of the 3.0 PyTorch models compared against previous TensorFlow models on the DeepLabCut Openfield dataset (see PR #2613); RMSE: root mean squared error. *Values from Mathis et al. 2018.
Trimice dataset Speed comparison: PyTorch vs TensorFlow
Speed of the current PyTorch implementation (ResNet50) compared to the TensorFlow implementation. Results were obtained using a NVIDIA GeForce RTX 2080 Ti with CUDA 12.2 on the DeepLabCut Trimice dataset.
BUCTD benchmarks
Comparison of the new BUCTD model architectures with DLCRNet and DEKR on the Marmoset, Fish and Trimice dataset. From Zhou et al., ICCV 2023.

The journey to 3.0

A quick recap of some of the major milestones leading to this release:

And more, find the full PR reference on GitHub!

Notable features in 3.0.0

PyTorch-first, TensorFlow-compatible

DeepLabCut 3.0 adds a new PyTorch backend while retaining TensorFlow support for legacy workflows.
Project management remains the same and labeled datasets remain compatible.
PyTorch models can be trained alongside previous TensorFlow models on the same train/test splits for direct benchmarking and comparison.

Expanded architecture support

DeepLabCut 3.0 significantly broadens the supported model ecosystem beyond the classic ResNet-based workflows. The PyTorch stack includes:

  • ResNet and HRNet backbones
  • Bottom-up multi-animal approaches such as DEKR and PAF/DLCRNet variants
  • Top-down detector-plus-pose pipelines including RTMPose
  • Hybrid architectures such as BUCTD and CTD variants
  • SuperAnimal-related pretrained workflows

The documentation now includes dedicated architecture guides to help users choose models based on scene complexity and experimental needs.

Flexible PyTorch training configuration

The PyTorch engine introduces a modern training stack with expanded augmentation options, training schedules, device management, and model architectures. For each training run, the settings are stored in a pytorch_config.yaml, enabling easy reproducibility.

Improved interoperability

The new PyTorch data pipeline introduces loaders for both standard DeepLabCut projects and COCO-style datasets, making it easier to integrate DeepLabCut with broader computer-vision workflows and external annotation formats.

Model Zoo and SuperAnimal workflows

DeepLabCut 3.0 continues to expand the Model Zoo and SuperAnimal ecosystem, making pretrained models and transfer learning more accessible.
Colab notebooks and updated GUI tooling make it easier to experiment with modern architectures without extensive setup. (see the documentation)

Modernized installation and packaging

The project has been moved to a newer packaging system, and is now based around pyproject.toml. This enables the use of modern package-managers & dependency resolvers, such as uv or pdm.
Users can still install only the components they require, be it GUI support, TensorFlow compatibility, ModelZoo features, and optional experimental integrations.

Labeling GUI

DeepLabCut 3.0 is shipped with a new release of the napari-deeplabcut plugin. Our napari-based labeling GUI has undergone a major internal re-write and modernization: while preserving familiar UI and the DeepLabCut workflow, the update substantially improves stability, data handling, usability, visualization, and annotation workflows, now with automated point tracking for faster labeling. See the release notes to find out about all improvements.

Upcoming: refreshed documentation

We have updated and streamlined the documentation, with a focus on clarity and up-to-date information in core areas (installation, getting started guides, and more).
Expect the documentation to continue evolving soon after the release!

A major transition

The jump from the final DeepLabCut 2.x releases to the current codebase is best understood as a transition to more recent Python & deep learning ecosystems rather than a routine update.
Taken together, the PyTorch backend, broader architecture support, ModelZoo integration, packaging modernization, updated labeling GUI, and documentation improvements represent a major evolution of DeepLabCut, which we are happy to release as 3.0.

Closing thoughts

We hope you enjoy this new version, and we aim to keep sharing many exciting improvements in the future in all areas, be it performance and speed, codebase quality improvements, foundation models integration, user experience and documentation.


Changelog since 3.0.0rc14

### Contents

- Finalized 3.0 changelog
- Adds benchmark images

### TODO

- [ ] Fix image links to point to github user content on main
@C-Achard C-Achard added this to the DLC3 milestone May 21, 2026
@C-Achard C-Achard self-assigned this May 21, 2026
@C-Achard C-Achard added documentation documentation updates/comments versioning Related to project’s version number, release identifiers, version metadata labels May 21, 2026
Replace relative image paths with raw.githubusercontent.com absolute URLs in changelog/3_0_0/v3_0_0.md so images render correctly when viewed in releases. Updated three image references (openfield_benchmark_pr2613.png, speed_tensorflow.avif, buctd_benchmarks.png).
@C-Achard C-Achard requested a review from deruyter92 May 21, 2026 07:40
@deruyter92 deruyter92 marked this pull request as ready for review May 21, 2026 07:52

@MMathisLab MMathisLab left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@MMathisLab MMathisLab merged commit 5465bc8 into release/version_3_0 May 21, 2026
3 checks passed
@MMathisLab MMathisLab deleted the cy/changelog-3.0 branch May 21, 2026 08:24
C-Achard added a commit that referenced this pull request May 21, 2026
* version bump 3.0

* update uv.lock (deeplabcut version 3.0)

* Add 3.0 changelog (#3340)

* Add 3.0 changelog

### Contents

- Finalized 3.0 changelog
- Adds benchmark images

### TODO

- [ ] Fix image links to point to github user content on main

* Use raw GitHub URLs for changelog images

Replace relative image paths with raw.githubusercontent.com absolute URLs in changelog/3_0_0/v3_0_0.md so images render correctly when viewed in releases. Updated three image references (openfield_benchmark_pr2613.png, speed_tensorflow.avif, buctd_benchmarks.png).

---------

Co-authored-by: Cyril Achard <cyril.achard@epfl.ch>
Co-authored-by: Mackenzie Mathis <mathis@rowland.harvard.edu>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation documentation updates/comments versioning Related to project’s version number, release identifiers, version metadata

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants