错误一: ModuleNotFoundError: No module named 'imtools’
解决办法: 找到imtools.py文件添加到项目的工程文件夹下即可。
即,添加`from PCV.tools import imtools
错误二: ImportError: cannot import name ‘imresize’ from ‘scipy.misc’ (F:\Anaconda\lib\site-packages\scipy\misc_init_.py)
原因: imresize功能将在1.2.0版本中,被skimage.transform.resize取代。This function is only available if Python Imaging Library (PIL) is installed.该功能只在安装了PIL情况下使用。
解决办法:换一种写法,通过numpy来实现,import语句如下所示(当然,仍然需要依赖Pillow库,可以用语句pip install pillow进行安装)。
from PIL import Image
import numpy as np
imresize使用示例(被注释的第一行是基于scipy库的写法,第二行是基于numpy的写法):
# im = imresize(im, (h, int(w * aspect_ratio)), interp='bicubic')
im = np.array(Image.fromarray(im).resize((h, int(w * aspect_ratio))))
错误三: TypeError: ‘dict_items’ object does not support indexing
错误代码: for pos,label in cuts.items()[:-2]:
错误原因: 在Python 2.X中, for pos,label in cuts.items()[:-2]: #don’t add source/sink 返回的是一个 list, 但是在Python 3.X中返回的是一个dict_keys object。
解决办法: for pos,label in list(cuts.items())[:-2]:
错误四: IndexError: too many indices for array
错误原因: 索引错误:数组的索引太多
错误五: NameError: name ‘array’ is not defined
解决办法: from numpy import *
添加这一行代码即可。
错误六: NameError: name ‘meshgrid’ is not defined
解决办法:from numpy import *
添加这行代码即可。
错误七: NameError: name ‘figure’ is not defined
解决办法: from pylab import *
添加这行代码即可。
错误八: TypeError: numpy boolean subtract, the -
operator, is deprecated, use the bitwise_xor, the ^
operator, or the logical_xor function instead.
原因:“numpy Boolean中的‘—’已被弃用。
解决办法: 打开对应的文件夹,修改文件参数找到:
源代码:cscale = cmax - cmin
修改后的代码:cscale = cmax ^ cmin
错误九:NameError: name ‘subplot’ is not defined
解决办法:from pylab import *
添加该语句即可。