由于最近需要做个项目,需要使用YOLO V5来进行目标检测。由于要使用自建立的数据集,所以要自己标注图片。在这里写个文章记录一下。
首先说需要的环境:python >= 3.7 anaconda3 Windows10
由于这个工具是用pyqt5来写的,我哦这里为了不影响我的环境用了anaconda3来创建虚拟环境。
怎么安装这些,其他的博客里面基本都写的很详细,就不在这里赘述了。
这里我提供两种下载方式:
百度云:链接:https://pan.baidu.com/s/1AD2JZRdRngigeNyI4nkuJg?pwd=g2i0
提取码:g2i0
--来自百度网盘超级会员V3的分享
github:GitHub - tzutalin/labelImg: ️ LabelImg is a graphical image annotation tool and label object bounding boxes in images
(1).创建虚拟环境(不使用anaconda的可以跳过)
打开cmd窗口(win+r键输入cmd回车)输入
conda create --name labelimg python=3.7
并回车:这里这里就创建好虚拟环境了,labelimg可以输入其他名字。
这里键入Y,然后等待完成就行了。
完成效果如图:
这里就创建完成了,自己就安装了一些python的工具,不用管,后面不会用到。
(2)进入虚拟环境并安装pyqt5
继续在cmd窗口输入
conda activate labelimg
并回车,进入虚拟环境。如果前面(labelimg就进入了(labelimg就是前面输入的名字))如下图:
接下来安装pyqt5:
在cmd窗口输入:
pip install pyqt5 lxml
并回车.。出现最后一句就成功了。
(3)打开qt写的标注界面
首先,把当前路径切换到你labelimg_master(之前你们下载的文件夹)
在cmd输入:cd +你们文件夹的位置,我这里是,E:\labelme\labelImg-master
所以我是输入:
cd E:\labelme\labelImg-master
这里有个坑,就是要是要跨盘符切换,需要先在cmd'中输入你要切换的盘符名,直接输入不用加cd,比如我这里是E盘,我就输入 E:
这样就成功了,后面是你们文件夹的位置:
然后,就继续在cmd中输入并回车:
pyrcc5 -o resources.py resources.qrc
继续输入:
python labelImg.py
就可以打开labelImg了。
打开图片如下:
在百度云链接下的就没有这个坑,要是在github上下的文件就会出现:
这个bug是因为resources.py这个文件夹没有在labelImg-master\libs目录下,只需要把这个labelImg-master\下的resources.py复制到labelImg-master\libs目录下就可以了。
这里打开目录就是你数据集图片的路径,存放目录就是你标注文件(.xml)的存放路径。然后就可以自动读取你的图片了,点击上一个图像和下一个图像就可以切换图片了。
点击创建区块就可以标注了
画框后,可能就会弹出如下界面,就是你要分类的类别,如果要更改类别,需要在labelImg-master\data\predefined_classes.txt这个txt文档里面更改。
labelImg也集成了几个算法的标注类型支持,也可以标注。可以点击下图红色框即可切换快速标注类别。
最后点击保存即可保存在自己之前选的文件夹下面,标注的输出文档会与你图片的名字一一对应。标注完一张图片后一定要点击保存,要不然就不会保存标注结果!!!!
其他按钮大家也可以尝试尝试,反正尝试坏了还可以用python labelImg.py打开,他并不会用记忆设置功能。所以放心点就是了!!!
还有其他不懂得地方,欢迎在评论区交流。