All Projects → alexandre01 → Ultimatelabeling

alexandre01 / Ultimatelabeling

Licence: mit
A multi-purpose Video Labeling GUI in Python with integrated SOTA detector and tracker

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ultimatelabeling

Diffgram
Data Annotation, Data Labeling, Annotation Tooling, Training Data for Machine Learning
Stars: ✭ 43 (-76.63%)
Mutual labels:  object-detection, labeling
Vott
Visual Object Tagging Tool: An electron app for building end to end Object Detection Models from Images and Videos.
Stars: ✭ 3,684 (+1902.17%)
Mutual labels:  object-detection, labeling
Bbox Visualizer
Make drawing and labeling bounding boxes easy as cake
Stars: ✭ 225 (+22.28%)
Mutual labels:  object-detection, labeling
Yolo mark
GUI for marking bounded boxes of objects in images for training neural network Yolo v3 and v2
Stars: ✭ 1,624 (+782.61%)
Mutual labels:  object-detection, labeling
Vip
Video Platform for Action Recognition and Object Detection in Pytorch
Stars: ✭ 175 (-4.89%)
Mutual labels:  object-detection
Yolo V3 Tensorflow
👷 👷👷 YOLO V3(Tensorflow 1.x) 安全帽 识别 | 提供数据集下载和与预训练模型
Stars: ✭ 173 (-5.98%)
Mutual labels:  object-detection
Shape Detection
🟣 Object detection of abstract shapes with neural networks
Stars: ✭ 170 (-7.61%)
Mutual labels:  object-detection
Face mask detection
Face mask detection system using Deep learning.
Stars: ✭ 168 (-8.7%)
Mutual labels:  object-detection
Imagetagger
An open source online platform for collaborative image labeling
Stars: ✭ 182 (-1.09%)
Mutual labels:  labeling
Sin
CVPR 2018: Structure Inference Net for Object Detection
Stars: ✭ 178 (-3.26%)
Mutual labels:  object-detection
Yolo v3 tutorial from scratch
Accompanying code for Paperspace tutorial series "How to Implement YOLO v3 Object Detector from Scratch"
Stars: ✭ 2,192 (+1091.3%)
Mutual labels:  object-detection
Object Detection
Object detection with ssd_mobilenet and tiny-yolo (Add: YOLOv3, tflite)
Stars: ✭ 173 (-5.98%)
Mutual labels:  object-detection
Vdetlib
Video detection library
Stars: ✭ 177 (-3.8%)
Mutual labels:  object-detection
Ownphotos Frontend
Stars: ✭ 171 (-7.07%)
Mutual labels:  object-detection
Bmw Yolov4 Inference Api Cpu
This is a repository for an nocode object detection inference API using the Yolov4 and Yolov3 Opencv.
Stars: ✭ 180 (-2.17%)
Mutual labels:  object-detection
Ssd Tensorflow
A Single Shot MultiBox Detector in TensorFlow
Stars: ✭ 169 (-8.15%)
Mutual labels:  object-detection
Yoloncs
YOLO object detector for Movidius Neural Compute Stick (NCS)
Stars: ✭ 176 (-4.35%)
Mutual labels:  object-detection
Torchdistill
PyTorch-based modular, configuration-driven framework for knowledge distillation. 🏆18 methods including SOTA are implemented so far. 🎁 Trained models, training logs and configurations are available for ensuring the reproducibiliy.
Stars: ✭ 177 (-3.8%)
Mutual labels:  object-detection
Deep Learning For Image Processing
deep learning for image processing including classification and object-detection etc.
Stars: ✭ 5,808 (+3056.52%)
Mutual labels:  object-detection
Dockerface
Face detection using deep learning.
Stars: ✭ 173 (-5.98%)
Mutual labels:  object-detection

UltimateLabeling

Build Status License: MIT PyPI PyPI

GitHub stars

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

Features

  • SSH connection to a remote GPU server (see below to configure the server)
  • YOLO and OpenPifPaf integrated object & pose detectors (single frame/video mode)
  • Hungarian algorithm for track_id assignment
  • SiamMask visual object tracking for missing or mislabeled boxes
  • Zoom on video, resizable bounding boxes and skeletons
  • Dark mode!

Demo

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

Installation

Start by cloning the repository on your computer:

git clone https://github.com/alexandre01/UltimateLabeling.git
cd UltimateLabeling

We recommend installing the required packages in a virtual environment to avoid any library versions conflicts. The following will do this for you:

virtualenv --no-site-packages venv
source venv/bin/activate
pip install -r requirements.txt

Otherwise, just install the requirements on your main Python environment using pip as follows:

pip install -r requirements

Finally, open the GUI using:

python -m ultimatelabeling.main

Remote server configuration

To configure the remote GPU server (using the code in server files.), follow the steps below:

git clone https://github.com/alexandre01/UltimateLabeling_server.git
cd UltimateLabeling_server
pip install -r requirements.txt
bash siamMask/setup.sh
bash detection/setup.sh

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 extract.sh data/video_file.mp4

Input / output

To start labeling your videos, put these (folder of images or video file, the frames will be extracted automatically) inside the data folder.

  • Import labels: To import existing .CSV labels, hit Cmd+I (or Ctrl+I). UltimateLabeling expects to read one .CSV file per frame, in the format: "class_id", "xc", "yc", "w", "h".

  • Export labels: The annotations are internally saved in the output folder. To export them in a unique .CSV file, hit Cmd+E (or Ctrl+E) and choose the destination location.

If you need other file formats for your projects, please write a GitHub issue or submit a Pull request.

Shortcuts / mouse controls

Keyboard:

  • A (or Left key): next frame
  • D (or Right key): previous frame
  • W/S: class up/down
  • T: start/stop tracking (last used tracker)
  • Numberpad: assign given class_id
  • Spacebar: play the video

Mouse:

  • Click: select bounding box
  • Click & hold: move in the image
  • Cmd + click & hold: create new bounding box
  • Right click: delete bounding box in current frame (+ in all previous / all following frames if the corresponding option is enabled)
  • Scroll wheel (or swipe up/down): zoom in the image

Improvements / issues

Please write a GitHub issue if you experience any issue or wish an improvement. Or even better, submit a pull request!

Licence

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].