1. 环境准备:别让安装成为你的第一道坎
很多朋友一上来就想标注图片,结果在安装这一步就卡了半天,最后可能还因为版本问题闪退,热情直接浇灭一半。我刚开始接触labelImg的时候也踩过不少坑,今天我就把这些坑都给你填平,让你能顺顺利利地把工具跑起来。
首先,你得知道labelImg是什么。简单说,它就是给图片“画框”和“贴标签”的工具。比如你想教电脑认识猫和狗,你就得先找一堆猫狗的图片,然后用这个工具在猫身上画个框,写上“cat”,在狗身上画个框,写上“dog”。电脑看了这些带框和标签的图片,才能学会自己去找。所以,它是你做目标检测、图像识别这些AI项目的第一步,也是最基础、最关键的一步。没有高质量的数据集,再牛的模型也白搭。
那么,安装前你需要准备什么呢?主要就是Python环境。labelImg是用Python写的,所以你得先有个Python。这里我强烈建议你使用Anaconda来管理你的Python环境,特别是对于新手。为什么?因为电脑里可能已经装了好几个Python版本,或者你以后要做不同的项目,需要的库版本都不一样,混在一起很容易冲突。Anaconda可以让你为每个项目创建独立的“小房间”(虚拟环境),在这个房间里折腾,不会影响到其他项目。
如果你还没安装Anaconda,去官网下载一个安装包,一路下一步就行,记得安装时勾选“Add Anaconda to my PATH environment variable”(将Anaconda添加到环境变量),这样后面在命令行里用起来才方便。安装好后,你可以打开“Anaconda Prompt”(Windows)或者终端(Mac/Linux),这是你接下来主要操作的地方。
2. 安装labelImg:两种方法,总有一种适合你
准备好了Python环境,我们就可以开始安装labelImg了。这里我提供两种最主流、最稳妥的方法,你可以根据你的网络情况和习惯来选择。
2.1 方法一:使用pip直接安装(最快捷)
这是最直接的方法,只需要一行命令。打开你的Anaconda Prompt或者终端,输入:
pip install labelimg
对,你没看错,安装包的名字是 labelimg,全是小写,中间没有大写字母I。很多新手在这里打错命令,导致安装失败。输入这行命令后,pip(Python的包管理工具)就会自动从网上下载labelImg和它依赖的其他库。
但是,这里大概率会遇到第一个坑:下载速度慢到令人发指,甚至直接超时失败。这是因为默认的下载源在国外。解决起来很简单,我们换成国内的镜像源,速度能飞起来。最常用的就是清华源。
在执行上面的安装命令之前,或者安装失败之后,你可以先升级一下pip,并永久配置清华源:
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
配置好之后,再运行 pip install labelimg,你会感觉下载速度焕然一新。安装成功后,命令行会显示一堆“Successfully installed ...”的字样。
2.2 方法二:从源码安装(更灵活可控)
有时候,直接pip安装可能会遇到一些奇怪的依赖冲突,或者你想用某个特定的、尚未发布到pip的版本。这时候,从GitHub上拉取源码安装是更好的选择。
首先,你需要确保电脑安装了Git。没有的话,去Git官网下载安装。然后,我们打开命令行,依次执行以下命令:
# 1. 克隆labelImg的代码仓库到本地
git clone https://github.com/HumanSignal/labelImg.git
# 2. 进入克隆下来的文件夹
cd labelImg
# 3. 使用pip安装所需的依赖库
pip install -r requirements/requirements-linux-python3.txt # Linux/Mac用户用这个
# 如果你用的是Windows,通常用下面这个
pip install pyqt5 lxml
这里要注意,labelImg的界面是用PyQt5开发的,所以pyqt5这个库是关键。从源码安装的好处是,你能清楚地知道每个依赖是什么,出了问题也方便排查。所有依赖安装好后,你可以直接运行labelImg文件夹里的Python脚本来启动它。
2.3 验证安装与“闪退”这个老大难问题
安装完成后,无论在哪个目录下,在命令行里输入 labelimg 并回车,应该就能弹出那个熟悉的标注界面了。如果弹出来了,恭喜你,安装成功!
但很多朋友(包括当年的我)会遇到一个噩梦般的问题:程序窗口一闪而过,根本打不开,也就是“闪退”。别慌,这个问题十有八九是Python版本兼容性导致的。labelImg对高版本的Python(比如3.10+)有时支持不太好,尤其是和P

1236

被折叠的 条评论
为什么被折叠?



