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.
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
- Load Images: Click Folder Icon (Top Left) to open your image directory.
- Set Classes: Click Tag Icon to manage your class labels (e.g., person, car).
- Draw Boxes:
- Press
Wto enter Rect Mode. - Click and drag to draw a box.
- Press
- Edit Boxes:
- Press
Xfor Edit Mode. - Drag corners to resize or center to move.
- Press
- Save: Press
Ctrl+Sto 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:
- Install in editable mode:
pip install -e .
- 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d15d292d5b8c24cc36613c2627e40dcd3980ca24fe47dcada6e9be8fc021dbb0
|
|
| MD5 |
6b94317834730283c1403a5f58f3fbe0
|
|
| BLAKE2b-256 |
1b60b2b3dd38cbd9b293465bcdc4fa00725580f370608a77abbde5154b4ffc96
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0283b5d0d323f526484575128c72a3710fc03ac071244ebc76e89b0f881bf30d
|
|
| MD5 |
9c0db309202883468e58189e2a323852
|
|
| BLAKE2b-256 |
c93ffabdb2401e639c59e4438efd9d153bb0c39e639d9a91acedaac0b4a31fa1
|