Skip to main content

A Python package for image annotation

Project description

Annotamate

Annotamate is a powerful, user-friendly, and highly customizable image annotation tool built with Python and CustomTkinter. Designed for efficiency, it supports bounding box annotation for object detection tasks and exports to popular formats like YOLO, Pascal VOC, and COCO.

Annotamate Banner

Features

  • Multi-Format Export: Save annotations in YOLO (.txt), Pascal VOC (.xml), and COCO (.json) formats.
  • Efficient Workflow: Optimized for speed with keyboard shortcuts for navigation, drawing, and editing.
  • Smart Editing:
    • Drag-and-drop box adjustment.
    • Resize handles for precision.
    • Easy class switching.
  • Modern UI:
    • Dark/Light Mode support.
    • Sidebar with object visibility toggles.
    • Zoom and Pan capabilities.
  • Batch Processing: Built-in batch renaming tool for dataset organization.
  • Class Management: Dynamic class addition/removal with color-coded visualization.

Installation

Prerequisites

  • Python 3.8 or higher

Install via pip

Clone the repository and install dependencies:

git clone https://github.com/yourusername/Annotamate.git
cd Annotamate
pip install .

Usage

Running the App

After installation, you can launch the application from anywhere using:

annotamate

Or run via python module:

python -m annotamate

Quick Start Guide

  1. Load Images: Click Folder Icon (Top Left) to open your image directory.
  2. Set Classes: Click Tag Icon to manage your class labels (e.g., person, car).
  3. Draw Boxes:
    • Press W to enter Rect Mode.
    • Click and drag to draw a box.
  4. Edit Boxes:
    • Press X for Edit Mode.
    • Drag corners to resize or center to move.
  5. Save: Press Ctrl+S to save annotations.

Keyboard Shortcuts

Key Action
W Draw Rectangle Mode
X Edit / Move Mode
A / D Previous / Next Image
Ctrl + S Save Annotation
Ctrl + Z Undo
Ctrl + Y Redo
Ctrl + Scroll Zoom In/Out
Right Click Delete/Undo Box

Development

To contribute or modify the code:

  1. Install in editable mode:
    pip install -e .
    
  2. Run tests (if available) or verify changes manually.

License

This project is licensed under the MIT License - see the LICENSE file for details.


Created by Rugved Jalit

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

annotamate-1.0.0.tar.gz (230.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

annotamate-1.0.0-py3-none-any.whl (228.4 kB view details)

Uploaded Python 3

File details

Details for the file annotamate-1.0.0.tar.gz.

File metadata

  • Download URL: annotamate-1.0.0.tar.gz
  • Upload date:
  • Size: 230.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for annotamate-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d15d292d5b8c24cc36613c2627e40dcd3980ca24fe47dcada6e9be8fc021dbb0
MD5 6b94317834730283c1403a5f58f3fbe0
BLAKE2b-256 1b60b2b3dd38cbd9b293465bcdc4fa00725580f370608a77abbde5154b4ffc96

See more details on using hashes here.

File details

Details for the file annotamate-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: annotamate-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 228.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for annotamate-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0283b5d0d323f526484575128c72a3710fc03ac071244ebc76e89b0f881bf30d
MD5 9c0db309202883468e58189e2a323852
BLAKE2b-256 c93ffabdb2401e639c59e4438efd9d153bb0c39e639d9a91acedaac0b4a31fa1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page