Skip to main content

Automatic annotation of images library

Project description

Auto Annotator

An extendable tool for automatic annotation of image data by a combination of deep neural networks.

alt text

The primary objective of this annotator is to prioritize the accuracy and quality of predictions over speed. The autoannotator has been specifically designed to surpass the precision offered by most publicly available tools. It leverages ensembles of deep neural models to ensure the utmost quality in its predictions. It is important to note that neural networks trained on clean datasets tend to yield superior results compared to those trained on larger but noisier datasets.

FAQ

Do companies and engineers actually need this tool?

We have asked engineers in the field of video analytics whether they are interested in such a library. Their responses were:

  • IREX: would use this library and contribute to it.
  • NapoleonIT: would use this library and contribute to it.
  • ITMO.Lens: would use this library.

What are the reasons for choosing this data labeling tool over the alternative of employing human annotators?

Human accuracy is not so good

Long time ago Andrej Karpathy observed that his accuracy was only 94% when he tried to label just 400 images of the CIFAR-10 dataset while SOTA Efficient adaptive ensembling for image classification (August 29, 2023) achieves >99.6% accuracy. When expert labelers had to choose from ~100 labels while annotating ImageNet, their error rate increased to 13-15%.

Andrej's error rate was determined to be 5.1%, and he initially invested approximately one minute in labeling a single image. Conversely, utilizing Florence or never models for the same task can deliver a top-5 error rate of less than 1%.

Industry case: human face classification.

A certain undisclosed company, bound by a non-disclosure agreement (NDA), has utilized a technique wherein face images captured under challenging environmental conditions are pre-processed. This procedure involves the application of both a facial recognition network and DBSCAN algorithm to divide the images into distinct individuals. Subsequently, human annotators undertook a validation process to verify the accuracy of the pre-processed data. The work conducted by the annotators was inspected by their team leader. Ultimately, it was determined by an ML engineer that 1.4% of the clustered face images were mislabeled.

Why yet another tool?

It can automate labeling

Supported tasks

  • Face and landmarks detection
  • Face alignment via keypoints
  • Face descriptor extraction
  • Clusterization

📊 Benchmarks

Speed

Task Models Hardware Time, s
Face detection + landmarks - 5900x+3090 -
Face descriptor extraction - 5900x+3090 -

Accuracy

TODO

🏗 Installation

PIP package

pip install autoannotator

🟡 Note: PIP package construction currently in progress

Docker TODO

docker build ...
docker run ...

🏰 Legacy

Current repository takes ideas and some code form the following projects:

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

autoannotator-0.0.3.tar.gz (764.4 kB view details)

Uploaded Source

Built Distribution

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

autoannotator-0.0.3-py3-none-any.whl (27.2 kB view details)

Uploaded Python 3

File details

Details for the file autoannotator-0.0.3.tar.gz.

File metadata

  • Download URL: autoannotator-0.0.3.tar.gz
  • Upload date:
  • Size: 764.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for autoannotator-0.0.3.tar.gz
Algorithm Hash digest
SHA256 94489687ddf91f106ab6063b59e6045d1b3c68a361591c9bdbbed6089801b6e6
MD5 0571cbbaf397c23db8dd8fcca7e6a04d
BLAKE2b-256 3946c5a3c30b41ff06a6b1ad3a7b4833a2825fadf4ad11709ca6af139e4b75c8

See more details on using hashes here.

File details

Details for the file autoannotator-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: autoannotator-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 27.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for autoannotator-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 986fcd9e8c376e45e2b1522cbcb49fb975c9708d597c23fd168dbc83303cf831
MD5 a11493b4dfa58e21e680888b0b83f534
BLAKE2b-256 fab04cd886b7cc1d9b82ee626db6aa5aa971ef8119c685634c9bd2668e185299

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