Camera support#

DeepLabCut-live-GUI supports multiple camera backends for different platforms and camera types:

Supported backends#

  1. OpenCV - β€œUniversal” webcam and USB camera support (all platforms)

    • Expect some limitations in camera control and performance

  2. GenTL - Industrial cameras via GenTL producers (Windows, Linux)

    • Requires vendor-provided CTI files

  3. Aravis - GenICam/GigE Vision cameras (Linux, experimental on macOS)

  4. Basler - Basler cameras via pypylon (all platforms)

Backend selection#

You can select the backend in the GUI from the β€œBackend” dropdown, or in your configuration file:

{
  ...
  "camera": {
    ...
    "backend": "aravis",
    ...
  }
}

Platform-specific recommendations#

Below are some general recommendations for backend selection based on your operating system and camera type.

Note

Please understand this may not reflect the exact capabilities for every setup.

Let us know about your experience with different cameras and backends on different platforms to help us improve our documentation and support!

Windows#

  • OpenCV compatible cameras: Best for webcams and simple USB cameras. OpenCV is installed with DeepLabCut-Live-GUI.

  • GenTL backend: Recommended for industrial cameras (The Imaging Source, etc.) via vendor-provided CTI files.

  • Basler cameras: Can use either GenTL or pypylon backend. OpenCV available but not recommended.

Linux#

  • OpenCV compatible cameras: Good for webcams via Video4Linux drivers. Installed with DeepLabCut-Live-GUI.

  • Aravis backend: Recommended for GenICam/GigE Vision industrial cameras (The Imaging Source, Basler, Point Grey, etc.)

    • Easy installation via system package manager

    • Better Linux support than GenTL

    • See Aravis backend for details and troubleshooting.

  • GenTL backend: Alternative for industrial cameras if vendor provides Linux CTI files.

macOS#

  • OpenCV compatible cameras: For webcams and compatible USB cameras.

  • Aravis backend: Experimental support for GenICam/GigE Vision cameras. Requires Homebrew and PyGObject; functionality depends heavily on camera model and setup.

Quick installation guide#

sudo apt-get install gir1.2-aravis-0.8 python3-gi
brew install aravis
pip install pygobject

Install vendor-provided camera drivers and SDK. CTI files are typically in:

  • C:\Program Files\The Imaging Source Europe GmbH\IC4 GenTL Driver\bin\

Backend comparison#

Feature

OpenCV

GenTL

Aravis

Basler (pypylon)

Exposure control

No

Yes

Yes

Yes

Gain control

No

Yes

Yes

Yes

Windows

βœ…

βœ…

❌

βœ…

Linux

βœ…

βœ…

βœ…

βœ…

macOS

βœ…

❌

⚠️

βœ