← all repositories
CSAILVision/LabelMeAnnotationTool

The granddaddy of web-based image annotation still runs on Perl and Apache

MIT's LabelMe tool lets teams annotate images through a browser instead of shipping datasets around.

1.5k stars JavaScript Data ToolingComputer Vision
LabelMeAnnotationTool
Velocity · 7d
+0.3
★ / day
Trend
steady
star history

What it does

LabelMe is a browser-based image annotation tool born at MIT CSAIL in 2008. You host it on your own Apache server, dump images in a folder, and users draw polygons, scribbles, and labels through a web interface. Annotations land as XML files on disk—no database required.

The interesting bit

The whole thing predates modern CVAT or Label Studio by a decade, yet it still ships with a Mechanical Turk mode and granular URL-parameter permissions (actions=rmd lets you rename, modify, delete but not create). The server stack is a time capsule: Perl CGI for the backend, PHP 5.6, and server-side includes for SVG drawing.

Key highlights

  • Self-hosted; no cloud dependency or dataset upload
  • Mechanical Turk integration with sandbox mode and custom instructions
  • Granular permission control via single-letter URL flags (n, r, m, d, a, v)
  • Scribble mode for segmentation masks alongside polygon annotations
  • Docker files included, though the README still leads with Apache/Perl setup

Caveats

  • Requires Apache with SSI enabled and Perl CGI; the README calls these “the most common source of errors”
  • PHP 5.6 is explicitly required, which reached end-of-life in 2018
  • Images must be .jpg with alphanumeric filenames—“no spaces or funny characters”

Verdict

Worth a look if you need a dead-simple, air-gapped annotation setup and don’t mind tending a LAMP stack. Everyone else should probably use something from this decade.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.