在探索数据科学的奥秘时,数据预处理占据了不可或缺的重要地位。这一环节要求数据科学家投入大量的时间与精力,以确保数据的质量与准确性。特别是在机器学习的领域中,数据预处理更是关键的一环,其中标记步骤尤为重要。
标记步骤,简而言之,就是对数据样本进行识别与分类的过程。通过这一步骤,我们可以将数据样本标记为多个类别,从而为后续的机器学习提供有力的支撑。在机器学习项目中,常见的两种标记数据类型分别是文本和图像注释。
文本标记,在自然语言处理(NLP)项目中扮演着举足轻重的角色,如情感分析等应用;而图像注释则是计算机视觉项目中不可或缺的一环。尽管标记过程往往需要人工进行,但幸运的是,现在有许多应用程序能够协助我们完成这项工作,从而大大提高工作效率。
本文将向大家介绍一款名为 LabelImg 的图像注释工具。这款工具对于初学者或非技术人员来说极为友好,简单易上手,是进行计算机视觉项目的得力助手。
2. 什么是 LabelImg?LabelImg,这款图形图像注释工具,能够在我们为图像添加标签后,自动生成相应的边界框。它是由 Python 语言精心编写的,并借助了 Qt——Python 中最为流行的图形用户界面(GUI)库之一,打造出了直观易用的操作界面。
当完成图像标注后,LabelImg 会将标记数据以 PASCAL VOC 格式(这一格式也被 ImageNet 所采用)保存为 XML 文件。不仅如此,为了满足不同用户的需求,它还支持 YOLO 格式。这样一来,无论是哪种格式偏好,LabelImg 都能为您提供贴心的服务。
以下是 LabelImg 打开时的用户界面:
LabelImg的特点LabelImg这款软件采用了开源的设计理念,使得用户能够无需支付任何费用便可享受到其强大的功能。它同时提供了在线与离线两种版本供用户选择。离线版本拥有简洁直观的用户界面,极大地方便了用户进行快速注释的操作。
在完成注释后,输出的图像将以 Pascal VOC 或 YOLO 这两种广泛被机器学习领域所接受的格式,单独保存为 XML 文件。安装过程简单明了,只需遵循几步简单的指引即可轻松上手。
相较于其他免费工具,如 Cloud Vision API(其免费离线版本仅支持最多处理 2000 张图片)或 Labelbox(免费版限制在最多处理 5000 张图片),这款软件能够高效地处理大量图像数据。更值得一提的是,它兼容多种操作系统,包括 Linux、Mac 以及 Windows。
该工具基于 Python 语言开发,这一特点使其能够轻松地与其他 Python 库进行集成,并且在 Python 应用程序中有着广泛的应用潜力,便于用户进行进一步的定制化开发。
然而,我们也需注意到,这款工具在功能上仍存在一些局限性。目前,它仅支持矩形形状的边界框作为标注区域,对于那些具有曲线特征的复杂物体,可能无法做到精确的检测与识别。
此外,在安装过程中可能需要一些技术操作,我们将在后续章节中详细指导您如何一步步完成安装。
3. 安装labelimg3.1. 先决条件——安装Anaconda下面的安装适用于带有 Anaconda 的 Windows 操作系统。因此,我们需要安装 Anaconda 才能拥有 Anaconda 终端。
按照以下链接在 Windows 中安装 Anaconda:
https://docs.anaconda.com/anaconda/install/windows/
除了Anaconda, 也可以安装使用MiniConda,
本机使用的就是miniconda3 的环境,安装文档可以直接参考官方文档:https://docs.anaconda.com/miniconda/miniconda-install/
注意: 安装完成之后, 在Conda Prompt 命令窗口,会看到(base) 字样,这说明当前目录处在conda 基本环境中,如果切换到其他虚拟环境,就会显示其他的虚拟环境名称。
如下窗口显示的是conda 基本环境,默认打开Conda Prompt 窗口就是这样:
如果运行activate 命令,这个base 前缀就会变成相应的虚拟环境名称,如:
3.2. 使用 Anaconda 在 Windows 中安装 LabelImg3.2.1在 Anaconda 中创建新环境
对于在Windows下使用Python ,因为Python版本号的依赖复杂,因此最好根据软件的实际需要创建一个新环境,而不是使用 Anaconda 中的基础环境,以避免安装软件包时发生版本冲突。因为当前的 LabelImg 软件包需要较旧版本的 python(< 3.8.x)。因此,创建一个新的单独环境可以避免在同一个环境中有两个版本的 python 时发生错误冲突。
执行以下命令:
conda create -n labelimg执行activate命令:
conda activate labelimg3.3. 安装 python/tensorflow。
请注意,这里仅安装早于 3.8.x 的 python 版本,因为最新的 tensorflow 版本与 python 版本 > 3.8.0 不兼容。
安装 python(版本 < 3.8.x),执行以下命令:
conda install python=3.7.0安装 TensorFlow:
#安装最新版本的tensorflowconda install tensorflow3.4. 安装 pyqt 和 lxml。
这些是运行 labelImg 之前需要导入的先决条件包。
安装 pyqt 5:
conda install pyqt=5安装完成:
安装lxml:
conda install -c anaconda lxml3.5. 安装 labelImg 包。
从 https://github.com/tzutalin/labelImg 下载 github labelImg 包并解压到文件夹中。注意, 现在labelImg项目已经变成了HumanSignal 社区之下的一个项目,直接访问原来的项目网址,https://github.com/tzutalin/labelImg, 系统就会跳转到HumanSignal下面的项目https://github.com/HumanSignal/labelImg, 在项目页面的右侧有说明:
执行如下命令下载Github 代码:
git clone git@github.com:HumanSignal/labelImg.git将当前目录更改为labelImg的文件夹:cd labelImg安装pyrccAnaconda安装的PyQt是不包含pyrcc的,需要自己打开系统的命令行界面自行安装,注意需要在Windows系统的命令行界面,使用快捷键win+r后输入cmd弹出来的那个命令行界面,不是Aaconda prompt命令行窗口,打开命令行输入:
pip install pyqt5_tools之后,重新打开Conda Prompt 窗口,在命令行中进入保存labelimg的目录,并激活之前的虚拟环境。
执行以下命令:pyrcc5 -o resources.py resources.qrc另外,为了避免手动更改 resources.py 文件的位置,可以使用以下命令:
pyrcc5 -o libs/resources.py resources.qrc此命令将在 labelImg 文件夹中创建一个 resource.py 文件。下一步,此文件将被移动到 libs 文件夹。
将 resources.qrc 和资源文件的位置更改为 libs 文件夹(libs 文件夹位于 labelImg 文件夹中)。请注意,此步骤对于成功安装 labelImg 非常重要。
最后,执行以下命令:
python labelImg.py然后会打开 labelImg 应用程序窗口。在“查看”菜单中,勾选“自动保存模式”——这将使输出文件自动保存在 Dir 文件夹中。默认情况下,输出文件以 XML 格式保存。
4. 首次安装后打开labelImg。打开anaconda终端;
将当前目录更改为labelImg文件夹(打开此工具时,请记住将anaconda中的当前目录路径更改为labelImg文件夹):
cd \dev\Labelimg执行以下命令:
python labelImg.pylabelImg窗口:
下次打开labelimg, 仍然需要先打开Anaconda Prompt,然后再激活labelimg虚拟环境,然后运行python labelImg.py
labelimg 打包成exe文件像上面介绍的运行labelimg的方法,还是有些麻烦,其实还有更加简单的方法,那就是将本地的labelimg 打包成exe格式的可执行文件,这对于Windows用户来说十分实用。
先来安装pyinstaller:
pip install pyinstaller执行结果:
然后,执行打包操作:
pyinstaller --hidden-import=pyqt5 --hidden-import=lxml -F -n "labelImg" -c labelImg.py -p ./libs -p ./执行完成之后,在dist 目录,就多出来一个labelimg.exe文件,点击就可以直接运行啦:
直接点击这个exe文件:
现在把这个labelimg的可执行文件共享给大家,百度pan 地址:
链接: https://pan.baidu.com/s/1jdBSRiRpy0LQ159rVPoEvQ
如果需要,请私信我获得提取码,绝对免费