Skip to main content

A multi-purpose Video Labeling GUI in Python with integrated SOTA detector and tracker.

Project description


Build Status License: MIT PyPI PyPI

A multi-purpose Video Labeling GUI in Python with integrated SOTA detector and tracker. Developed using PyQt5.

[Under development]

The integrated object detectors and trackers are based on the following codes:

For remote server processing, follow the guide below in order to configure the server files.






  • SSH connection to the remote server (see below to configure the server)
  • YOLO and OpenPifPaf integrated object & pose detectors (single frame and entire video mode)
  • Hungarian instance ID assignment
  • SiamMask Visual object tracking for missing or mislabeled objects
  • Zoom on the video, resizable bounding boxes and skeletons
  • Dark mode!


Install the requirements using pip as follows:

pip install -r requirements

Put the videos (folder of images or video file, the frames will be extracted automatically) inside the data folder. Then, open the GUI using

python -m ultimatelabeling.main

After closing the window, the annotations are available in the output folder.

Remote server configuration

To configure the remote GPU server, follow the steps below:

git clone
cd UltimateLabeling_server
pip install -r requirements.txt
bash siamMask/
bash detection/

The data images and videos should be placed in the folder data, similarly to the client code.

To extract video files, use the following script:

bash data/video_file.mp4


Copyright (c) 2019 Alexandre Carlier, released under the MIT licence.

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

ultimatelabeling-0.1.1.tar.gz (38.7 kB view hashes)

Uploaded source

Supported by

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