What is Image annotation and labeling?

Image annotation and labeling involves adding metadata to images, such as tags or notes, to provide additional context or meaning. This process is crucial in various fields, particularly in machine learning and artificial intelligence (AI), where it helps in training models to recognize and interpret images accurately.

What are the Use-cases for image annotation and labeling?

The use-cases for image annotation and labeling are vast. They range from autonomous vehicles, where labeled images help the vehicle to recognize different objects or obstacles on the road, to healthcare, where annotated medical images aid in disease detection and diagnosis.

Who uses image annotation?

The audiences for image annotation and labeling are diverse as well. They include AI researchers and developers who use labeled data in their models, businesses that use AI technologies to improve their services or processes, and professionals in sectors like healthcare and transportation who rely on accurate image interpretation.


In this list, you will explore the best open-source free image annotation and image labeling apps and scripts. However, if you are looking for text annotation apps and scripts, we got you covered here.

27 Free Open-source Text Annotation Solutions
Text annotation is the process of associating labels or tags to specific parts of a text, such as phrases, words, or sentences. The aim is to provide additional information about the text, which can then be used for further analysis or processing, particularly in the field of Artificial Intelligence (AI)

1. Makesense.ai

Makesense.ai is a free, online, cross-platform tool for labeling photos, ideal for small computer vision deep learning projects. It simplifies and accelerates dataset preparation, with labels downloadable in multiple formats. The application is written in TypeScript and based on React/Redux.

Makesense.ai is a free, online tool for labeling photos, ideal for small computer vision deep learning projects. It integrates advanced AI models, including YOLOv5, SSD pretrained on the COCO dataset, and PoseNet, to automate and speed up the photo labeling process. The AI functionalities are powered by TensorFlow.js, ensuring data privacy as photos do not need to be transferred to a server.

GitHub - SkalskiP/make-sense: Free to use online tool for labelling photos. https://makesense.ai
Free to use online tool for labelling photos. https://makesense.ai - SkalskiP/make-sense

2. Labelme Image Polygonal Annotation

Labelme is a Python-based graphical image annotation tool that supports various annotation types and offers GUI customization. It can export datasets in VOC and COCO formats for semantic and instance segmentation.

The app config file is created on first run, which can be edited for changes to be applied on the next launch.

Features

  • Polygon, rectangle, circle, line, point and image-level flag annotation
  • For Ubuntu, macOS and Windows
  • The annotations are saved as a JSON file
  • For more advanced usage, please refer to the examples
  • Flags are assigned to an entire image
  • Labels are assigned to a single polygon
GitHub - labelmeai/labelme: Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation).
Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation). - labelmeai/labelme
labelme Image Polygonal Annotation
Download labelme Image Polygonal Annotation for free. Image polygonal annotation with Python. Labelme is a graphical image annotation tool. It is written in Python and uses Qt for its graphical interface.

3. Xtreme1

Xtreme1 is an open-source platform for multimodal training data, enhancing efficiency in data annotation, curation, and ontology management. Its AI-powered tools are designed to boost efficiency in projects involving 2D/3D object detection, 3D instance segmentation, and LiDAR-camera fusion.

Features

  • Supports data labeling for images, 3D LiDAR and 2D/3D Sensor Fusion datasets
  • Built-in pre-labeling and interactive models support 2D/3D object detection, segmentation and classification
  • Configurable Ontology Center for general classes (with hierarchies) and attributes for use in your model training
  • Data management and quality monitoring
  • Tool to find and fix labeling errors
  • Model results visualization to assist in model evaluation
  • RLHF for Large Language Models (beta version)
  • Easy to install using Docker or from source
GitHub - xtreme1-io/xtreme1: Xtreme1 is an all-in-one data labeling and annotation platform for multimodal data training and supports 3D LiDAR point cloud, image, and LLM.
Xtreme1 is an all-in-one data labeling and annotation platform for multimodal data training and supports 3D LiDAR point cloud, image, and LLM. - xtreme1-io/xtreme1

4. Label Studio

Label Studio is an open-source tool for labeling data types such as audio, text, images, videos, and time series. It features a user-friendly interface, exports data in a standardized format, supports machine learning model integration, and can be customized for specific projects. It is licensed under the Apache-2.0 license.

Transform Your Data into AI-Ready Formats with Label Studio
Label Studio is a free self-hosted open-source data labeling platform designed for flexibility in fine-tuning large language models, preparing training data, or validating AI models. It supports a wide range of data types, including images, audio, text, time series, and video, across various applications like image classification, object detection, audio
GitHub - HumanSignal/label-studio: Label Studio is a multi-type data labeling and annotation tool with standardized output format
Label Studio is a multi-type data labeling and annotation tool with standardized output format - HumanSignal/label-studio

5. LOST

LOST (Label Object and Save Time) is a web-based framework for collaborative image annotation. It offers pre-built annotation pipelines for instant image annotation without programming knowledge, but also allows user-defined annotation pipelines.

The application is scalable, with easy connectivity to external file systems like S3 Bucket or Azure Blobstorage. It visualizes the annotation process in the browser, can be set up locally or on a web server, and allows for organization of label trees, monitoring of annotation processes, and in-browser annotations.

Key Features

  • Web-based framework for collaborative image annotation
  • Pre-built annotation pipelines for instant image annotation
  • User-defined annotation pipelines
  • Scalable application
  • Easy connectivity to external file systems like S3 Bucket or Azure Blobstorage
  • Visualization of the annotation process in the browser
  • Can be set up locally or on a web server
  • Organization of label trees
  • Monitoring of annotation processes
  • In-browser annotations
  • Capability to model semi-automatic annotation pipelines
  • AI generated annotation proposals
  • Single Image Annotation Tool (SIA) for annotating bboxes, polygons, points or lines
  • Multi Image Annotation Tool (MIA) for annotating whole image clusters
  • Annotation export functions
  • Personal and project based annotation statistics
  • Colored label trees for label organization
  • Review feature for annotations
  • Customized annotation pipelines
  • Import and export of pipeline projects
  • Pipeline project sharing
  • Jupyter-Lab integration for easy pipeline development
  • LDAP integration
  • E-Mail notifications
  • Scalable design - distribute intensive computing processes across multiple machines
GitHub - l3p-cv/lost: Label Objects and Save Time (LOST) - Design your own smart Image Annotation process in a web-based environment.
Label Objects and Save Time (LOST) - Design your own smart Image Annotation process in a web-based environment. - l3p-cv/lost

6. Computer Vision Annotation Tool (CVAT)

CVAT is an interactive tool for video and image annotation used globally in computer vision. It supports a data-centric AI approach and can be used online for free or with a subscription for additional features. CVAT can also be self-hosted, with enterprise support available for premium features.

GitHub - opencv/cvat: Annotate better with CVAT, the industry-leading data engine for machine learning. Used and trusted by teams at any scale, for data of any scale.
Annotate better with CVAT, the industry-leading data engine for machine learning. Used and trusted by teams at any scale, for data of any scale. - opencv/cvat

7. Gromit-MPX

Gromit-MPX is an on-screen annotation tool for Unix desktop environments that enhances presentations by allowing users to draw directly onto the screen, highlighting points of interest.

GitHub - bk138/gromit-mpx: Gromit-MPX is an on-screen annotation tool that works with any Unix desktop environment under X11 as well as Wayland.
Gromit-MPX is an on-screen annotation tool that works with any Unix desktop environment under X11 as well as Wayland. - bk138/gromit-mpx

8. MyVision

MyVision is a free online tool for image annotation, used to generate machine learning training data for computer vision. It allows users to draw bounding boxes and polygons for object labeling, manipulate polygons, and supports various dataset formats. It also offers automatic annotation using the 'COCO-SSD' model, operating locally to maintain data privacy.

Features

  • Draw bounding boxes and polygons for object labeling
  • Polygon manipulation with features to edit, remove, and add new points
  • Supports various dataset formats
  • Automatic annotation using the 'COCO-SSD' model
  • Operates locally to maintain data privacy
  • Allows importing and continuing work on existing annotation projects
  • Can be used to convert datasets from one format to another
GitHub - OvidijusParsiunas/myvision: Computer vision based ML training data generation tool :rocket:
Computer vision based ML training data generation tool :rocket: - OvidijusParsiunas/myvision

9. VoTT (React)

VoTT, an open-source annotation and labeling tool for image and video assets, is no longer being maintained.

The application, written in TypeScript, offers features such as labeling images or video frames, importing data from various storage providers, and exporting labeled data. It facilitates an end-to-end machine learning pipeline.

GitHub - microsoft/VoTT: Visual Object Tagging Tool: An electron app for building end to end Object Detection Models from Images and Videos.
Visual Object Tagging Tool: An electron app for building end to end Object Detection Models from Images and Videos. - GitHub - microsoft/VoTT: Visual Object Tagging Tool: An electron app for build…

10. LabelImg

LabelImg, a popular image annotation tool, has joined the Label Studio community and is no longer being actively developed. Label Studio is a flexible open-source data labeling tool for various types of data including images, text, audio, video, and time-series data.

Annotations in LabelImg are saved in PASCAL VOC format, and it also supports YOLO and CreateML formats.

GitHub - HumanSignal/labelImg: LabelImg is now part of the Label Studio community. The popular image annotation tool created by Tzutalin is no longer actively being developed, but you can check out Label Studio, the open source data labeling tool for images, text, hypertext, audio, video and time-series data.
LabelImg is now part of the Label Studio community. The popular image annotation tool created by Tzutalin is no longer actively being developed, but you can check out Label Studio, the open source…

11. Coco Annotator

COCO Annotator is a web-based tool for efficient and versatile image labeling, designed to create training data for image localization and object detection.

It offers features such as segment labeling, object instance tracking, and labeling of objects with disconnected visible parts. It stores and exports annotations in the COCO format through an intuitive and customizable interface.

Features

  • Web-based tool
  • Efficient and versatile image labeling
  • Designed for training data creation for image localization and object detection
  • Segment labeling
  • Object instance tracking
  • Labeling of objects with disconnected visible parts
  • Stores and exports annotations in the COCO format
  • Intuitive and customizable interface
  • Allows users to manually define regions in an image
  • Creation of textual descriptions
  • Object marking by bounding box, masking tool, or marking points
  • Free-form curves or polygons annotation
  • Direct export to COCO format
  • Segmentation of objects
  • Capability to add key points
  • Useful API endpoints for data analysis
  • Import of datasets already annotated in COCO format
  • Annotation of disconnected objects as a single instance
  • Labeling image segments with any number of labels simultaneously
  • Allows custom metadata for each instance or object
  • Advanced selection tools such as DEXTR, MaskRCNN, and Magic Wand
  • Annotation of images with semi-trained models
  • Generation of datasets using Google images
  • User authentication system
GitHub - jsbroks/coco-annotator: :pencil2: Web-based image segmentation tool for object detection, localization, and keypoints
:pencil2: Web-based image segmentation tool for object detection, localization, and keypoints - jsbroks/coco-annotator

12. Universal Data Tool

The Universal Data Tool is a versatile application for editing and annotating data types like images, text, audio, and documents. It supports tasks like image segmentation, text classification, and audio transcription. The tool allows real-time collaboration, can be used on various platforms, and supports multiple data formats.

GitHub - UniversalDataTool/universal-data-tool: Collaborate & label any type of data, images, text, or documents, in an easy web interface or desktop app.
Collaborate & label any type of data, images, text, or documents, in an easy web interface or desktop app. - UniversalDataTool/universal-data-tool

13. RectLabel

RectLabel is an offline image annotation tool for object detection and segmentation.

Key Features

  • Label polygons and pixels using Segment Anything models
  • Automatic labeling using Core ML models
  • Automatic text recognition for lines and words
  • Label polygons with holes
  • Label cubic bezier curves, line segments, and points
  • Label oriented bounding boxes in aerial images
  • Label keypoints with a skeleton
  • Label pixels with brushes and superpixels
  • Settings for objects, attributes, hotkeys, and labeling fast
  • Search object, attribute, and image names in a gallery view
  • Export to COCO, Labelme, CreateML, YOLO, DOTA, and CSV formats
  • Export indexed color mask image and grayscale mask images
  • Video to image frames, augment images, etc.
GitHub - ryouchinsa/Rectlabel-support: RectLabel is an offline image annotation tool for object detection and segmentation.
RectLabel is an offline image annotation tool for object detection and segmentation. - ryouchinsa/Rectlabel-support

14. Label Studio Frontend

Label Studio is an open-source data annotation tool that can be customized and extended. Its frontend library, developed with React and mobx-state-tree, can be included in applications to provide data annotation support.

GitHub - HumanSignal/label-studio-frontend: Data labeling react app that is backend agnostic and can be embedded into your applications — distributed as an NPM package
Data labeling react app that is backend agnostic and can be embedded into your applications — distributed as an NPM package - HumanSignal/label-studio-frontend

15. OpenLabeling

OpenLabeling is an open-source tool for labeling images and videos. It supports multiple annotation formats including PASCAL VOC and YOLO Darknet.

The tool has been used for various purposes, such as deep learning object detection models, distractor-aware Siamese networks for visual object tracking, bounding-box resizing, and OpenCV trackers for video object tracking. There is also a plan to label photos via Google Drive to enable team online labeling.

GitHub - Cartucho/OpenLabeling: Label images and video for Computer Vision applications
Label images and video for Computer Vision applications - Cartucho/OpenLabeling

16. bbox-visualizer

The bbox-visualizer package assists users in drawing bounding boxes around objects, eliminating the need for complex mathematical calculations for label positioning.

It offers various visualization types for labeling objects post-identification. Bounding box points should be in the format: (xmin, ymin, xmax, ymax).

GitHub - shoumikchow/bbox-visualizer: Make drawing and labeling bounding boxes easy as cake
Make drawing and labeling bounding boxes easy as cake - GitHub - shoumikchow/bbox-visualizer: Make drawing and labeling bounding boxes easy as cake

17. PixelAnnotationTool

PixelAnnotationTool is a software that enables quick, manual annotation of images in directories using the watershed algorithm of OpenCV.

Users can manually mark areas with brushes and then launch the algorithm. If the initial segmentation needs correction, users can refine the markers by drawing new ones on the erroneous areas.

GitHub - abreheret/PixelAnnotationTool: Annotate quickly images.
Annotate quickly images. . Contribute to abreheret/PixelAnnotationTool development by creating an account on GitHub.

18. CATMAID

CATMAID is a toolkit for collaborative annotation of large amounts of image data. Stable versions are tagged as releases and merged into the master branches. The development model is a less strict version of GitFlow, with regular development happening in the dev branch or topic branches.

Release branches contain additional release preparation changes and are created off of dev. Maintenance branches are created for additional fixes to releases and are considered stable.

GitHub - catmaid/CATMAID: Collaborative Annotation Toolkit for Massive Amounts of Image Data
Collaborative Annotation Toolkit for Massive Amounts of Image Data - catmaid/CATMAID

19. Anno-Mage: Semi Automatic Image Annotation Toolbox

Anno-Mage is a semi-automatic image annotation tool that uses TensorFlow and Keras object detection models. It requires TensorFlow 1.7.0 or higher, OpenCV 3.x, and Keras 2.1.3 or higher. Users must install these dependencies, clone the repository, and install the required packages.

Pretrained weights for Keras and TensorFlow models should be downloaded and saved in the appropriate directories. Users can select object classes and models, and manually annotate images. The final annotations are saved in an annotations.csv file. The tool has been tested on Windows 10, Linux 16.04, and macOS High Sierra.

GitHub - virajmavani/semi-auto-image-annotation-tool: Anno-Mage: A Semi Automatic Image Annotation Tool which helps you in annotating images by suggesting you annotations for 80 object classes using a pre-trained model
Anno-Mage: A Semi Automatic Image Annotation Tool which helps you in annotating images by suggesting you annotations for 80 object classes using a pre-trained model - virajmavani/semi-auto-image-an…

20. OpenLabeler

OpenLabeler is a cross-platform free open-source application for annotating objects, generating PASCAL VOC format XML annotation files for AI and deep learning training.

It uses inference with TensorFlow to improve annotation accuracy and speed. It features fast labeling, multi-level undo/redo, annotation "hints", and pre-built installation packages for macOS, Linux, and Windows.

Features

  • Open-source application
  • Generates PASCAL VOC format XML annotation files for AI and deep learning training
  • Uses TensorFlow for inference to improve annotation accuracy and speed
  • Fast labeling
  • Multi-level undo/redo capabilities
  • Annotation "hints" feature
  • Pre-built installation packages for macOS, Linux, and Windows
  • Built in OpenJDK/OpenJFX (version 21.x)
  • Ability to use a saved model to give labeling suggestions
  • Supports the Label Map File in protobuf format (.pbtxt)
  • Supports the Saved Model Location for .pb files
  • Supports graphs with the image_tensor and encoded_image_string_tensor operations/input types
GitHub - kinhong/OpenLabeler: OpenLabeler is an open source desktop application for annotating objects for AI appplications
OpenLabeler is an open source desktop application for annotating objects for AI appplications - kinhong/OpenLabeler

21. Annotorious (Web)

Annotorious 3.0 Beta, a work-in-progress, adds image annotation functionality to any web page with a few lines of JavaScript. It can be installed via npm and used with existing image elements.

It also supports loading annotations in W3C Web Annotation format and attaching listeners to handle annotation events. Annotorious provides seamless integration with the OpenSeadragon viewer for zoomable images and IIIF.

Annotorious | JavaScript image annotation library
Add drawing, commenting and labeling functionality to images on your website with a few lines of JavaScript.
GitHub - annotorious/annotorious: Add image annotation functionality to any web page with a few lines of JavaScript.
Add image annotation functionality to any web page with a few lines of JavaScript. - annotorious/annotorious

22. anno

This is a free and open-source cross-platform tool for labeling image data.

Features

  • Supports a wide range of marker types:
    • Point
    • Oriented point
    • Axis aligned rectangle
    • Rectangle with rotation
    • Polygon
    • Polyline
  • Configurable rendering of all marker types.
  • Configurable dependencies between properties of markers: i.e. some markers can share width or height or position on image.
  • Supports a wide variety of image formats. Pre-build Windows version supports EXR format.
  • The project file is JSON file wich contains project-specific marker definitions and labeling information.
  • The user interface is optimized for fast sub-pixel accurate labeling.
GitHub - urobots-io/anno: Cross-platform image labeling tool for AI
Cross-platform image labeling tool for AI. Contribute to urobots-io/anno development by creating an account on GitHub.

23. animexgeo

This is a script for image labeling that allows users to annotate .JPG or .PNG images with markers and polygons. Users can add metadata to these annotations and export the data as GeoJSON, use it for cropping with the Pillow image library, or download the annotated polygons and their metadata as a ZIP file.

The script also supports highlighting polygons based on the annotated metadata.

GitHub - hou2zi0/animexgeo: Annotate images in .JPG- or .PNG-format with markers and polygons in connection with freely composable input form fields for metadata and subsequently export the annotation data as GeoJSON, as data for cropping with Pillow image library, or download the cut out polygons and their corresponding metadata as a ZIP file.
Annotate images in .JPG- or .PNG-format with markers and polygons in connection with freely composable input form fields for metadata and subsequently export the annotation data as GeoJSON, as data…

24. Auto-annotate

Auto-annotate is a tool for automatic image labeling, ideal for labeling large data batches quickly. It requires setting up a Python environment and installing dependencies locally. Users must keep their ROBOFLOW_API_KEY secret. For those preferring more control over detections, Label Assist in the web interface allows corrections to AI suggestions.

GitHub - roboflow/auto-annotate: A simple tool for automatic image annotation using Roboflow API
A simple tool for automatic image annotation using Roboflow API - roboflow/auto-annotate

25. Alturos.ImageAnnotation

Alturos.ImageAnnotation is an open-source project aimed at managing training data for Neural Networks, with images stored in object storage like Amazon S3. It allows for collaborative annotation of images, verification of image annotation data, and export for yolo with filters. It does not require a custom server.

GitHub - AlturosDestinations/Alturos.ImageAnnotation: A collaborative tool for labeling image data for yolo
A collaborative tool for labeling image data for yolo - AlturosDestinations/Alturos.ImageAnnotation

26. VGG Image Annotator

VGG Image Annotator (VIA) is a standalone, open-source annotation software for image, audio, and video. It operates in a web browser without any installation or setup, and is less than 400 Kilobytes in size.

The app is developed by the Visual Geometry Group, VIA is based on HTML, Javascript, and CSS, and is released under the BSD-2 clause license, making it suitable for both academic and commercial applications.

GitHub - ox-vgg/via: (MIRROR) a standalone image annotator application packaged as a single HTML file (< 200 KB) that runs on most modern web browsers
(MIRROR) a standalone image annotator application packaged as a single HTML file (< 200 KB) that runs on most modern web browsers - ox-vgg/via

27 Free Open-source Text Annotation Solutions
Text annotation is the process of associating labels or tags to specific parts of a text, such as phrases, words, or sentences. The aim is to provide additional information about the text, which can then be used for further analysis or processing, particularly in the field of Artificial Intelligence (AI)