BakuFlow is a cutting-edge image annotation tool that revolutionizes object detection dataset creation. Developed by BakuAI AS (2024), it seamlessly combines traditional manual labeling with state-of-the-art AI-powered automatic annotation, making professional-grade annotation accessible to everyone.
โจ 10x Faster Annotation - AI-powered visual prompts reduce manual work by up to 90%
๐ฏ Professional Grade - Used by leading computer vision teams and researchers
๐ Zero Learning Curve - Intuitive interface with comprehensive keyboard shortcuts
๐ง Fully Customizable - Support for custom models, classes, and workflows
๐ Production Ready - Robust error handling, auto-save, and batch processing
- ๐จ Visual Prompt Auto-Labeling: Revolutionary approach using your own annotations as AI training examples
- โก YOLO-E Integration: Leverages cutting-edge YOLOE models with custom BakuFlow optimizations
- ๐ฆ Intelligent Batch Processing: Process entire datasets with consistent, high-quality results
- ๐ง Adaptive Learning: AI improves accuracy based on your annotation patterns and feedback
- ๐ฅ YOLO Format: Native support with normalized coordinates (industry standard)
- ๐ Pascal VOC: XML format compatibility for legacy workflows
- ๐ COCO Format: JSON format for complex annotation projects
- ๐ Real-time Format Switching: Change formats anytime without data loss
- ๐ช Advanced Bounding Boxes: Sub-pixel precision with intelligent snapping
- ๐๏ธ Multi-Selection Power: Bulk operations with Ctrl+Click selection system
- ๐ Professional Magnifier: 2x-8x zoom with pixel-perfect accuracy
- โช Smart Undo/Redo: Per-image history tracking with unlimited levels
- ๐ท๏ธ Dynamic Class Management: Hot-swappable classes with visual color coding
- ๐จ Intelligent Color Legend: Auto-generated, resizable legend with class statistics
- ๐ Label Propagation: Copy annotations across sequential and consecutive images
- ๐พ Bulletproof Auto-Save: Never lose work with intelligent background saving
- โจ๏ธ Power User Shortcuts: 10+ keyboard shortcuts for lightning-fast workflows
- ๐ Global Localization: 8 languages with intelligent locale detection
- ๐ฅ๏ธ Responsive UI: Adaptive interface optimized for any screen size
- ๐๏ธ Advanced Data Augmentation: Built-in batch transformations with preview
# 1. Clone BakuFlow
git clone https://github.com/bakuai-as/BakuFlow.git
cd BakuFlow
# 2. Install base dependencies
pip install -r requirements.txt
# 3. Setup AI features (automated)
python setup_yoloe.py
# 4. Launch BakuFlow
python bakuai-labelimg.py
# 1. Clone and install
git clone https://github.com/bakuai-as/BakuFlow.git
cd BakuFlow
pip install -r requirements.txt
# 2. Start labeling immediately
python bakuai-labelimg.py
๐ก Pro Tip: Method 1 gives you AI superpowers, Method 2 is perfect for getting started quickly!
Component | Minimum | Recommended | Enterprise |
---|---|---|---|
OS | Windows 10, macOS 10.14, Ubuntu 18.04 | Latest versions | Latest + server support |
Python | 3.8+ | 3.9+ | 3.10+ |
RAM | 8GB | 16GB | 32GB+ |
GPU | Not required | GTX 1060+ / RTX 2060+ | RTX 3080+ / A100 |
Storage | 2GB free | 10GB SSD | 100GB+ NVMe |
CPU | 4 cores | 8 cores | 16+ cores |
BakuFlow/ # ๐ Your AI annotation powerhouse
โโโ ๐ bakuai-labelimg.py # Main application entry point
โโโ ๐ setup_yoloe.py # Automated AI setup wizard
โโโ ๐ test_yoloe_setup.py # Installation verification
โโโ ๐ labelimg/ # Core application engine
โ โโโ ๐จ gui/ # Modern Qt5 interface
โ โโโ โ๏ธ core/ # Business logic & algorithms
โ โโโ ๐ค inference/ # AI inference pipeline
โ โโโ ๐พ io/ # Multi-format I/O handlers
โ โโโ ๐๏ธ controller/ # MVC controllers
โ โโโ ๐ฎ yoloe/ # AI models (auto-installed)
โโโ ๐ฏ yoloe_patches/ # BakuFlow AI optimizations
โโโ ๐๏ธ pretrain/ # Pre-trained model storage
โโโ ๐ resources/ # Assets & configurations
1. ๐ Launch: python bakuai-labelimg.py
2. ๐ Open: File > Open Directory (or press 'O')
3. ๐ท๏ธ Classes: Create/select classes.txt when prompted
4. ๐ Format: Choose YOLO/VOC/COCO format (top-left dropdown)
5. ๐จ Annotate: Draw boxes, assign classes, navigate with F/D
6. ๐พ Save: Press 'S' or enable Auto-Save for peace of mind
1. ๐ Manual Examples: Label 5-10 representative images manually
2. ๐ฏ Select Prompts: Pick your best examples as AI training data
3. ๐ AI Magic: Auto Label > Visual Prompt Auto Labeling
4. โ
Review & Refine: Check AI results, make corrections
5. ๐ฆ Batch Apply: Process hundreds of images automatically
6. ๐ Done: Export your massive, high-quality dataset!
- ๐ช Multi-Select:
Ctrl+Click
for bulk operations - ๐ Smart Copy: Press
C
to copy labels to similar images - ๐ Precision Mode: Press
M
for magnifier when details matter - โก Speed Navigation: Use
F/D
orโ/โ
for rapid image browsing - ๐๏ธ Batch Magic: Data Augmentation menu for dataset expansion
Shortcut | Action | Pro Tip |
---|---|---|
O |
Open Directory | Start of every session |
S |
Save Annotations | Ctrl+S also works |
F / D |
Next/Previous Image | Fastest navigation |
โ / โ |
Next/Previous Image | Alternative navigation |
E / Delete |
Delete Selected | Works with multi-select |
C |
Toggle Label Copy | Copy to similar images |
M |
Toggle Magnifier | Essential for precision |
Q |
Quit Application | Auto-saves before exit |
Ctrl+Click |
Multi-Select Boxes | Bulk operations |
Ctrl+Z |
Undo (per image) | Unlimited undo levels |
Ctrl+Y |
Redo (per image) | Recover undone actions |
Space |
Toggle between tools | Quick tool switching |
Our intelligent setup wizard handles everything:
python setup_yoloe.py
What it does automatically:
- โ Downloads and configures YOLOE
- โ Applies BakuFlow performance optimizations
- โ Downloads pre-trained models (2GB+)
- โ Verifies installation with comprehensive tests
- โ Provides detailed success/failure reports
For those who prefer control:
# 1. Clone YOLOE
git clone https://github.com/THU-MIG/yoloe.git labelimg/yoloe
# 2. Install YOLOE dependencies
cd labelimg/yoloe
pip install -r requirements.txt
pip install -e .
cd ../..
# 3. Apply BakuFlow optimizations
cp yoloe_patches/predict_vp.py labelimg/yoloe/ultralytics/models/yolo/yoloe/
# 4. Download models
pip install huggingface-hub
huggingface-cli download jameslahm/yoloe yoloe-v8l-seg.pt --local-dir pretrain
huggingface-cli download jameslahm/yoloe yoloe-11l-seg.pt --local-dir pretrain
# 5. Verify installation
python test_yoloe_setup.py
Model | Size | Speed | Accuracy | Best For |
---|---|---|---|---|
yoloe-v8s-seg.pt |
๐ธ Small (50MB) | โก Very Fast | ๐ฏ Good | Quick prototyping |
yoloe-v8m-seg.pt |
๐น Medium (100MB) | โก Fast | ๐ฏ Better | Balanced workflows |
yoloe-v8l-seg.pt |
๐ถ Large (200MB) | ๐ Medium | ๐ฏ Excellent | Production quality |
yoloe-11l-seg.pt |
๐ถ Large (200MB) | ๐ Medium | ๐ฏ Best | Maximum accuracy |
# Create language_config.py in root directory
LANGUAGE = 'en' # Options: 'en', 'zh-tw', 'zh-cn', 'ja', 'it', 'de', 'no', 'es', 'fr'
# Models auto-download to pretrain/ folder
# Customize in labelimg/inference/yoloe_vp_discard.py:
MODEL_PATH = "pretrain/yoloe-v8l-seg.pt" # Change as needed
- Magnifier Zoom: 2x, 4x, 6x, 8x levels available
- Color Themes: Automatic dark/light mode detection
- Panel Layout: Drag-and-drop resizable panels
- Shortcut Mapping: Fully customizable in settings
๐ Basic Issues
Q: Why can't I see my classes?
โ
Ensure classes.txt
exists in your image folder. BakuFlow will prompt you to create one.
Q: How do I change export formats?
โ
Use the dropdown in the top-left corner. You can switch anytime without losing data.
Q: Application crashes on startup?
โ
Run: pip install --upgrade PyQt5
and ensure Python 3.8+
๐ค AI Features
Q: AI auto-labeling not working?
โ
Check: (1) YOLOE installed via python setup_yoloe.py
, (2) classes.txt loaded, (3) models downloaded
Q: How many example images do I need?
โ
Minimum 3-5 per class, recommended 10-15 for best results
Q: Can I use custom AI models?
โ
Yes! Place .pt
files in pretrain/
and update the model path in code
Q: AI is slow on my machine?
โ
BakuFlow auto-detects GPU. For CPU-only, expect slower processing but same quality
๐ Advanced Usage
Q: Batch processing multiple folders?
โ
Use the Data Augmentation menu for batch operations across datasets
Q: Custom keyboard shortcuts?
โ
Modify labelimg/gui/main_window.py
keyboard binding sections
Q: Integration with other tools?
โ
BakuFlow outputs standard formats compatible with most ML pipelines
BakuFlow's revolutionary visual prompt system:
- ๐ฏ Example-Based Learning: AI learns from your annotation style
- ๐ Iterative Improvement: Gets better with more examples
- ๐จ Style Transfer: Maintains consistency across your dataset
- โก Real-time Adaptation: Adjusts to different image conditions
Professional-grade data expansion:
- ๐ Geometric Transforms: Rotation, flipping, scaling with bbox preservation
- ๐จ Photometric Adjustments: Brightness, contrast, saturation, hue
- ๐ฆ Batch Processing: Apply to entire datasets with progress tracking
- ๐๏ธ Live Preview: See changes before applying
- ๐ Annotation Statistics: Real-time metrics and class distribution
- ๐ Validation Checks: Detect malformed annotations automatically
- ๐ Progress Tracking: Visual progress indicators across datasets
- ๐พ Backup & Recovery: Automatic backup system prevents data loss
This software is released under a custom license with the following terms:
Academic Use (Free with Registration)
- โ Allowed for research, educational, and non-commercial purposes
- โน๏ธ Acknowledgment/citation required in publications
- ๐ง Register your academic institution with post@bakuai.no
Commercial Use
- โ Requires separate commercial license
- ๐ผ Contact post@bakuai.no for commercial licensing details
- ๐ข Enterprise solutions available
For academic use, please include this acknowledgment:
@misc{linbakuflow2025,
title={BakuFlow: A Streamlining Semi-Automatic Label Generation Tool},
author={Jerry Lin and Partick P. W. Chen},
year={2025},
eprint={2503.07465},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2503.07465},
}
Technical Support
- ๐ง Email: post@bakuai.no
- ๐ Issues: GitHub Issues
Contributing
- Pull requests and issues are welcome!
- Submit bug reports, feature requests, or improvements via GitHub
- Check our contributing guidelines before submitting
Commercial Inquiries
- Commercial Licensing: post@bakuai.no
- Enterprise Solutions: post@bakuai.no
- Academic Partnerships: post@bakuai.no
BakuFlow is originally developed by Dr. Jerry Chun-Wei Lin, together with Patrick Chen and modern AI-assisted development tools (Cursor, VSCode + Deepseek/Gemini/Claude), and maintained by the Innovation Team at BakuAI AS, Norway.
Core Contributors:
- Dr. Jerry Chun-Wei Lin - Lead Developer & AI Architecture
- Patrick Chen - Frontend Development & User Experience
- BakuAI Innovation Team - Ongoing Development & Maintenance
Made with โค๏ธ by BakuAI Team - Making Professional Annotation Simple
BakuFlow leverages several outstanding open-source projects:
- YOLOE: Real-Time Seeing Anything by THU-MIG (AGPL-3.0)
- PyQt5: Cross-platform GUI framework
- OpenCV: Computer vision library
- PyTorch: Deep learning framework
Citation for YOLOE:
@misc{wang2025yoloerealtimeseeing,
title={YOLOE: Real-Time Seeing Anything},
author={Ao Wang and Lihao Liu and Hui Chen and Zijia Lin and Jungong Han and Guiguang Ding},
year={2025},
eprint={2503.07465},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2503.07465},
}
Q: Why can't I see my classes?
A: Make sure classes.txt
exists in your image folder. You can create or import it via the UI prompt.
Q: How do I export to different formats?
A: Select the desired format (YOLO/VOC/COCO) at the top left before saving. The tool will output the correct file type.
Q: How do I use AI auto-labeling?
A: First manually label a few representative images, then use them as visual prompts via Auto Label > Visual Prompt Auto Labeling
. See the YOLOE Setup section above for detailed instructions.
Q: AI auto-labeling not working?
A: Check: (1) YOLOE is properly installed in labelimg/yoloe/
, (2) Classes.txt file is loaded, (3) Prompt images are properly labeled, (4) Pre-trained models are downloaded to pretrain/
folder.
Q: How do I batch operations?
A: Hold Ctrl and click to select multiple boxes, then use Delete, Copy Labels, or other batch operations.
Q: Application crashes on startup?
A: Update PyQt5: pip install --upgrade PyQt5
, ensure Python 3.8+, check all dependencies are installed.
Q: Where do I get the YOLOE models?
A: Models are automatically downloaded from Hugging Face. See the "Download Pre-trained Models" section above for manual download instructions.
Q: Can I use my own YOLOE models?
A: Yes! Place your custom .pt
model files in the pretrain/
folder and update the model path in the code.