Releases: developer0hye/Yolo_Label
Release list
v3.1.1
What's Changed
Bug Fixes
- Fix: Load Model dialog too dark on Linux — The file dialog was unreadable (dark text on dark background) on platforms using Qt's fallback (non-native) file dialog. Fixed by passing
nullptrinstead ofthisas the parent, preventing the MainWindow dark stylesheet from cascading into the dialog. (#124)
Docs
- Clarify that Ctrl+Arrow resize shortcut keeps the top-left corner fixed (#121)
Full Changelog: v3.1.0...v3.1.1
Contributors
Thanks to @dennisushi for reporting the dark dialog issue (#122).
What's Changed
- docs: clarify resize shortcut keeps top-left corner fixed by @developer0hye in #121
- fix: prevent dark stylesheet from cascading into Load Model dialog by @developer0hye in #124
Full Changelog: v3.1.0...v3.1.1
v3.1.0
What's New
Bounding Box Resize via Keyboard (#120)
You can now resize bounding boxes using keyboard shortcuts without deleting and redrawing them:
| Shortcut | Action |
|---|---|
Ctrl + Arrow Keys (Win/Linux) / Cmd + Arrow Keys (macOS) |
Resize box (~1-2px step) |
Ctrl + Shift + Arrow Keys (Win/Linux) / Cmd + Shift + Arrow Keys (macOS) |
Resize box (~5px step) |
The top-left corner stays fixed while the right/bottom edges adjust. Undo (Ctrl+Z / Cmd+Z) works as expected.
Documentation
- Added EfficientSAM3 analysis to SAM document (#119)
- Added SAM pseudo labeling analysis (#118)
- Updated README for macOS signed distribution (#117)
Full Changelog: v3.0.0...v3.1.0
What's Changed
- docs: update README for macOS signed distribution by @developer0hye in #117
- docs: add SAM pseudo labeling analysis by @developer0hye in #118
- docs: add EfficientSAM3 analysis by @developer0hye in #119
- feat: add Ctrl+Arrow shortcut for bounding box resizing by @developer0hye in #120
Full Changelog: v3.0.0...v3.1.0
v3.0.0
What's New in v3.0.0
Auto-Label (Pseudo Labeling) — The Headline Feature
Tired of drawing every single bounding box by hand? v3.0.0 introduces local YOLO inference powered by ONNX Runtime. Export any Ultralytics detection model to .onnx, load it into YOLO-Label, and let the model do the heavy lifting.
- One-file setup — A single
.onnxfile is all you need. Class names, input size, and model configuration are all read from the ONNX metadata automatically. No separate config files, no manual setup. - Supported models — YOLOv5, YOLOv8, YOLO11, YOLO12, YOLOv26, and end-to-end models (NMS baked in). Any current and future Ultralytics detection model that follows the same ONNX export format should just work.
- Per-image or batch processing — Click Auto Label (or press
R) to detect objects on the current image, or Auto Label All to batch-process every image in the dataset. - Adjustable confidence threshold — Use the slider to control detection sensitivity (default 25%).
- Fully editable results — Auto-labeled boxes can be moved, deleted, class-changed, or undone (
Ctrl+Z) using all existing annotation tools. - Class list mismatch warning — If the loaded model's class list doesn't match the current dataset's class file, YOLO-Label warns you and disables auto-labeling to prevent incorrect annotations.
- Skip class file entirely — If the model has embedded class names (all Ultralytics exports do), they will be loaded automatically. You can launch with just an image directory and an ONNX model.
- CLI support — Pass the
.onnxfile as a command-line argument:./YoloLabel [dataset dir] [class file] [model.onnx]. Arguments are detected by file extension. - Conditional build — ONNX Runtime is optional. Without it, the app builds and works normally — just without the auto-label feature. Pre-built releases include ONNX Runtime.
macOS Code Signing & Notarization
macOS builds are now signed with a Developer ID certificate and notarized by Apple. This means:
- No more Gatekeeper warnings — Download the DMG, open it, drag YoloLabel to Applications, and it just works. No need to right-click → Open or disable Gatekeeper.
- Inside-out code signing — All nested frameworks, dylibs, and plugins are individually signed per Apple's current requirements (macOS 13+), with hardened runtime enabled.
- Notarized on release — Release DMGs are submitted to Apple's notary service and stapled, so Gatekeeper can verify them even offline.
- Entitlements — Minimal entitlements (
allow-unsigned-executable-memory,disable-library-validation) are applied only to the main executable for Qt and ONNX Runtime compatibility.
Other Improvements
- Default file dialog to application directory — File open dialogs now start at the application's directory instead of the system default, making it easier to find your datasets and models (#112)
- Bundled COCO class names — A
coco_names.txtfile is included in the Samples directory for quick testing with COCO-trained models (#112)
Bug Fixes
- Fixed wheel scroll on class table changing images — Scrolling the mouse wheel over the class label table no longer accidentally navigates to the next/previous image (#111)
- Fixed UTF-8 model path on Windows — ONNX model files in directories with non-ASCII characters (e.g., Korean, Chinese, Japanese) now load correctly on Windows by using
std::filesystem::pathfor proper wide-string conversion (#113) - Fixed dynamic-shape ONNX model handling — Models exported without fixed input dimensions are now handled correctly by reading the
imgszmetadata field - Fixed out-of-bounds read in image preprocessing — Resolved a scanline indexing bug that could cause crashes or incorrect inference on certain image sizes
Internal / CI
- Removed dead code for previously deleted save/remove buttons (#109)
- Added CI accuracy test that compares C++ inference output against Ultralytics Python reference to catch regressions
- macOS CI: inside-out code signing, Developer ID signing + notarization pipeline (#116)
Downloads
| OS | File | Notes |
|---|---|---|
| Windows (x64) | YoloLabel-Windows-x64.zip |
Unzip and run YoloLabel.exe |
| Linux (x64) | YoloLabel-Linux-x64.AppImage |
chmod +x and run |
| macOS (Apple Silicon) | YoloLabel-macOS.dmg |
Signed & notarized — open DMG and drag to Applications |
What's Changed
- chore: remove dead code for deleted save/remove buttons by @developer0hye in #109
- fix: prevent wheel scroll on class table from changing images by @developer0hye in #111
- feat: default file dialog to application directory and add COCO names by @developer0hye in #112
- feat: add YOLO auto-labeling with ONNX Runtime by @developer0hye in #110
- fix: use std::filesystem for UTF-8 safe Windows path conversion by @developer0hye in #113
- docs: add auto-label (pseudo labeling) section to README by @developer0hye in #114
- ci: add macOS code signing and notarization by @developer0hye in #116
Full Changelog: v2.0.0...v3.0.0
v0.0.1-experimental
What's Changed
- chore: remove dead code from label_img and mainwindow by @developer0hye in #115
Full Changelog: v3.0.0...v0.0.1-experimental
v2.0.0
What's New in v2.0.0
A major update built on Qt 6 with automated CI/CD builds for Windows, Linux, and macOS.
Framework & Infrastructure
- Migrated from Qt 5 to Qt 6 — modernized the entire codebase while preserving all existing functionality and visual rendering
- GitHub Actions CI/CD — automated multi-platform builds; releases are now published automatically with pre-built binaries for Windows (.zip), Linux (.AppImage), and macOS (.dmg)
New Features
- Undo / Redo —
Ctrl+Zto undo,Ctrl+Shift+Z(orCtrl+Yon Windows) to redo any action (add, remove, move, clear) - Zoom & Pan —
Ctrl+Scrollto zoom in/out (up to 10x),Ctrl+DragorMiddle Mouse Dragto pan,Ctrl+0to reset - Copy / Paste bounding boxes —
Ctrl+Cto copy all boxes from the current image,Ctrl+Vto paste into another image - Move bounding boxes — drag an existing box with
Left Click + Dragto reposition it - Change label of existing box —
Alt+Click(orOption+Clickon macOS) to reassign the class of a focused box without redrawing - Arrow key nudging —
Arrow Keysto nudge a box ~1-2px,Shift+Arrow Keysfor ~5px steps - Usage timer — status bar timer tracks how long you've been labeling (focus-only, pauses when window is unfocused)
- CLI arguments — launch with
./YoloLabel [dataset dir] [class file]to start labeling directly
Bug Fixes
- Fixed slider range not updating after image deletion
- Fixed multiple crash and correctness issues from code review
- Fixed large image loading failure (removed allocation limit)
- Fixed undo state not saving on label change
- Fixed arrow key nudge: undo without target, box escaping cursor on hold, cursor flicker after drag
- Reassigned "clear all boxes" shortcut from
Ctrl+CtoCtrl+Deleteto avoid conflict with copy - Fixed second click not working when mouse is outside image boundary (#53)
Contributors
Huge thanks to everyone who contributed to this release! 🎉
- @vusallyv — Undo/Redo, Copy/Paste annotations, Move boxes by dragging, Change label of existing box, Arrow key nudging, Zoom & Pan
- @pipothebit — CLI argument support for launching with dataset directory and class file
- @euilee0129 — README improvements
Downloads
| OS | File |
|---|---|
| Windows (x64) | YoloLabel-Windows-x64.zip — Unzip and run YoloLabel.exe |
| Linux (x64) | YoloLabel-Linux-x64.AppImage — chmod +x and run |
| macOS | YoloLabel-macOS.dmg |
macOS note: The macOS binary is not signed with an Apple Developer certificate. macOS Gatekeeper will block it from running. To use YoloLabel on macOS, please build from source (requires Qt 6). See the README for instructions.
v1.2.1
Important Updates
- Minor bug fix related to the visualization of class name function
- Release Ubuntu 22.04 version #19
v1.2.0
v1.1.1
Acknowledgements
I wish to thank to AIM for supporting me to update and release this version.
Important Updates
- Removed Unnecessary Buttons that can be replaced by shortcut.
- Added image contrast control function



