0 开头
labelImg是一款标注软件,作为一个开源项目,它的源码可以在github上找到。官方仓库地址为:
https://github.com/heartexlabs/labelImg
小白安装时的最新版本编译出来的界面长这样:
之前在小白的博客里,也教过大家如何下载编译好的labelImg.exe软件,参看https://blog.csdn.net/horsee/article/details/122022035?spm=1001.2014.3001.5502
这篇博客写作的时间是2021-12-19,当时能够在github仓库上下载到的最新的exe版本为v1.8.1。
一年多时间过去了,不知道是不是这款软件已经趋于完善,此时此刻,恰如彼时彼刻,能够在github仓库上下载到的最新exe版本仍然为v1.8.1。
然而,该项目的最后更新时间为2022年的9月23日,目前能够提供的源码最新版本是v1.8.6。想要使用v1.8.6版本的labelImg,就只能自己想法子编译了。
1 准备
首先我们需要准备编译所需要的工程+工具。
这里的工程指的就是labelImg v1.8.6版本的源码文件,这从github仓库上很容易获得。
工具我们使用的是PyCharm,在Pycharm中我们还要获取 python pyqt5 lxml 以及 pyinstaller。
PyCharm的安装,本文略。
Python的安装,本文略。
2 配置
解压好labelImg v1.8.6的文件夹。将整个文件夹用PyCharm打开。
打开的时候如果你跟小白一样,在底栏上发现类似这样的报错:
无法加载文件 C:\Users\Admin\Desktop\labelImg-1.8.6\venv\Scripts\activate.ps1,因为在此系统上禁止运行脚本
那么按以下的方式处理:
- 以管理员方式打开powershell
- 输入
Get-ExecutionPolicy
查看自己的权限执行策略是否为Restricted
- 如果是的话,输入
Set-ExecutionPolicy Bypass
- 重新用PyCharm打开整个文件夹
接下来File -> Settings -> Project:labelImg-1.8.6 -> Python InterPreter
选择小加号,安装 PyQt5 + lxml + pyinstaller
其中lxml可能已经在项目中有了。小白安装的时候发现不需要自己安装。
3 编译
在下方Terminal中输入
pyinstaller --hidden-import=pyqt5 --hidden-import=lxml -F -n "labelImg" -c labelImg.py -p ./libs -p ./
等待编译完成,编译好的exe文件在dist文件夹下。
4 打开并使用
打开并标注一幅图像如下:
经过对比,这个版本比v1.8.1版本中多出了一些功能。
如图所示,可以通过快捷键Ctrl+V的方式将前一幅图片的标注拷贝到当前帧图像上。这对视频前后帧图像的标注极为有用。
这个过程坑还是比较少的,轻松加愉快,以后也不必受制于仓库上发布的exe版本了。