# LabelMe

> An open-source image annotation tool with AI-assisted segmentation (SAM2, SAM3, YOLO-World) that runs fully offline on Windows, macOS, and Linux.

LabelMe is a graphical image annotation tool originally created by Kentaro Wada in 2016 at the University of Tokyo, now with over 16,000 GitHub stars. The core project is open source under GPL-3.0, while labelme.io offers a paid standalone desktop app with bundled AI models and a dataset creation toolkit. It runs entirely offline — no internet connection, no API keys, and no cloud uploads required after installation.

## What It Is

LabelMe is a desktop application and Python-based CLI tool for creating labeled image datasets used in computer vision and machine learning training pipelines. Users draw polygons, bounding boxes, circles, lines, and points over images to produce structured annotation files (JSON), which can then be exported to formats like YOLO and Pascal VOC. The paid app bundles AI models (SAM2, SAM3, YOLO-World) that enable one-click segmentation and text-prompt-based annotation without any external service dependency.

## Open-Source Roots and Paid App Model

The project has a dual-track structure:

- **Open-source (`wkentaro/labelme`)**: A Python/Qt application installable via `pip install labelme`. Supports all annotation shapes, VOC/COCO export, video annotation, and AI-assisted annotation via SAM and YOLO-World models (requires manual model weight setup). Licensed under GPL-3.0.
- **Paid standalone app (labelme.io)**: A pre-built desktop installer for macOS, Windows, and Linux. AI models are auto-downloaded and bundled; no Python or Qt installation needed. The Pro tier adds a dataset creation toolkit with 10+ CLI tools, ready-to-train YOLO and VOC exports, and priority email support.

The open-source version remains actively maintained, with v6.3.x as the current maintenance line (Qt5/Python 3.10–3.11) and v7.x as the active development branch (Qt6/PySide6, Python 3.11+).

## AI-Assisted Annotation Capabilities

LabelMe's AI annotation features work entirely on-device:

- **Click-to-segment**: Uses EfficientSAM, SAM1, or SAM2 to produce polygon or mask annotations from a few clicks.
- **Text-prompt annotation**: YOLO-World and SAM3 accept natural language prompts (e.g., "person, shoe, bus") to auto-annotate matching objects as rectangles or polygons.
- **Rectangle-to-polygon**: Converts rough bounding boxes into pixel-accurate polygon masks using AI, useful for irregular or curved objects.
- **Duplicate suppression**: LabelMe v6.3 added suppression passes to prevent redundant predictions from stacking on the same object across SAM granularities or already-labeled regions.

## Workflow: Annotate → Validate → Train

The intended pipeline has three stages:

1. **Annotate** images using the desktop app or CLI with any combination of shapes and AI assistance.
2. **Validate and export** using the Toolkit — a set of command-line tools for batch processing, format conversion, and dataset validation. The Toolkit supports YOLO, YOLO-OBB, and Pascal VOC export formats.
3. **Train** an AI model using the exported dataset with frameworks like Ultralytics YOLO or PyTorch-based segmentation pipelines.

The Toolkit is included in the Pro tier and is also installable separately via CLI.

## Update: v6.3.1 and Toolkit v0.3.0

The latest stable release of the open-source app is **v6.3.1** (published May 27, 2026), which fixes a crash triggered by switching draw modes mid-shape and prevents zero-area or zero-length shapes from being saved to annotation files. The active development branch is v7.x, which moves from PyQt5 to PySide6 (Qt6) and requires Python 3.11+.

The Toolkit reached **v0.3.0** (June 2026) with the addition of YOLO-OBB export and import, enabling bidirectional conversion of oriented bounding boxes for YOLOv8-OBB training workflows.

## Platform and Audience

LabelMe supports 20 languages and runs on 64-bit macOS, Windows, and Linux. It is used across computer vision research, robotics, medical imaging, satellite/geospatial annotation, and self-driving car dataset preparation. The about page states the project has been in active development for over 9 years, with the open-source repository accumulating 16,000+ stars and 3,680+ forks on GitHub.

## Features
- Polygon, rectangle, circle, line, and point annotation
- AI-assisted click-to-segment with SAM1, SAM2, EfficientSAM
- Text-prompt annotation with YOLO-World and SAM3
- Rectangle-to-polygon AI conversion
- 100% offline — no internet or API key required
- Batch AI annotation suppression for crowd objects
- Dataset toolkit with 10+ CLI tools (Pro)
- YOLO, YOLO-OBB, and Pascal VOC export formats (Pro)
- Video annotation support
- Image classification via image-level flags
- Rich annotation attributes (flags, text)
- GUI customization: predefined labels, auto-saving, label validation
- Multi-language support (20 languages)
- JSON annotation format
- Brightness/contrast adjustment without modifying original image
- Cross-platform standalone installers (macOS, Windows, Linux)

## Integrations
Ultralytics YOLO, PyTorch, TensorFlow, Roboflow, V7 Labs, Segmentation Models PyTorch, QGIS (geospatial workflows), COCO dataset format, Pascal VOC format, YOLO-OBB format

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, CLI

## Pricing
Open Source, Free tier available

## Version
v6.3.1

## Links
- Website: https://labelme.io
- Documentation: https://labelme.io/docs
- Repository: https://github.com/wkentaro/labelme
- EveryDev.ai: https://www.everydev.ai/tools/labelme
