# Annotex 🚀
**AI-Powered Annotation Tool for Computer Vision Datasets**
[](https://www.python.org/downloads/)
<!-- [](https://opensource.org/licenses/MIT) -->
<!-- [](https://badge.fury.io/py/annotex) -->
<!-- [](https://pepy.tech/project/annotex) -->
Annotex is a professional-grade annotation tool designed for creating high-quality computer vision datasets. With AI-powered assistance and an intuitive interface, it streamlines the annotation process for machine learning practitioners.

## ✨ Features
### 🎯 **Professional Annotation Tools**
- **Rectangle Annotation** - Precise bounding box creation
- **AI-Assisted Annotation** - Auto-annotation with pre-trained YOLO models
- **Batch Processing** - Process multiple images simultaneously
### 🔧 **Advanced Workflow**
- **Project Management** - Save/load projects (.anno format)
- **Class Management** - Dynamic class creation with custom colors
- **Export Formats** - YOLO11, YOLOv8, compatible
- **Quality Control** - Confidence scoring and validation
### 🚀 **Performance Optimized**
- **Memory Efficient** - Handles large datasets smoothly
- **Real-time Preview** - Instant annotation feedback
- **Keyboard Shortcuts** - Professional workflow acceleration
## 📦 Installation
### Quick Install
```bash
pip install annotex
```
## 🚀 Quick Start
### Launch Annotex
```bash
# Start the GUI
annotex
# Or
python -m annotex.main
# Load a project
annotex --project my_project.anno
# Load images from directory
annotex --images /path/to/images
```
### Basic Workflow
1. **Load Images** - Import your image dataset
2. **Create Classes** - Define annotation classes
3. **Annotate** - Create bounding boxes manually or with AI
4. **Export** - Generate YOLO-format dataset
## 📚 Documentation
### Keyboard Shortcuts
| Category | Shortcut | Action |
|----------|----------|--------|
| **Navigation** | `Left Arrow` | Previous image |
| | `Right Arrow` | Next image |
| | `Home` | First image |
| | `End` | Last image |
| | `Ctrl + +` | Zoom in |
| | `Ctrl + -` | Zoom out |
| | `Ctrl + 0` | Zoom fit |
| | `Ctrl + R` | Reset view |
| **File Operations** | `Ctrl + N` | New project |
| | `Ctrl + O` | Open project |
| | `Ctrl + S` | Save current |
| | `Ctrl + Shift + S` | Save project |
| | `Ctrl + I` | Load images |
| | `Ctrl + E` | Export dataset |
| **Editing** | `Ctrl + Z` | Undo |
| | `Ctrl + C` | Copy annotation |
| | `Ctrl + V` | Paste annotation |
| | `Delete` | Delete selected |
| | `Ctrl + Shift + C` | Clear all |
| | `R` | Rectangle tool |
| **Tools & Classes** | `1-9` | Select class by number |
| | `F1` | Show shortcuts |
| | `Middle Click + Drag` | Pan image |
| | `Mouse Wheel` | Zoom in/out |
| | `Right Click` | Context menu |
## 🎨 Interface Overview
### Main Components
- **Tools Panel** - Annotation tools and class management
- **Image Viewer** - Zoomable canvas with annotation overlay
- **Image List** - Project image management
- **Export Panel** - Dataset export configuration
### Advanced Features
- **Semi-Automated Annotation** - Pre-trained AI model integration
- **Batch Processing** - Multi-image operations
- **Quality Metrics** - Annotation statistics and validation
- **Custom Export** - Flexible dataset formats (Currently:only YOLO formats)
## 🤖 AI Integration
### Supported Models
- **YOLO11** - Proven performance
- **Custom Models** - Load your own trained models
### Auto-Annotation Workflow
```bash
1. Load pre-trained model (.pt file)
2. Set confidence threshold
3. Run individual or batch annotation
4. Review and refine results
5. Export final dataset
Possible Usage: Pre-train your AI model on a small dataset and use that model to annotate the rest of the dataset.
```
## 🏗️ Roadmap
### Version 2.2 (Coming Soon)
- [ ] Polygon annotation tool
- [ ] Point annotation support
- [ ] Brush/segmentation tool
- [ ] COCO format export
- [ ] Pascal VOC format support
### Version 2.3 (Planned)
<!-- - [ ] Cloud storage integration -->
- [ ] Team collaboration features
- [ ] Advanced AI suggestions
<!-- - [ ] Mobile app companion -->
## 📞 Support
- 📧 **Email**: randikamk.96@gmail.com
## 🌟 Acknowledgments
- [Ultralytics](https://ultralytics.com/) for YOLO implementation
- [OpenCV](https://opencv.org/) for computer vision tools
- [Tkinter](https://docs.python.org/3/library/tkinter.html) for GUI framework
---
**⭐ Star us on GitHub if Annotex helps your projects!**
Made by [Randika](https://github.com/RandikaKM)
Raw data
{
"_id": null,
"home_page": "https://github.com/RandikaKM/annotex",
"name": "annotex",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "annotation, computer-vision, AI, machine-learning, YOLO, dataset",
"author": "Randika K. Makumbura",
"author_email": "\"Randika K. Makumbura\" <randikamk.96@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d7/32/77ecfb2cc94a1ddf33118388b358ddb1841082c52c2b7d524c8d8ca3d371/annotex-2.0.7.tar.gz",
"platform": null,
"description": "# Annotex \ud83d\ude80\r\n\r\n**AI-Powered Annotation Tool for Computer Vision Datasets**\r\n\r\n[](https://www.python.org/downloads/)\r\n<!-- [](https://opensource.org/licenses/MIT) -->\r\n<!-- [](https://badge.fury.io/py/annotex) -->\r\n<!-- [](https://pepy.tech/project/annotex) -->\r\n\r\nAnnotex is a professional-grade annotation tool designed for creating high-quality computer vision datasets. With AI-powered assistance and an intuitive interface, it streamlines the annotation process for machine learning practitioners.\r\n\r\n\r\n\r\n## \u2728 Features\r\n\r\n### \ud83c\udfaf **Professional Annotation Tools**\r\n- **Rectangle Annotation** - Precise bounding box creation\r\n- **AI-Assisted Annotation** - Auto-annotation with pre-trained YOLO models\r\n- **Batch Processing** - Process multiple images simultaneously\r\n\r\n### \ud83d\udd27 **Advanced Workflow**\r\n- **Project Management** - Save/load projects (.anno format)\r\n- **Class Management** - Dynamic class creation with custom colors\r\n- **Export Formats** - YOLO11, YOLOv8, compatible\r\n- **Quality Control** - Confidence scoring and validation\r\n\r\n### \ud83d\ude80 **Performance Optimized**\r\n- **Memory Efficient** - Handles large datasets smoothly\r\n- **Real-time Preview** - Instant annotation feedback\r\n- **Keyboard Shortcuts** - Professional workflow acceleration\r\n\r\n## \ud83d\udce6 Installation\r\n\r\n### Quick Install\r\n```bash\r\npip install annotex\r\n```\r\n\r\n## \ud83d\ude80 Quick Start\r\n\r\n### Launch Annotex\r\n```bash\r\n# Start the GUI\r\nannotex\r\n\r\n# Or\r\npython -m annotex.main\r\n\r\n# Load a project\r\nannotex --project my_project.anno\r\n\r\n# Load images from directory\r\nannotex --images /path/to/images\r\n```\r\n\r\n### Basic Workflow\r\n1. **Load Images** - Import your image dataset\r\n2. **Create Classes** - Define annotation classes\r\n3. **Annotate** - Create bounding boxes manually or with AI\r\n4. **Export** - Generate YOLO-format dataset\r\n\r\n## \ud83d\udcda Documentation\r\n\r\n### Keyboard Shortcuts\r\n\r\n| Category | Shortcut | Action |\r\n|----------|----------|--------|\r\n| **Navigation** | `Left Arrow` | Previous image |\r\n| | `Right Arrow` | Next image |\r\n| | `Home` | First image |\r\n| | `End` | Last image |\r\n| | `Ctrl + +` | Zoom in |\r\n| | `Ctrl + -` | Zoom out |\r\n| | `Ctrl + 0` | Zoom fit |\r\n| | `Ctrl + R` | Reset view |\r\n| **File Operations** | `Ctrl + N` | New project |\r\n| | `Ctrl + O` | Open project |\r\n| | `Ctrl + S` | Save current |\r\n| | `Ctrl + Shift + S` | Save project |\r\n| | `Ctrl + I` | Load images |\r\n| | `Ctrl + E` | Export dataset |\r\n| **Editing** | `Ctrl + Z` | Undo |\r\n| | `Ctrl + C` | Copy annotation |\r\n| | `Ctrl + V` | Paste annotation |\r\n| | `Delete` | Delete selected |\r\n| | `Ctrl + Shift + C` | Clear all |\r\n| | `R` | Rectangle tool |\r\n| **Tools & Classes** | `1-9` | Select class by number |\r\n| | `F1` | Show shortcuts |\r\n| | `Middle Click + Drag` | Pan image |\r\n| | `Mouse Wheel` | Zoom in/out |\r\n| | `Right Click` | Context menu |\r\n\r\n## \ud83c\udfa8 Interface Overview\r\n\r\n### Main Components\r\n- **Tools Panel** - Annotation tools and class management\r\n- **Image Viewer** - Zoomable canvas with annotation overlay\r\n- **Image List** - Project image management\r\n- **Export Panel** - Dataset export configuration\r\n\r\n### Advanced Features\r\n- **Semi-Automated Annotation** - Pre-trained AI model integration\r\n- **Batch Processing** - Multi-image operations\r\n- **Quality Metrics** - Annotation statistics and validation\r\n- **Custom Export** - Flexible dataset formats (Currently:only YOLO formats)\r\n\r\n## \ud83e\udd16 AI Integration\r\n\r\n### Supported Models\r\n- **YOLO11** - Proven performance\r\n- **Custom Models** - Load your own trained models\r\n\r\n### Auto-Annotation Workflow\r\n```bash\r\n1. Load pre-trained model (.pt file)\r\n2. Set confidence threshold\r\n3. Run individual or batch annotation\r\n4. Review and refine results\r\n5. Export final dataset\r\n\r\nPossible Usage: Pre-train your AI model on a small dataset and use that model to annotate the rest of the dataset.\r\n```\r\n\r\n## \ud83c\udfd7\ufe0f Roadmap\r\n\r\n### Version 2.2 (Coming Soon)\r\n- [ ] Polygon annotation tool\r\n- [ ] Point annotation support\r\n- [ ] Brush/segmentation tool\r\n- [ ] COCO format export\r\n- [ ] Pascal VOC format support\r\n\r\n### Version 2.3 (Planned)\r\n<!-- - [ ] Cloud storage integration -->\r\n- [ ] Team collaboration features\r\n- [ ] Advanced AI suggestions\r\n<!-- - [ ] Mobile app companion -->\r\n\r\n## \ud83d\udcde Support\r\n\r\n- \ud83d\udce7 **Email**: randikamk.96@gmail.com\r\n\r\n## \ud83c\udf1f Acknowledgments\r\n\r\n- [Ultralytics](https://ultralytics.com/) for YOLO implementation\r\n- [OpenCV](https://opencv.org/) for computer vision tools\r\n- [Tkinter](https://docs.python.org/3/library/tkinter.html) for GUI framework\r\n\r\n---\r\n\r\n**\u2b50 Star us on GitHub if Annotex helps your projects!**\r\n\r\nMade by [Randika](https://github.com/RandikaKM)\r\n",
"bugtrack_url": null,
"license": "RKM",
"summary": "Annotation Tool for Computer Vision Datasets",
"version": "2.0.7",
"project_urls": {
"Bug Tracker": "https://github.com/RandikaKM/annotex/issues",
"Homepage": "https://github.com/RandikaKM/annotex",
"Repository": "https://github.com/RandikaKM/annotex"
},
"split_keywords": [
"annotation",
" computer-vision",
" ai",
" machine-learning",
" yolo",
" dataset"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a279cc8599f04407fcca011d400187232139c6f53a02a26591301b5b605d324f",
"md5": "81c9d1c6da24cbb016eaac83501e4eb0",
"sha256": "2bc51d529fc25d859e418e649cdd7cc22a4293588080d72044351a5b8317461e"
},
"downloads": -1,
"filename": "annotex-2.0.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "81c9d1c6da24cbb016eaac83501e4eb0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 108678,
"upload_time": "2025-08-27T16:27:43",
"upload_time_iso_8601": "2025-08-27T16:27:43.618804Z",
"url": "https://files.pythonhosted.org/packages/a2/79/cc8599f04407fcca011d400187232139c6f53a02a26591301b5b605d324f/annotex-2.0.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d73277ecfb2cc94a1ddf33118388b358ddb1841082c52c2b7d524c8d8ca3d371",
"md5": "4137b8f43734b6b25a8db9c2fdef115e",
"sha256": "2aefcaffcdfec85549d44b8f43d39bb2adc6533b9c7861878ee59684c1cfedbc"
},
"downloads": -1,
"filename": "annotex-2.0.7.tar.gz",
"has_sig": false,
"md5_digest": "4137b8f43734b6b25a8db9c2fdef115e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 1617197,
"upload_time": "2025-08-27T16:27:44",
"upload_time_iso_8601": "2025-08-27T16:27:44.963588Z",
"url": "https://files.pythonhosted.org/packages/d7/32/77ecfb2cc94a1ddf33118388b358ddb1841082c52c2b7d524c8d8ca3d371/annotex-2.0.7.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-27 16:27:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "RandikaKM",
"github_project": "annotex",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "numpy",
"specs": [
[
">=",
"1.21.0"
]
]
},
{
"name": "opencv-python",
"specs": [
[
">=",
"4.5.0"
]
]
},
{
"name": "Pillow",
"specs": [
[
">=",
"8.0.0"
]
]
},
{
"name": "PyYAML",
"specs": [
[
">=",
"5.4.0"
]
]
},
{
"name": "tkinter-defaults",
"specs": [
[
">=",
"1.0.0"
]
]
},
{
"name": "ultralytics",
"specs": [
[
">=",
"8.0.0"
]
]
},
{
"name": "torch",
"specs": [
[
">=",
"1.9.0"
]
]
},
{
"name": "torchvision",
"specs": [
[
">=",
"0.10.0"
]
]
},
{
"name": "pytest",
"specs": [
[
">=",
"6.0.0"
]
]
},
{
"name": "black",
"specs": [
[
">=",
"21.0.0"
]
]
},
{
"name": "flake8",
"specs": [
[
">=",
"3.9.0"
]
]
},
{
"name": "mypy",
"specs": [
[
">=",
"0.910"
]
]
},
{
"name": "sphinx",
"specs": [
[
">=",
"4.0.0"
]
]
},
{
"name": "sphinx-rtd-theme",
"specs": [
[
">=",
"0.5.0"
]
]
}
],
"lcname": "annotex"
}