whatisgithub

What is labelme?

wkentaro/labelme — explained in plain English

Analysis updated 2026-06-24

15,868PythonAudience · researcherComplexity · 2/5Setup · easy

In one sentence

A graphical tool for drawing labels on images, draw shapes around objects to create training data for AI vision models, with AI-assisted annotation to speed up the process.

Mindmap

mindmap
  root((repo))
    Annotation types
      Bounding boxes
      Polygons
      Segmentation masks
    AI assistance
      SAM click-to-label
      YOLO text labels
    Output
      JSON files
      Standard ML formats
    Audience
      ML researchers
      Data scientists
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Label thousands of images with bounding boxes and polygon outlines to build a training dataset for an object detection model.

USE CASE 2

Use AI-assisted annotation to auto-suggest shapes from a single click, cutting manual labeling time significantly.

USE CASE 3

Annotate video frame-by-frame for instance segmentation tasks in a computer vision pipeline.

USE CASE 4

Export labeled data in standard ML formats to feed directly into a training script.

What is it built with?

PythonQtSAMEfficientSAMYOLO

How does it compare?

wkentaro/labelmematrixtm/mhddoshugohe3/ppt-master
Stars15,86815,87715,886
LanguagePythonPythonPython
Setup difficultyeasymoderateeasy
Complexity2/53/52/5
Audienceresearcherresearchervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Installable via pip or as a standalone app from labelme.io, no GPU required for basic annotation.

So what is it?

Labelme is a graphical tool for drawing annotations (labels) on images, a task required before training AI models to recognize objects, detect regions, or segment scenes. Think of it like a digital marker: you open an image, draw shapes around objects (polygons, rectangles, circles, lines, or single points), give each shape a label like "cat" or "car," and save that labeled data for later use in machine learning projects. The tool supports several annotation styles: bounding boxes (rectangles around objects), polygon outlines, semantic segmentation (coloring every pixel by category), and instance segmentation (separating individual objects of the same type). It can also annotate video frame by frame. A standout feature is AI-assisted annotation: instead of drawing every shape manually, you can use built-in AI models (SAM, EfficientSAM) that auto-suggest polygon or mask shapes from a single click, or use text-to-annotation models like YOLO-world to label objects by typing their name. Labelme is written in Python and uses Qt for its graphical interface. It can be installed via pip (Python's package manager), downloaded as a standalone app from labelme.io without needing Python at all, or obtained through Linux system packages. Annotations are saved as JSON files and can be exported in standard formats used by computer vision training pipelines. The interface is available in 20 languages. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
I have a folder of images and need to label objects with polygons for training a segmentation model. Walk me through setting up labelme and creating my first annotation session.
Prompt 2
Using labelme's AI-assisted annotation with SAM, help me write a script to batch-process a folder of images and auto-generate polygon labels for objects I specify.
Prompt 3
I want to use YOLO-world in labelme to annotate objects by typing their name. How do I enable text-to-annotation mode and export the results as COCO JSON?
Prompt 4
Help me convert labelme's JSON annotation files into Pascal VOC XML format for my training pipeline.
Prompt 5
Set up labelme for semantic segmentation of street scene images and configure it to export masks compatible with my PyTorch dataset loader.

Frequently asked questions

What is labelme?

A graphical tool for drawing labels on images, draw shapes around objects to create training data for AI vision models, with AI-assisted annotation to speed up the process.

What language is labelme written in?

Mainly Python. The stack also includes Python, Qt, SAM.

How hard is labelme to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is labelme for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.