图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))

本机环境:win10+anaconda3+spyder(python3.7),注意安装的PyQt5、PyQt5_tools、lxml的版本要和安装的spyder的版本要匹配,否则会导致不兼容的问题,使安装有问题或者导致spyder无法启动。

下载LabelImg安装包,(下载地址为https://github.com/tzutalin/labelImg )

图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))_第1张图片

(1)进入anaconda prompt或者cmd后,输入: pip install PyQt5 (本机匹配的pyqt5为小于5.13的版本,本机经过反复的安装和卸载输入指令为:pip install pyqt5==5.10.1)

亲测发现白天安装一般不成功,夜半三更的时候安装成功率比较高,这条指令一般会安装新版本的PyQt5 ,需要查询匹配版本。

尽管安装的匹配版本但是也会存在spyder无法启动的问题,所以要安装低版本的pyqt5,因此需要卸载。

(2)卸载PyQt5的指令为:pip uninstall pyqt5

输入指令显示如下:

(base) C:\Users\lifengmin>pip uninstall pyqt5
Found existing installation: PyQt5 5.12.3
Uninstalling PyQt5-5.12.3:
  Would remove:
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pylupdate5.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyrcc5.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyuic5.exe
    c:\users\lifengmin\appdata\roaming\python\python37\site-packages\pyqt5-5.12.3.dist-info\*
    c:\users\lifengmin\appdata\roaming\python\python37\site-packages\pyqt5\*
  Would not remove (might be manually added):
    c:\users\lifengmin\appdata\roaming\python\python37\site-packages\pyqt5\sip.pyd
Proceed (y/n)? y
  Successfully uninstalled PyQt5-5.12.3
ERROR: Exception:
Traceback (most recent call last):
  File "D:\anaconda3\lib\site-packages\pip\_internal\cli\base_command.py", line 186, in _main
    status = self.run(options, args)
  File "D:\anaconda3\lib\site-packages\pip\_internal\commands\uninstall.py", line 82, in run
    uninstall_pathset.commit()
  File "D:\anaconda3\lib\site-packages\pip\_internal\req\req_uninstall.py", line 450, in commit
    self._moved_paths.commit()
  File "D:\anaconda3\lib\site-packages\pip\_internal\req\req_uninstall.py", line 290, in commit
    save_dir.cleanup()
  File "D:\anaconda3\lib\site-packages\pip\_internal\utils\temp_dir.py", line 175, in cleanup
    rmtree(self._path)
  File "D:\anaconda3\lib\site-packages\pip\_vendor\retrying.py", line 49, in wrapped_f
    return Retrying(*dargs, **dkw).call(f, *args, **kw)
  File "D:\anaconda3\lib\site-packages\pip\_vendor\retrying.py", line 212, in call
    raise attempt.get()
  File "D:\anaconda3\lib\site-packages\pip\_vendor\retrying.py", line 247, in get
    six.reraise(self.value[0], self.value[1], self.value[2])
  File "D:\anaconda3\lib\site-packages\pip\_vendor\six.py", line 703, in reraise
    raise value
  File "D:\anaconda3\lib\site-packages\pip\_vendor\retrying.py", line 200, in call
    attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
  File "D:\anaconda3\lib\site-packages\pip\_internal\utils\misc.py", line 136, in rmtree
    onerror=rmtree_errorhandler)
  File "D:\anaconda3\lib\shutil.py", line 516, in rmtree
    return _rmtree_unsafe(path, onerror)
  File "D:\anaconda3\lib\shutil.py", line 400, in _rmtree_unsafe
    onerror(os.unlink, fullname, sys.exc_info())
  File "D:\anaconda3\lib\shutil.py", line 398, in _rmtree_unsafe
    os.unlink(fullname)
PermissionError: [WinError 5] 拒绝访问。: 'C:\\Users\\LIFENG~1\\AppData\\Local\\Temp\\pip-uninstall-g9zrhhym\\qtcore.pyd'

(3)再次安装匹配版本的pyqt5:pip install pyqt5==5.10.1

输入指令显示如下:

(base) C:\Users\lifengmin>pip install pyqt5==5.10.1
Collecting pyqt5==5.10.1
  Downloading PyQt5-5.10.1-5.10.1-cp35.cp36.cp37.cp38-none-win_amd64.whl (81.0 MB)
     |████████████████████████████████| 81.0 MB 312 kB/s
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/sip/
Collecting sip<4.20,>=4.19.4
  Downloading sip-4.19.8-cp37-none-win_amd64.whl (51 kB)
     |████████████████████████████████| 51 kB 14 kB/s
ERROR: pyqt5-tools 5.12.3.1.5 has requirement pyqt5==5.12.3, but you'll have pyqt5 5.10.1 which is incompatible.
ERROR: pyqtwebengine 5.12.1 has requirement PyQt5>=5.12, but you'll have pyqt5 5.10.1 which is incompatible.
Installing collected packages: sip, pyqt5
Successfully installed pyqt5-5.10.1 sip-4.19.8

(4)安装PyQt5_tools指令:pip install PyQt5-tools==5.10.1,注意当输入的版本没有的时候,会列出响应版本号,根据安装的 pyqt5响应版本号,更改即可,

本机改为:pip install PyQt5-tools==5.10.1.1.3

(base) C:\Users\lifengmin>pip install PyQt5-tools==5.10.1
ERROR: Could not find a version that satisfies the requirement PyQt5-tools==5.10.1 (from versions: 5.9.2.1.3rc3, 5.9.2.1.3rc6, 5.9.2.1.3rc8, 5.9.2.1.3rc10, 5.9.2.1.3, 5.9.2.1.4rc0, 5.9.2.1.4rc1, 5.10.1.1.3rc3, 5.10.1.1.3rc6, 5.10.1.1.3rc8, 5.10.1.1.3rc10, 5.10.1.1.3, 5.10.1.1.4rc0, 5.10.1.1.4rc1, 5.10.1.1.4rc2, 5.10.1.1.4rc5, 5.10.1.1.4, 5.10.1.1.5rc0, 5.10.1.1.5rc4, 5.10.1.1.5, 5.10.1.1.6rc1, 5.11.2.1.3rc3, 5.11.2.1.3rc6, 5.11.2.1.3rc8, 5.11.2.1.3rc10, 5.11.2.1.3, 5.11.2.1.4rc1, 5.11.2.1.4rc2, 5.11.2.1.4rc5, 5.11.3.1.4rc0, 5.11.3.1.4, 5.11.3.1.6rc1, 5.12.1.1.5rc4, 5.12.3.1.5, 5.12.3.1.6rc1, 5.13.0.1.5, 5.13.1.1.6rc0, 5.13.2.1.6rc1, 5.14.0.1.7b3, 5.14.0.1.7, 5.14.0.1.7.1, 5.14.0.1.7.2, 5.14.0.1.7.3, 5.14.0.1.7.4, 5.14.0.1.7.5, 5.14.0.2, 5.14.0.3, 5.14.1.1.7b3, 5.14.1.1.7, 5.14.1.1.7.1, 5.14.1.1.7.2, 5.14.1.1.7.3, 5.14.1.1.7.4, 5.14.1.1.7.5, 5.14.1.2, 5.14.1.3, 5.14.2.1.7b2, 5.14.2.1.7b3, 5.14.2.1.7, 5.14.2.1.7.1, 5.14.2.1.7.2, 5.14.2.1.7.3, 5.14.2.1.7.4, 5.14.2.1.7.5, 5.14.2.2b1, 5.14.2.2, 5.14.2.3, 5.15.0.1.7, 5.15.0.1.7.1, 5.15.0.1.7.2, 5.15.0.1.7.3, 5.15.0.1.7.4, 5.15.0.1.7.5, 5.15.0.2, 5.15.0.3, 5.15.1.1.7.2, 5.15.1.1.7.3, 5.15.1.1.7.4, 5.15.1.1.7.5, 5.15.1.2b1, 5.15.1.2, 5.15.1.3, 5.15.2.3)
ERROR: No matching distribution found for PyQt5-tools==5.10.1

(base) C:\Users\lifengmin>pip install PyQt5-tools==5.10.1.1.3
Collecting PyQt5-tools==5.10.1.1.3
  Downloading pyqt5_tools-5.10.1.1.3-cp37-none-win_amd64.whl (39.0 MB)
     |████████████████████████████████| 39.0 MB 78 kB/s
Requirement already satisfied: python-dotenv in d:\anaconda3\lib\site-packages (from PyQt5-tools==5.10.1.1.3) (0.15.0)
Requirement already satisfied: click in d:\anaconda3\lib\site-packages (from PyQt5-tools==5.10.1.1.3) (7.0)
Installing collected packages: PyQt5-tools
Successfully installed PyQt5-tools-5.10.1.1.3

如果安装失败或者版本不匹配需要卸载的话,和步骤(2)类似,输入指令:pip uninstall PyQt5-tools

输入后,如下显示:

(base) C:\Users\lifengmin>pip uninstall PyQt5-tools
Found existing installation: pyqt5-tools 5.12.3.1.5
Uninstalling pyqt5-tools-5.12.3.1.5:
  Would remove:
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\assistant.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\canbusutil.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\designer.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\dumpcpp.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\dumpdoc.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\lconvert.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\linguist.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\lrelease.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\lupdate.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pixeltool.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyqt5designer.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyqt5qmlscene.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyqt5qmltestrunner.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\pyqt5toolsinstalluic.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdbus.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdbuscpp2xml.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdbusviewer.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdbusxml2cpp.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdistancefieldgenerator.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qdoc.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qgltf.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qhelpgenerator.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qlalr.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qml.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlcachegen.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmleasing.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlimportscanner.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmllint.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlmin.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlplugindump.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlpreview.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlprofiler.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmlscene.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qmltestrunner.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qscxmlc.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qtattributionsscanner.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qtdiag.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qtpaths.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qtplugininfo.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qvkgen.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\qwebengine_convert_dict.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\repc.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\testcon.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\uic.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\xmlpatterns.exe
    c:\users\lifengmin\appdata\roaming\python\python37\scripts\xmlpatternsvalidator.exe
    c:\users\lifengmin\appdata\roaming\python\python37\site-packages\pyqt5_tools-5.12.3.1.5.dist-info\*
    c:\users\lifengmin\appdata\roaming\python\python37\site-packages\pyqt5_tools\*
Proceed (y/n)? y
  Successfully uninstalled pyqt5-tools-5.12.3.1.5

如若从新安装,则输入安装指令,如pip install PyQt5-tools==5.x.x

(5)安装lxml

命令:pip install lxml, 如下:

(base) C:\Users\lifengmin>pip install lxml
Requirement already satisfied: lxml in d:\anaconda3\lib\site-packages (4.6.2)

(6)pyrcc编译资源文件

进入到labelImg解压后的文件,labelImg-master。

执行命令: pyrcc5 -o resources.py resources.qrc ,

启动labelImg指令:python3 labelImg.py,但首先需要将路径改到下载的labelImg解压缩包,如下:

(base) C:\Users\lifengmin>cd D:\labelImg-master

(base) C:\Users\lifengmin>d:

(base) D:\labelImg-master>pyrcc5 -o resources.py resources.qrc

(base) D:\labelImg-master>python3 labelImg.py

 (7)虽然打开代码还是有很多告警,但是,正常运行,没有问题。

图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))_第2张图片

图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))_第3张图片

注意:

(1)如果出现:“Consider using the `--user` option or check the permissions”的报错。

      由指令pip uninstall pyqt5

      改为指令pip install pyqt5==1.7 --user,就可安装。

(2)安装的时候报错ModuleNotFoundError: No module named ‘libs.resources’,查阅相关资料之后发现解决方案如下:
将LabelImg-master中的resources.py复制到libs文件中即可。

再输入命令python labelImg.py即可打开LabelImg。

(3)测试 pyqt5是否安装成功的办法:

代码如下:运行,如果出现对话框即完成。

import sys  
from PyQt5.QtWidgets import QWidget, QApplication  
  
if __name__ == '__main__':  
    app = QApplication(sys.argv)  
    w = QWidget()  
    w.show()  
    w.setWindowTitle("Hello PyQt5")  
    sys.exit(app.exec_()) 

运行的结果:(成功了,好棒!)

图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))_第4张图片

(4)在安装过程中,也出现了spyder无法启动,anaconda服务崩溃的情况,也曾焦虑,也曾彷徨,但是经过在网上查找解决方法,也尝试了什么镜像安装也失败了,终于经过一晚上的安装,卸载,安装和卸载,也是可以运行了,总结了以安装步骤。主要原因就是版本不匹配,注意查看自己的spyder版本,不要以为追求高版本新版本哦。

图像标注工具labelImg安装方法(win10+anaconda3+spyder(python3.7))_第5张图片

 

你可能感兴趣的:(机器学习)