Skip to main content

SLEAP (Social LEAP Estimates Animal Poses) is a deep learning framework for animal pose tracking.

Project description

CI Coverage Documentation Downloads Stable version Latest version

Social LEAP Estimates Animal Poses (SLEAP)

SLEAP Demo

SLEAP is an open-source deep-learning based framework for multi-animal pose tracking (Pereira et al., Nature Methods, 2022). It can be used to track any type or number of animals and includes an advanced labeling/training GUI for active learning and proofreading.

Features

  • Easy, one-line installation with support for all OSes
  • Purpose-built GUI and human-in-the-loop workflow for rapidly labeling large datasets
  • Single- and multi-animal pose estimation with top-down and bottom-up training strategies
  • Customizable neural network architectures that deliver accurate predictions with very few labels
  • Fast training: 15 to 60 mins on a single GPU for a typical dataset
  • Fast inference: up to 600+ FPS for batch, <10ms latency for realtime
  • Support for remote training/inference workflow (for using SLEAP without GPUs)
  • Flexible developer API for building integrated apps and customization
  • Two independent backends— sleap-nn and sleap-io for training/inference pipelines & handling SLEAP files respectively

Get some SLEAP

SLEAP is installed as a Python package. We strongly recommend using uv to install SLEAP in its own environment.

You can find the latest version of SLEAP in the Releases page.

Quick install

Python 3.14 is not yet supported

SLEAP currently supports Python 3.11, 3.12, and 3.13.
Python 3.14 is not yet tested or supported.
By default, uv will use your system-installed Python.
If you have Python 3.14 installed, you must specify the Python version (≤3.13) in the install command.

For example:

uv tool install --python 3.13 "sleap[nn]"  ...

Replace ... with the rest of your install command as needed.

uv tool install (any OS):

First, install uv if you haven't already:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Then install SLEAP:

# Windows/Linux CUDA 12.8
uv tool install "sleap[nn]" --index https://download.pytorch.org/whl/cu128 --index https://pypi.org/simple

# macOS / CPU-only
uv tool install "sleap[nn]" --index https://download.pytorch.org/whl/cpu --index https://pypi.org/simple

Run the SLEAP GUI after installation:

sleap

See the docs for full installation instructions.

Learn to SLEAP

References

SLEAP is the successor to the single-animal pose estimation software LEAP (Pereira et al., Nature Methods, 2019).

If you use SLEAP in your research, please cite:

T.D. Pereira, N. Tabris, A. Matsliah, D. M. Turner, J. Li, S. Ravindranath, E. S. Papadoyannis, E. Normand, D. S. Deutsch, Z. Y. Wang, G. C. McKenzie-Smith, C. C. Mitelut, M. D. Castro, J. D'Uva, M. Kislin, D. H. Sanes, S. D. Kocher, S. S-H, A. L. Falkner, J. W. Shaevitz, and M. Murthy. Sleap: A deep learning system for multi-animal pose tracking. Nature Methods, 19(4), 2022

BibTeX:

@ARTICLE{Pereira2022sleap,
   title={SLEAP: A deep learning system for multi-animal pose tracking},
   author={Pereira, Talmo D and 
      Tabris, Nathaniel and
      Matsliah, Arie and
      Turner, David M and
      Li, Junyu and
      Ravindranath, Shruthi and
      Papadoyannis, Eleni S and
      Normand, Edna and
      Deutsch, David S and
      Wang, Z. Yan and
      McKenzie-Smith, Grace C and
      Mitelut, Catalin C and
      Castro, Marielisa Diez and
      D'Uva, John and
      Kislin, Mikhail and
      Sanes, Dan H and
      Kocher, Sarah D and
      Samuel S-H and
      Falkner, Annegret L and
      Shaevitz, Joshua W and
      Murthy, Mala},
   journal={Nature Methods},
   volume={19},
   number={4},
   year={2022},
   publisher={Nature Publishing Group}
   }
}

Technical issue with the software?

  1. Check the Help page.
  2. Ask the community via discussions on Github.
  3. Search the issues on GitHub or open a new one.

General inquiries? Reach out to talmo@salk.edu.

Acknowledgments

SLEAP was created in the Murthy and Shaevitz labs at the Princeton Neuroscience Institute at Princeton University.

SLEAP is currently being developed and maintained in the Talmo Lab at the Salk Institute for Biological Studies.

Maintainers

  • Divya Murali (@gitttt-1234), Salk Institute for Biological Studies
  • Amick Licup (@alicup29), Salk Institute for Biological Studies
  • Elizabeth Berrigan (@eberrigan), Salk Institute for Biological Studies
  • Andrew Park (@7174Andy), Salk Institute for Biological Studies
  • Tom Han (@tom21100227), Salk Institute for Biological Studies
  • Talmo Pereira (@talmo), Salk Institute for Biological Studies

Contributors

SLEAP would not be possible without major contributions from many folks, including:

  • Liezl Maree, Salk Institute for Biological Studies
  • Arlo Sheridan, Salk Institute for Biological Studies
  • Arie Matsliah, Princeton Neuroscience Institute, Princeton University
  • Nat Tabris, Princeton Neuroscience Institute, Princeton University
  • David Turner, Research Computing and Princeton Neuroscience Institute, Princeton University
  • Joshua Shaevitz, Physics and Lewis-Sigler Institute, Princeton University
  • Mala Murthy, Princeton Neuroscience Institute, Princeton University

Funding

This work was made possible through our funding sources, including:

  • NIH BRAIN Initiative R01 NS104899
  • Princeton Innovation Accelerator Fund
  • NIH BRAIN Initiative RF1 MH132653

License

SLEAP is released under a BSD 3-Clause Clear License.

Links

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

sleap-1.6.4.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

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

sleap-1.6.4-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file sleap-1.6.4.tar.gz.

File metadata

  • Download URL: sleap-1.6.4.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sleap-1.6.4.tar.gz
Algorithm Hash digest
SHA256 4161f066f5a3ee26fbfda9e2a3b9db6137eae478983f0f896f73a96e496a1e89
MD5 85b719754cdbbcb89af1686b6d5ea67d
BLAKE2b-256 2223dcfb0dded6a22c4b924313ff69475237e0d7d0b02d0bc713f45586ab283e

See more details on using hashes here.

File details

Details for the file sleap-1.6.4-py3-none-any.whl.

File metadata

  • Download URL: sleap-1.6.4-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sleap-1.6.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d77a7b1b0e9eee2e31b631e1f3a60ce80e7ed6b5301561b581b8fa973e42a719
MD5 3e19a27a56338c622b3b770bd38d4529
BLAKE2b-256 d20101b53fefd0b40c777f4c7228a59e4dce9ebc789631283122780f8dff536d

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