一个基于YOLO模型的图像自动标注工具,支持项目管理、自定义标签和人工复判功能,帮助用户高效完成目标检测数据集的标注工作。
- 完整的项目管理:支持新建、打开、保存和另存项目
- 自定义标签系统:可定义自己的目标类别及对应颜色
- 自动标注:利用YOLO模型自动生成目标检测框
- 人工复判:支持对自动标注结果进行手动调整和确认
- 批量处理:可批量处理图片并导出标注结果
- 进度跟踪:实时显示处理进度,支持断点续传
- Python 3.13 或更高版本
- 支持 Windows、macOS 和 Linux 操作系统
-
克隆或下载本项目代码库
-
使用 uv 包管理器安装依赖(推荐):
# CPU版本 uv sync --extra cpu # CPU版本 uv sync --extra cuda
-
创建新项目:
- 点击菜单栏"项目" -> "新建项目"
- 输入项目名称和标签(用逗号分隔)
- 选择项目保存路径
-
配置项目:
- 选择图片目录:包含需要标注的图像文件
- 选择YOLO模型文件(.pt格式)
- 设置输出目录:用于保存标注结果
-
开始自动标注:
- 点击"开始处理"按钮启动自动标注
- 程序会使用选定的YOLO模型对图片进行批量处理
-
人工复判(可选):
- 如需人工检查,在配置中勾选"需要人工复判"
- 对自动生成的标注框进行调整、添加或删除
- 确认无误后点击"完成标注"进入下一张
-
导出结果:
- 可点击"保存当前标注"保存单张图片结果
- 或点击"导出所有结果"批量导出所有处理好的标注
Ctrl+N:新建项目Ctrl+O:打开项目Ctrl+S:保存项目Ctrl+Q:退出程序Enter:完成当前图片标注Delete:删除选中的标注框
ui.py:主界面和用户交互逻辑project.py:项目管理类,处理项目的保存和加载main.py:程序入口点pyproject.toml:项目依赖配置
导出的标注结果采用YOLO格式:
- 每个图片对应一个
.txt文件 - 每行表示一个目标:
class_id center_x center_y width height - 坐标值为相对于图片宽高的归一化值
-
无法加载模型:请检查模型文件路径是否正确,确保使用的是YOLO格式的
.pt模型文件 -
处理速度慢:如果有NVIDIA显卡,建议安装CUDA版本以提高处理速度
-
图片无法显示:请确保图片路径正确且图片格式受支持(支持.jpg, .jpeg, .png, .bmp, .gif)
-
项目保存失败:检查保存路径是否有写入权限
本工具基于以下开源项目开发:
- Ultralytics YOLO:提供目标检测模型支持
- PySide6:提供GUI界面支持
- OpenCV:提供图像处理支持