当我尝试从这里运行SEC caffe模型时:https://github.com/kolesman/SEC
importterror: No module named PyQt4python demo.py --model SEC.caffemodel --image /data/out/dataset/center/1475186965759787059.jpg --smooth --output result.png
Traceback (most recent call last):
File "demo.py", line 2, in <module>
import pylab
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/pylab.py", line 1, in <module>
from matplotlib.pylab import *
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/pylab.py", line 274, in <module>
from matplotlib.pyplot import *
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/pyplot.py", line 114, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 32, in pylab_setup
globals(),locals(),[backend_name],0)
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_qt5agg.py", line 16, in <module>
from .backend_qt5 import QtCore
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_qt5.py", line 31, in <module>
from .qt_compat import QtCore, QtGui, QtWidgets, _getSaveFileName, __version__
File "/home/ec2-user/anaconda2/lib/python2.7/site-packages/matplotlib/backends/qt_compat.py", line 137, in <module>
from PyQt4 import QtCore, QtGui
ImportError: No module named PyQt4
在这个stackoverflow线程中他们只是提到你可以运行
conda install pyqt
,输出如下:
conda install pyqt
Fetching package metadata .......
Solving package specifications: ..........
# All requested packages already installed.
# packages in environment at /home/ec2-user/anaconda2:
#
pyqt 5.6.0 py27_0
表示我的版本是5.6而不是版本4。但我找不到任何解决方案如何降级到pyqt4。
以便您可以卸载pyqt5并下载PyQt4并手动安装第二种选择是修改代码并用pyqt5替换PyQt4,只需要注意一件事,pyqt5中的类是相同的,但刺激有点不同,所以你可能会得到特定的模型不存在,在这种情况下检查pyqt5的手册并修复它我希望我的答案是清楚的
看起来最新版本的anaconda强制在任何pyqt构建中安装pyqt5.6,这对您的应用程序将是致命的。在终端中,Try:
conda install --channel https://conda.anaconda.org/conda-forge pyqt
conda install -c anaconda pyqt=4.11.4
将提示降级conda客户端。之后就可以了