🌟 AnyLabeling 🌟
Effortless data labeling with AI support from YOLO and Segment Anything!
AnyLabeling = LabelImg + Labelme + Improved UI + Auto-labeling
- Youtube Demo: https://youtu.be/5qVJiYNX5Kk (opens in a new tab)
- Documentation: https://anylearning.nrl.ai (opens in a new tab)
Features:
- Image annotation for polygon, rectangle, circle, line and point.
- Auto-labeling with YOLOv5 and Segment Anything.
- Text detection, recognition and KIE (Key Information Extraction) labeling.
- Multiple languages availables: English, Vietnamese, Chinese.
I. Install and run
1. Download and run executable
- Download and run newest version from Releases (opens in a new tab).
- For MacOS:
- After installing, go to Applications folder
- Right click on the app and select Open
- From the second time, you can open the app normally using Launchpad
2. Install from Pypi
-
Requirements: Python >= 3.8, <= 3.10.
-
Recommended: Miniconda/Anaconda (opens in a new tab).
-
Create environment:
conda create -n anylabeling python=3.8
conda activate anylabeling
- (For macOS only) Install PyQt5 using Conda:
conda install -c conda-forge pyqt==5.15.7
- Install anylabeling:
pip install anylabeling # or pip install anylabeling-gpu for GPU support
- Start labeling:
anylabeling
II. Development
- Generate resources:
pyrcc5 -o anylabeling/resources/resources.py anylabeling/resources/resources.qrc
- Run app:
python anylabeling/app.py
III. Build executable
- Install PyInstaller:
pip install -r requirements-dev.txt
- Build:
bash build_executable.sh
- Check the outputs in:
dist/
.
IV. Contribution
If you want to contribute to AnyLabeling, please read Contribution Guidelines (opens in a new tab).
V. Star history
VI. References
- Labeling UI built with ideas and components from LabelImg (opens in a new tab), LabelMe (opens in a new tab).
- Auto-labeling with Segment Anything Models (opens in a new tab).
- Auto-labeling with YOLOv5 (opens in a new tab), YOLOv8 (opens in a new tab).