explaingit

humansignal/labelimg

Analysis updated 2026-06-21

24,939PythonAudience · dataComplexity · 2/5Setup · easy

TLDR

LabelImg is a desktop app for drawing labeled bounding boxes around objects in images, creating training data for AI object detection models in YOLO, PASCAL VOC, and CreateML formats.

Mindmap

mindmap
  root((LabelImg))
    What it does
      Draw bounding boxes
      Label object classes
      Save annotations
    Output formats
      PASCAL VOC XML
      YOLO text files
      CreateML JSON
    Use cases
      Training datasets
      Academic research
      Custom object detection
    Setup
      pip install
      Cross-platform
      No GPU needed
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

Annotate hundreds of images by drawing boxes around objects to build a custom object detection training dataset.

USE CASE 2

Export labeled data in YOLO format to train a custom computer vision model for detecting specific objects.

USE CASE 3

Create an academic image annotation dataset in PASCAL VOC format compatible with standard ML pipelines.

USE CASE 4

Label product images for a retail AI that needs to recognize and locate items in photos.

What is it built with?

PythonQt

How does it compare?

humansignal/labelimgmvanhorn/last30days-skillusestrix/strix
Stars24,93924,91424,976
LanguagePythonPythonPython
Setup difficultyeasyhardhard
Complexity2/52/54/5
Audiencedatavibe coderdeveloper

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

How do you get it running?

Difficulty · easy Time to first run · 5min

No longer actively maintained, new users should consider Label Studio for ongoing support.

In plain English

LabelImg is a graphical tool for annotating images to train object detection models. Before a machine learning system can learn to recognize objects in photos, say, cats, cars, or people, it needs thousands of example images where humans have manually drawn boxes around those objects and labeled what they are. LabelImg provides a desktop application that makes this process straightforward: you open a folder of images, draw rectangular boxes around objects, name them, and save the results. It saves annotations in three standard formats: PASCAL VOC (an XML-based format used by the ImageNet dataset), YOLO (a compact text format used by the YOLO family of object detection models), and CreateML (Apple's format). This makes LabelImg compatible with the most popular training pipelines without needing to convert files. You'd use this if you're building a custom image recognition or object detection model and need to create labeled training data from scratch, or if you're a researcher annotating a dataset for academic work. It runs on Linux, macOS, and Windows and installs simply via pip. Note: LabelImg is no longer actively developed, the repository now points users to Label Studio, a broader open source annotation platform by HumanSignal that handles images, text, audio, video, and time-series data. LabelImg still works for its original purpose but receives no new updates. Written in Python using Qt for its graphical interface.

Copy-paste prompts

Prompt 1
I have 500 photos of cars. Walk me through labeling bounding boxes in LabelImg efficiently and exporting in YOLO format for training a YOLOv8 model.
Prompt 2
Help me write a Python script to batch-verify that all my LabelImg PASCAL VOC XML annotations have the correct class names and at least one bounding box per image.
Prompt 3
Show me how to convert LabelImg YOLO-format labels to COCO JSON format so I can use them with a different training framework.
Prompt 4
Generate a Python script that reads LabelImg annotation files and displays statistics: class distribution, average boxes per image, and images with no annotations.

Frequently asked questions

What is labelimg?

LabelImg is a desktop app for drawing labeled bounding boxes around objects in images, creating training data for AI object detection models in YOLO, PASCAL VOC, and CreateML formats.

What language is labelimg written in?

Mainly Python. The stack also includes Python, Qt.

How hard is labelimg to set up?

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

Who is labelimg for?

Mainly data.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub humansignal on gitmyhub

Verify against the repo before relying on details.