文章目录
- 【报错解决办法】ModuleNotFoundError: No module named ‘cyvlfeat‘
- 【报错解决办法】ImportError: CuPy is not correctly installed.和DLL load failed
- ImportError:No modele named ‘fake_useragent‘的解决办法
- ValueError: Object arrays cannot be loaded when allow_pickle=False的解决办法
- ModuleNotFoundError: No module named ‘torchnet‘的解决办法
- # AttributeError: The index2word attribute has been replaced by index_to_key since Gensim 4.0.0.解决办法
- UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 22: illegal multibyte sequence解决
- __init__() got an unexpected keyword argument ‘size‘ 错误的解决办法
- 【报错解决】matlab报错:缺少动态链接库VCOMP100.DLL
- 【报错解决】matlab报错:尝试将 SCRIPT vl_sift 作为函数执行
- 【报错解决办法】ModuleNotFoundError: No module named ‘numba‘
- 【报错解决办法】AttributeError: module ‘cv2.cv2‘ has no attribute ‘SIFT_create‘
- 【报错解决办法】ValueError: not enough values to unpack (expected 3, got 2)
- 【报错解决办法】could not find a writer for the specified extension in function ‘cv::imwrite_‘
- 【报错解决办法】IncompleteRead: IncompleteRead(147317 bytes read)
- 【报错解决办法】module ‘cv2.cv2‘ has no attribute ‘xfeatures2d‘
- 【报错解决办法】AttributeError: module ‘thread‘ has no attribute ‘start_new_thread‘
- 【报错解决】ModuleNotFoundError: No module named ‘kornia‘
- 【报错解决】C++ 出现错误error: default argument given for parameter的解决办法
- 【报错解决】C++:VS允许代码时main()初始位置出现***处未经处理的异常:Stack overflow的解决办法
【报错解决办法】ModuleNotFoundError: No module named ‘cyvlfeat‘
解决办法:安装cyvlfeat
下面命令任选:
conda install -c menpo cyvlfeat
conda install -c menpo/label/new_condaci cyvlfeat
conda install -c menpo/label/hog_fortran cyvlfeat
conda install -c menpo/label/remove-repeated-cyutils cyvlfeat
conda install -c menpo/label/python35 cyvlfeat
conda install -c menpo/label/fisher cyvlfeat
conda install -c menpo/label/array_ordering cyvlfeat
conda install -c menpo/label/master cyvlfeat
conda install -c menpo/label/use-miniver cyvlfeat
对应anaconda中的官方网址:https://anaconda.org/menpo/cyvlfeat(网上其他的解决办法就NM离谱)
可能出现的问题:
python版本不对应,cyvlfeat只适应于python3.6及以下,所以3.7以上还需要将python改为更低的版本。
conda install python=3.6
注意这里不是判等“==”,是一个"=",pip安装是判等。
然后排一个网上写的解决办法的神坑:
百度搜,知乎链接:请问Python怎么安装vlfeat?
其中最离谱的是第二个回答:
stackoverflow上面的答案
尼玛通道menpo都能打错成menlo,可能它叫梅隆…
【报错解决办法】ImportError: CuPy is not correctly installed.和DLL load failed
报错原因:
1.安装的CuPy和Cuda版本对应不一致
注:这里的不一致指的是CuPy版本要与环境变量中的Cuda版本一致。比如你自己的Cuda是11.2的,但是安装的是11.1的,那么CuPy就要安装11.1的。可以低于当前版本。
具体安装CuPy版本办法:
查看Cuda版本:
电脑右下角NVIDIA控制面板:
点击左下角系统信息:
组件中查看Cuda版本。我的是11.2。
- 没有配置Cuda环境变量。
查看环境变量:
我的电脑-属性-高级系统设置-系统属性-环境变量:
系统变量应该有Cuda目录。
都配置好之后报错解决。
ImportError:No modele named ‘fake_useragent‘的解决办法
在对应的conda环境下:
pip install fake-useragent
即可解决。
注意是fake-useragent,不是fake_useragent
ValueError: Object arrays cannot be loaded when allow_pickle=False的解决办法
在np.load参数列表中加入allow_pickle=True
如:
datas = np.load("1.npz",allow_pickle=True)
即可完美解决。
ModuleNotFoundError: No module named ‘torchnet‘的解决办法
在相应的环境下:
pip install git+https://github.com/pytorch/tnt.git@master
安装成功即可解决:
# AttributeError: The index2word attribute has been replaced by index_to_key since Gensim 4.0.0.解决办法
如题,将代码中的index2word改为index_to_key
这是由于gensim的版本不同导致的,Gensim 4.0以上index2word都被index_to_key代替。
UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 22: illegal multibyte sequence解决
解决办法:
with open(filepath, type) as f:
改为
with open(filepath, type,encoding='UTF-8') as f:
init() got an unexpected keyword argument ‘size‘ 错误的解决办法
在调用gensim.models的Word2Vec方法时发生错误,具体如下:
model = Word2Vec(sentences=ls_of_ls_of_c, size=config.size, window=config.window, min_count=config.min_count)
时发生报错:** init() got an unexpected keyword argument ‘size’ **
解决办法:将参数size改为vector_size
修改为
model = Word2Vec(sentences=ls_of_ls_of_c, vector_size=config.size, window=config.window, min_count=config.min_count)
```# 【报错解决】No module named ‘pywt‘和ModuleNotFoundError: No module named ‘skimage.metrics‘
解决办法:
```t
pip install pywavelets
或直接
pip install scikit-image
会自动安装相关依赖pywavelets
之后若报错:
ModuleNotFoundError: No module named ‘skimage.metrics‘
则是skimage版本过低导致,更新到最新版(或0.18往上)即可:
pip install scikit-image --upgrade
【报错解决】matlab报错:缺少动态链接库VCOMP100.DLL
问题分析:
matlab报错:缺少动态链接库VCOMP100.DLL
在编译某mexw64文件时可能出现。
原因:windows10版本的C:\Windows\System32目录下动态链接库已经是VCOMP140.DLL版本。
解决办法:
下载VCOMP100.DLL
下载链接:VCOMP100.DLL
放到C:\Windows\System32目录下。或自己matlab项目报错的目录下
即可完美解决。
【报错解决】matlab报错:尝试将 SCRIPT vl_sift 作为函数执行
问题原因:
1.函数名与文件名相同
2.缺少\vlfeat-0.9.21\toolbox\mex\mexw64
文件目录:
\vlfeat-0.9.21\toolbox\sift\vl_sift.m
出错函数目录:
[ kp1,ds1 ] = vl_sift(single(rgb2gray(img1)),'PeakThresh', 0,'edgethresh',3);
解决方案:
1.将vl_sift.m重命名为vl_sift1.m即可完美解决
2.将其他项目中的mex文件夹复制到\vlfeat-0.9.21\toolbox目录下
vlfeat-0.9.21版本可能会有这个问题。vlfeat-0.9.14版本mex基本上都编译过了。所以没有这个问题。
【报错解决办法】ModuleNotFoundError: No module named ‘numba‘
numba 是一款可以将 python 函数编译为机器代码的JIT编译器,经过 numba 编译的python 代码(仅限数组运算),其运行速度可以接近 C 或 FORTRAN 语言。python 之所以慢,是因为它是靠 CPython 编译的,numba 的作用是给 python 换一种编译器。
numba可以基于llvm动态生成优化代码,提高python的执行效率,只需要给python代码加上修饰器就好了。
如果遇到ImportError: No module named numba这样的问题,安装numba即可,而安装numba依赖于llvmlite,因此解决方案如下:
pip install numba
#会自动安装numba及依赖
#如果没自动安装依赖llvmlite
pip install llvmlite
【报错解决办法】AttributeError: module ‘cv2.cv2‘ has no attribute ‘SIFT_create‘
报错位置
sift = cv2.SIFT_create()
报错原因:opencv将SIFT等算法整合到xfeatures2d集合里面了。
改为:
sift = cv2.xfeatures2d.SIFT_create()
即可完美解决。
【报错解决办法】ValueError: not enough values to unpack (expected 3, got 2)
image, contours, hierarchy = cv2.findContours(cv2.cvtColor(mask2, cv2.COLOR_BGR2GRAY), cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)
上面代码行报错。
原因:老版的opencv返回三个值,新版的返回两个值
改为
contours, hierarchy = cv2.findContours(cv2.cvtColor(mask2, cv2.COLOR_BGR2GRAY), cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)
即可完美解决。
【报错解决办法】could not find a writer for the specified extension in function ‘cv::imwrite_‘
出现错误:
error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-oduouqig\opencv\modules\imgcodecs\src\loadsave.cpp:682: error: (-2:Unspecified error) could not find a writer for the specified extension in function ‘cv::imwrite_’
原因是因为写入的图片没有加后缀。
【报错解决办法】IncompleteRead: IncompleteRead(147317 bytes read)
IncompleteRead是python原生库httplib的异常。HTTP通道返回0字节,或者返回一定字节后卡住。
Python request库下面的函数中添加timeout参数:
request.urlopen(url,timeout=10)
【报错解决办法】module ‘cv2.cv2‘ has no attribute ‘xfeatures2d‘
报错原因:该算法已经申请专利,开源OpenCV没有版权,高版本的OpenCV去掉了这个算法。
解决方法:卸掉目前的包,安装3.4.2.16版本
按顺序执行即可:
控制台的警告不用管,如果想完美适配,就降低python版本到3.6以下。
pip uninstall opencv-python
pip install opencv-python==3.4.2.16
pip install opencv-contrib-python==3.4.2.16
【报错解决办法】AttributeError: module ‘thread‘ has no attribute ‘start_new_thread‘
项目中有包名thread(python中文件夹名也是包名),与系统的thread库冲突了,把项目中的文件夹改名即可。
即把项目中的thread.py改成其他名称。
pycharm中右键thread.py→refactor→rename→修改为与系统thread库不相同的名称。
【报错解决】ModuleNotFoundError: No module named ‘kornia‘
pip install kornia==0.2.0
【报错解决】C++ 出现错误error: default argument given for parameter的解决办法
错误原因:
函数声明和定义中的参数都有赋值。
//.h
void a(int a=0);
//.cpp
void a(int a=0)
{
//函数内容
}
解决办法:
去掉声明或定义中任意一个参数的初值。一般是去掉声明中的初值,因为函数定义中往往需要这个参数的初值。
即:去掉.h文件中函数声明里参数的赋值,保留.cpp文件中函数定义里参数的赋值。
//.h
void a(int a);
//.cpp
void a(int a=0)
{
//函数内容
}
【报错解决】C++:VS允许代码时main()初始位置出现***处未经处理的异常:Stack overflow的解决办法
Visual Studio解决办法:
报错原因:堆栈溢出,可能是定义的某个变量太大而没有修改栈保留大小所至。本人的问题是用ege画图的时候定义的地图面积太大导致。
解决方法:
项目→属性→链接器→系统→堆栈保留大小→设置成一个比较大的数并应用。即可完美解决,如果还没解决可能是设置的不够大。
其实真正应该修改的是你的代码,问题就出现在为什么会有栈溢出问题,很简单,显然是数组或者开辟的指针空间太大!
所以,解决办法就是将大数组定义在main()外部当作全局变量,全局变量放在数据区,空间足够使用。或者写在main()中前面加上static,使其变成静态变量,也就相当于全局变量。即可完美解决。
int *a = new int[1000000000];
改为static int *a = new int[1000000000];
超过1M的变量放在全局或者改为静态变量。
CodeBlocks解决办法
报错原因:相同的问题在CodeBlocks中不会有错误说明,只是上来就崩了,说明问题发生在main()的起始。CB没有报错提示真的是不太方便。。。
解决办法:
CodeBlocks没法像VS那样简单的修改堆栈保留空间,解决办法同上述红字。