@Auto: lyyyyy_16
@Date: 2023/03/13 16:48
@Version: 1.0
Autolabelimg自动标注工具
前言
在做机器视觉有监督方面,通常会面对很多数据集,然后去进行标注,而有些时候我们面对庞大数量数据集的情况下也会感到十分头疼,这个时候Autolabelimg这个自动标注神器就应运而生了。让我们可以实现批量处理图片和标注文件。
一、 工具原理和功能
1. 原理
这个工具的原理十分简单,它是基于labelimg标注软件的改良版,利用已标注好的图片进行训练,比如说我们有1w张数据需要去进行标注,这个时候我们就不可能把这1w张数据挨个挨个标注完,当然有些肝帝的情况当我没说哈;好了不开玩笑继续下文讲解,我们可以选择把这1w张数据先标注个1k张或者2k张等一部分,然后将这些已标注数据拿来进行训练,最后将训练出的模型导入我们的工具中,在启动它的标注开关,他会根据模型去识别剩下的数据,还可以选择需要自动标注的类别,识别出来之后得到坐标点信息,然后保存为xml或者voc文件,如此一来便可以实现自动标注。
2. 功能列表
AutoLabelImg 除了labelimg的初始功能外,额外包含十多种辅助标注功能,分别在Annoatate-tools和Video-tools两个新菜单栏下面,具体如下:
• 自动标注:基于yolov5的模型自动标注,将yolov5的检测结果转化为.xml标注文件
• 追踪标注:基于opencv的追踪模块实现的视频自动标注,标注开始的一帧,利用追踪预测后续的一段视频
• 放大镜:鼠标附近区域的放大展示,方便标注一些微小目标,放大镜功能可以选择开启或关闭
• 数据增强:随机使用平移,翻转,缩放,亮度,gama,模糊等手段增强图片
• 查询系统:十多种新功能,不知道是干嘛的?没关系,搜索一下就可以了,支持模糊搜索
• 其他批量处理工具如:类别筛选/重命名/统计、标注文件属性校正、视频提取/合成、图片重命名等。
二、 实战
本人使用环境:win10 + cuda11.6 + torch1.12.0(GPU版本) + torchvision 0.13.0
好了废话不多说开始实战。
1. 下载与安装
GitHub源码链接:
https://github.com/wufan-tb/AutoLabelImg.git
复制源码链接,然后打开git clone即可:
git clone https://github.com/wufan-tb/AutoLabelImg.git
这是下载完成的Autolabeling文件夹下所有文件,长这样:
安装方法也可以参照项目仓库中的readme
2. 配置环境
文章有自带的requirements.txt文件,cd进入demo的文件夹,直接pip install –r requirements.txt
即可,需要注意的是,我之前通过pip install直接下载配置的环境torch是cpu版本的,故需自行提前配置一下gpu版本torch的环境。
觉得安装慢的可以使用镜像源安装,例:
使用豆瓣源:
pip install –r requirements.txt -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
3. 开始使用
在环境等预备前提条件都满足的情况下,我们正式开始使用环节,启动方式和labelimg一样,python labelimg.py
。
启动界面:
看这界面是不是很眼熟呢?没错,就是基于labeling的基础之上的改良版本!!!
各项功能如下,左侧是原文,右侧是翻译:
可以选择auto_labelimg开始自动标注,也可以使用快捷键Ctrl+6。
4. 导入模型
开始标注之前我们需要导入已训练好的模型,操作如下。
模型导入路径为:pytorch_yolov5\weights
下,将训练好的模型放入其中即可,在开始自动标注前也会让其选择使用哪个模型,例:
5. 选择标注类别
在选择好我们的模型之后,工具会提示我们选择需要自动标注的类别,例如我选择导入的模型中有以下“person”,“MachineWorking”,“NoCushion”,“Machine”
这几个类别,我们可以选择想要自动标注的类别。
6. 进行自动标注
在选择完类别之后也可以选择输出图片尺寸,默认640
选择完size便可以直接开始标注,下面是表示工具正在自动标注:
等待进度条完成便完成了自动标注的全过程,你会发现你的数据都已经标注完成!!!
7. 进行自动标注 [更新于06.27]
本次更新内容:
1.上传文件至云盘保存;很多朋友说github上下载不下来;
链接:https://pan.baidu.com/s/1Vxrd1_cMIi190dyUu545NQ?pwd=ly16
提取码:ly16
(链接被吞了也可以私信我哦)
2.教大家用cpu如何进行自动标注;
修改labelimg.py文件的内容,我这里大概在2379行,将2379行改为第2380行的内容即可
3.修改操作界面为中文(中文翻译部分会显示不全)
修改lib文件夹下的stringBundle.py文件,在里面找到basePath参数,修改47行为48行内容即可
三、 总结
个人觉得写出此demo源的大佬代码十分干净整洁,也有很强逻辑性,我这种小白也容易看得懂,另外这个项目真的算得上是懒人福音了,美中不足的是当前版本是仅支持YOLOV5的各个版本,感兴趣的也可自行更改labelimg.py进行修改以支持yolov7等其他模型,同时也希望此工具能对搞图片标注的人起到一些帮助吧,毕竟标图是真的费手。文章来源:https://www.toymoban.com/news/detail-443868.html
本文参考文档文章来源地址https://www.toymoban.com/news/detail-443868.html
到了这里,关于Autolabelimg自动标注工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!