LabelCraft - A modern graphical image annotation tool based on labelImg
Project description
LabelCraft - Modern Image Annotation Tool
.. image:: https://img.shields.io/pypi/v/labelcraft.svg :target: https://pypi.org/project/LabelCraft/ :alt: PyPI Version
.. image:: https://img.shields.io/pypi/pyversions/labelcraft.svg :target: https://pypi.org/project/LabelCraft/ :alt: Python Versions
.. image:: https://img.shields.io/github/license/syd168/LabelCraft.svg :target: https://github.com/syd168/LabelCraft/blob/master/LICENSE :alt: License
LabelCraft is a powerful and user-friendly graphical image annotation tool, enhanced from the popular labelImg project. It provides an intuitive interface for creating bounding box annotations for object detection and machine learning tasks.
✨ Key Features
- Multiple Format Support: Export annotations in PASCAL VOC (XML), YOLO (TXT), CreateML (JSON), COCO (JSON), and CSV formats
- Project Management: Create and manage annotation projects with organized directory structures
- Smart Workflow: Pending queue system for efficient batch annotation
- Multi-language Support: English, Simplified Chinese, Traditional Chinese, Japanese, German, French
- Image Enhancement: Real-time brightness adjustment for better visibility
- Flexible Navigation: Zoom, pan, and keyboard shortcuts for fast annotation
- Predefined Classes: Load and manage custom class labels
- Annotation Verification: Mark verified annotations for quality control
- Dark/Light Mode: Automatic theme adaptation for comfortable viewing
- Auto-save: Optional automatic saving when switching images
- Cross-platform: Works on Windows, macOS, and Linux
🚀 Quick Start
Installation
Install via pip::
pip install labelcraft
Or run from source::
git clone https://github.com/syd168/LabelCraft.git
cd LabelCraft
pip install -r requirements.txt
python main.py
Usage
~~~~~
Basic usage::
labelcraft # Start without parameters
labelcraft /path/to/images # Open images from directory
labelcraft --classes classes.txt # Use custom class file
labelcraft --save-dir ./output # Set default save directory
labelcraft --version # Show version
Command-line Options
image_dir: Directory containing images to annotate (optional)--classes, -c: Path to predefined classes file--save-dir, -s: Default directory to save annotations--version, -v: Display program version
📖 Documentation
For detailed tutorials and documentation, visit:
GitHub Repository <https://github.com/syd168/LabelCraft>_Installation Guide <https://github.com/syd168/LabelCraft/blob/master/doc/安装标注工具.md>_Tutorial (English) <https://github.com/syd168/LabelCraft/blob/master/doc/tutorial.md>_Tutorial (中文) <https://github.com/syd168/LabelCraft/blob/master/doc/tutorial_zh-CN.md>_
🛠️ Development
Requirements
- Python 3.8 or higher
- PySide6 >= 6.5.0
- lxml >= 4.9.0
Install dependencies::
pip install pyside6>=6.5.0 lxml>=4.9.0
💡 Tips
------
- Press ``W`` to start drawing bounding boxes
- Use ``D`` and ``A`` to navigate between images
- Press ``Space`` to verify current annotation
- Use mouse wheel to zoom, drag to pan
- Adjust brightness with Ctrl+Shift+[/]
📄 License
---------
MIT License - See LICENSE file for details
🙏 Acknowledgments
-----------------
This project is based on the original `labelImg <https://github.com/tzutalin/labelImg>`_ by TzuTa Lin.
Note: This project is actively maintained and enhanced with modern features.
History
1.8.8 (2025-04-12)
------------------
* Fixed i18n: Added get_str() instance method for all dialogs
* Fixed export: Enhanced image path detection for YOLO and CSV formats
* Fixed export: Added SameFileError check when copying images
* Fixed project close: Auto-save current image annotation before closing
* Updated start scripts to English output for international users
* Improved README with pip installation guide
* Removed deprecated language files (fa-FA, de-DE)
* Enhanced annotation converter with multi-location image search
1.8.7 (2024-XX-XX)
------------------
* Based on labelImg project
* Added modern UI improvements
* Enhanced multi-language support
* Added brightness adjustment feature
* Improved annotation workflow
* Added GitHub Actions CI/CD
Note: This project is a fork and enhancement of the original labelImg project.
=======
1.8.6 (2024-XX-XX)
------------------
* Based on labelImg project
* Added modern UI improvements
* Enhanced multi-language support
* Added brightness adjustment feature
* Improved annotation workflow
* Added GitHub Actions CI/CD
Note: This project is a fork and enhancement of the original labelImg project.
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 labelcraft-1.8.13.tar.gz.
File metadata
- Download URL: labelcraft-1.8.13.tar.gz
- Upload date:
- Size: 2.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13c3912fe80ae24cc1ec3d9203af62bd218fb411ce50117921b8dd7ac2534635
|
|
| MD5 |
5d2b3952830277df818294c4a921c45f
|
|
| BLAKE2b-256 |
90831e79e16846c547f62ad40b510e71566f6cd8d25d81a38b8ae180b45868b2
|
File details
Details for the file labelcraft-1.8.13-py2.py3-none-any.whl.
File metadata
- Download URL: labelcraft-1.8.13-py2.py3-none-any.whl
- Upload date:
- Size: 1.5 MB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf240be524bf58de89a5c8933ae66c19385977fd41afe7f418e9f6b062eed595
|
|
| MD5 |
0d4d343e425cec3e75e0dd3950caaf5a
|
|
| BLAKE2b-256 |
0660394520cdacf36899bb99bad41d39f878f30c09966b120086a273b7af290b
|