github项目地址:https://github.com/datnguyen-tien204/VAL-AutoLabelImg/tree/main
基本上可以直接按照项目里的README去安装。
自动标注工具AutoLabelImg安装部署及使用,支持yolov8、yolov9、yolov10、RT-DETR
以下是本人的安装和使用步骤:
Windows + Anaconda
个人配置:NVIDIA GTX 4060 + cuda12.1
代码拉取
将github上的代码拉取至本地,或者直接使用附件中我上传的源码
git clone https://github.com/datnguyen-tien204/VAL-AutoLabelImg.git
安装:
创建虚拟环境,python的版本需要大于3.8,小于3.10,不然可能会有数据格式不兼容的问题
conda create -n autolabel python=3.8.19
激活虚拟环境
conda activate autolabel
拉取的源码中,VAL-AutoLabelImg\VAL_LabelImgs路径下有一个requirements.txt文件,cd到该路径运行下面的命令进行安装(加上清华源下载安装起来就非常快)
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
安装完之后可能会有如下报错:
ERROR: To modify pip, please run the following command:
D:\anaconda\envs\autolabel\python.exe -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
可以把requirements.txt中pip==24.0这行删掉,再重新执行pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/就可以成功安装。
继续执行以下命令:
pip install VAL-LabelImgs
pyrcc5 -o libs/resources.py resources.qrc
至此,安装完成。
使用
简单使用:
cd到VAL-AutoLabelImg\VAL_LabelImgs\目录下,执行
python mainapp.py
会出现软件界面
点击Open Dir 按钮选择VAL-AutoLabelImg\VAL_LabelImgs\imgs_input文件夹。
点击Change Save Dir 按钮选择VAL-AutoLabelImg\VAL_LabelImgs\save_dir文件夹。
会出现imgs_input文件夹中的图片
最后点击Auto Label All 按钮,在弹出的对话框中下拉选择All images,点击OK
继续选择custom-weights,点击OK
选择VAL-AutoLabelImg\models路径下的yolov8s.pt作为模型,继续选择VAL-AutoLabelImg\VAL_LabelImgs路径下的coco.yaml作为配置文件,选择完成之后就会对VAL-AutoLabelImg\VAL_LabelImgs\imgs_input文件夹中所有的图片进行自动标注。
标注结果和终端运行如下图所示
加载自己的模型和配置文件使用
首先需要关掉软件界面,然后修改一些配置文件即可:
1、本人使用的目标检测模型有10个类别,所以需要修改VAL-AutoLabelImg\VAL_LabelImgs路径下default_imgs.yaml文件内容中的classes为:
classes:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
2、修改VAL-AutoLabelImg\VAL_LabelImgs\coco路径下classes.txt的内容为:
pedes
car
bus
truck
bike
moto
tricycle
coni
warn
tralight
3、增加自己模型对应的配置文件。比如本人使用的目标检测模型有以下10个类别,所以配置文件my_data.yaml的内容为:
nc: 10
# class names
names: ['pedes', 'car', 'bus', 'truck', 'bike', 'moto', 'tricycle', 'coni', 'warn', 'tralight']
完成上面3步之后,重新运行下面命令打开软件
python mainapp.py
按照简单使用里的步骤,加载自己的图片路径、模型、yaml文件,即可实现自动标注,效果如下