0ssamaak0 / DLTA-AI

Data Labeling, Tracking and Annotation with AI
GNU General Public License v3.0
322 stars 39 forks source link
annotation computer-vision datasets-preparation pytorch


Data Labeling, Tracking and Annotation with AI

DLTA-AI is the next generation of annotation tools, integrating the power of Computer Vision SOTA models to Labelme in a seamless expirence and intuitive workflow to make creating image datasets easier than ever before [![User Guide](https://img.shields.io/badge/User%20Guide-blue)](https://0ssamaak0.github.io/DLTA-AI/) [![Youtube Channel](https://img.shields.io/youtube/channel/views/UCJi8OFF-fzwGSAC8BWJ0BhQ)](https://www.youtube.com/@DLTA-AI) [![Discord Server](https://img.shields.io/discord/1130938906616004638)](https://discord.gg/9Rmwcnc4) [![PyPI - Downloads](https://img.shields.io/pypi/dm/DLTA-AI)](https://pypi.org/project/DLTA-AI/) [![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/0ssamaak0/DLTA-AI?include_prereleases)](https://github.com/0ssamaak0/DLTA-AI/releases) [![GitHub issues](https://img.shields.io/github/issues/0ssamaak0/DLTA-AI)](https://github.com/0ssamaak0/DLTA-AI/issues) [![GitHub last commit](https://img.shields.io/github/last-commit/0ssamaak0/DLTA-AI)](https://github.com/0ssamaak0/DLTA-AI/commits) [![GitHub License](https://img.shields.io/github/license/0ssamaak0/DLTA-AI)](https://github.com/0ssamaak0/DLTA-AI/blob/master/LICENSE) ![gif_main](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/gif_main.gif?raw=true) [Installation](#installation-%EF%B8%8F) 🛠️ | [Segment Anything](#Segment-Anything-) 🪄 | [Model Selection](#model-selection-) 🤖 | [Segmentation](#segmentation-) 🎨 | [Object Tracking](#object-tracking-) 🚗 | [Export](#export-) 📤 | [Other Features](#other-features-) 🌟| [Contributing](#contributing-) 🤝| [Acknowledgements](#acknowledgements-)🙏| [Resources](#resources-) 🌐 | [License](#license-) 📜

Installation 🛠️

After creating a new environment, installing Pytorch to it, you can install DLTA-AI using pip

pip install DLTA-AI

and run it using

DLTA-AI

Check the Installation section in User Guide for more details, different installation options and solutions for common issues.

Segment Anything 🪄

DLTA-AI takes the Annotation to the next level by integrating lastest Meta models Segment Anything (SAM) to support zero-shot segmentation for any class

SAM can be used also to improve the quality of Segmentation, even inaccurate polygons around the object is enough to be segmented correctly

SAM doesn't only work for Segmentation tasks, it's build in the video mode to support Object Tracking as well for any class

![Segment Anything](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/SAM.gif?raw=true)

Model Selection 🤖

For model selection, DLTA-AI provides the Model Explorer to utilize the power of the numerous models in mmdetection and ultralytics YOLOv8 as well as the models of SAM

the to give the user the ability to compare, download and select from the library of models

![Model Explorer](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/model_explorer.png?raw=true)

Segmentation 🎨

Using the models from the Model Explorer, DLTA-AI provides a seamless expirence to annotate single image or batch of images, with options to select classes, modify threshold, and full control to edit the segmentation results.

![Segmentation](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/segmentation.png?raw=true)

and as mentioned before, SAM is fully integrated in DLTA-AI to provide zero-shot segmentation for any class, and to improve the quality of segmentation

Object Tracking 🚗

Built on top of the segmentation and detection models, DLTA-AI provides a complete solution for Object Tracking, with 5 different models for tracking

To import DLTA-AI have options for video navigation, tracking settings and different visualization options with the ability to export the tracking results to a video file

Beside this, DLTA-AI provides a completely new way to modify the tracking results, including edit and delete propagation across frames

![Object Tracking](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/tracking.gif?raw=true)

Beside automatic tracking models, DLTA-AI provides different methods of interpolation and filling gaps between frames to fix occlusions and unpredicted behaviors in a semi-automatic way

![Interpolation](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/interpolation.png?raw=true)

Export 📤

For Instance Segmentation, DLTA-AI provides to option to export the segmentation to standard COCO format, and the results of tracking to MOT format, and a video file for the tracking results with desired visualization options e.g., show id, bbox, class name, etc.

![Export](https://github.com/0ssamaak0/DLTA-AI/blob/master/assets/Export.png?raw=true)

DLTA-AI provides also the ability to add user-defined or custom export formats that can be used for any purpose, once the user defines his own format, it will be available in the export menu.

Other Features 🌟

Contributing 🤝

DLTA-AI is an open source project and contributions are very welcome, specially in this early stage of development.

You can contribute in many ways:

Acknowledgements 🙏

This tool is part of a Graduation Project at Faculty of Engineering, Ain Shams University under the supervision of:

we want also to thank our friends who helped us with testing, feedback and suggestions:

Resources 🌐

License 📜

DLTA-AI is released under the GPLv3 license.