我们使用labelImg工具来对图像数据集标注。
labelImg是开源的Python工具包,其代码和详细介绍可查阅GitHub labelImg
通过pip install labelImg命令来安装labelImg,注意区分大小写。(可在指定的conda环境下下载并安装labelImg
该命令跟平台无关,不管在Windows、Linux和MacOS上均可执行。

1.pip下载labelImg并安装

pip默认是从国外网站上下载要安装的工具包,通常会因为网络错误等原因导致下载失败。
为了避免下载失败,我们将pip的镜像源切换为国内的镜像源。

国内常用镜像源:
阿里云:Simple Index
清华:Simple Index
中国科技大学 Simple Index
豆瓣:Simple Index

镜像源的切换有如下的一些方式:
临时切换:
pip install -i 镜像源 包名,例如: pip install -i https://mirrors.aliyun.com/pypi/simple labelImg
永久切换:
方式1:pip config set global.index-url + 源地址。
例如:pip config set global.index-url https://mirrors.aliyun.com/pypi/simple

方式2:
在linux下,修改 ~/.pip/pip.conf (没有就创建一个文件夹及文件。文件夹要加“.”,表示是隐藏文件夹)
[global]
timeout = 300
index-url = https://mirrors.aliyun.com/pypi/simple
[install]
trusted-host=aliyun.com

在window下,在%USERPROFILE%目录下创建pip目录,再新建文件pip.ini。内容同上。
USERPROFILE文件夹路径可通过set USERPROFILE命令查询。\

镜像源设置后可通过pip config list查看。

出错:

 解决方法:直接选用pip源并且信任它的来源就可以解决这种问题。

pip install 库包名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

上面使用了豆瓣源,将其换成清华源、阿里源等都适用。

安装成功截图:

2.labelImg标注:

标注方法:

labelImg安装成功后在控制台输入labelImg可启动labelImg工具。

  1. 点击“Change Save Dir”按钮设置将标注结果存在指定的目录下。
  2. 点击“Create RectBox”按钮后开始标注。
  3. 按住Ctrl+鼠标滚轮,放大缩小图片。
  4. “View”菜单点击“Auto Save Mode”可实现标注的自动保存,文件名和图片名一致。
  5. 对已标注的图,点击矩形框的4个顶点拖拽鼠标可对标注结果调整

快捷键:

  • 画框:`w`
  • 移动上下图片:`a` 和 `d`

标注要注意以下几点,会影响训练的效果:

  1. 针对图片中存在多个物体的情形,做到不重标不漏标
  2. 需要保证目标框内物体的完整性;要注意将属于该物体的部分都框进去,不属于的部分不框进去。
  3. 标注时将图像放大标,可确保目标框内的完整性。
  4. 活用快捷键。
  5. 注意保存格式从PascalVOC切换为YOLO后,只会将接下来标注的图保存为YOLO格式,已经保存为PascalVOC修改的图是不会自动切换为YOLO格式的。

建议:

保存格式建议保存为PascalVOC格式,不要选择YOLO格式。有如下2个原因:

  1. PascalVOC格式保存的是xml文件,YOLO保存的是txt文件。xml里面含有的信息较txt更丰富。
  2. 用YOLO格式在团队协作时针对有多个label情况可能会带来问题。标签的顺序会导致导出的class id不同。

PascalVOC转换为YOLO:

我们可以通过python脚本将xml转换为txt格式。

参考文章:使用labelImg进行图像标注 · lzgnanjing/Learn-YOLO-Train Wiki · GitHub

参考视频:使用labelImg做图像标注_哔哩哔哩_bilibili 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐