平台:win10 x64 +JetBrains PyCharm 2018.2.4 x64 +Anaconda3(python3.7.0+opencv3.4.5)
Issue说明:找了个python代码,想实现下brisk,但是报错ImportError:检查opencv的安装
原因:在cmd下python->import cv2就开始报错ImportError:检查opencv的安装,看来还没运行代码,刚开始import就报错了。原来是opencv_python的问题。
怀疑及解决方案:
Issue1:怀疑是电脑上安装的python3.6.5与Anaconda中的python3.7.0冲突,pip安装时(pip install opencv_python-3.4.5+contrib-cp37-cp37m-win_amd64.whl)没有识别对应的python。
解决办法:去掉python3.6.5的系统环境变量(D:\ProgramFiles\Python36),卸载opencv_python,重新安装opencv_python(pip install opencv_python-3.4.5+contrib-cp37-cp37m-win_amd64.whl),报错依旧
Issue2:怀疑电脑上的opencv_python版本低或文件破坏。
解决办法:重新下载了opencv_python-3.4.7+contrib-cp37-cp37m-win_amd64.whl,重新安装opencv_python(pip install opencv_python-3.4.7+contrib-cp37-cp37m-win_amd64.whl),报错依旧
Issue3:win+r打开windows命令窗口输入python显示的是python3.7.0,而在D盘文件夹下文件——>打开Windows PowerShell——>以管理员身份打开Windows PowerShell输入python显示的是python3.6.5(而我在Issue1时已经去掉python3.6.5的系统环境变量)
解决办法:把(D:\ProgramFiles\Python36)备份好后,卸载python3.6.5,报错依旧
Issue4:应该还是python多版本的问题。
解决办法:依次检查系统环境变量,看是否哪个包含了opencv3.6.5(因为近期使用CMake编译过opencv工程),还是没有找到,
最后在wang的用户变量中找到(D:\ProgramFiles\Python36;D:\ProgramFiles\Python36\Scripts\)去掉后
Issue5:怀疑是Anaconda的问题
解决办法:卸载重装,在重装安装opencv_python(pip install opencv_python-3.4.5+contrib-cp37-cp37m-win_amd64.whl),还是报错依旧。
Issue6:还是python多版本的问题
解决办法:最后在wang的用户变量中找到(D:\ProgramFiles\Python36;D:\ProgramFiles\Python36\Scripts\)去掉后,重新卸载后安装opencv_python(pip install opencv_python-3.4.5+contrib-cp37-cp37m-win_amd64.whl)win+r打开windows命令窗口输入python显示的是python3.7.0,然后输入import cv2 报错更改为ImportError: numpy.core.multiarray failed to import
Issue7:ImportError: numpy.core.multiarray failed to import,百度解决,是numpy版本过低的问题。
解决办法:更新numpy,使用:pip install -U numpy就可以更新numpy版本了。但是实验室网络太差,更新不成功,下载whl,(地址参看我的另一篇博客:Python入门之第三方模块安装——https://www.cnblogs.com/Alliswell-WP/p/PythonOfPipInstall.html),下载最新的与64版本(numpy-1.17.0+mkl-cp37-cp37m-win_amd64.whl)后,安装(pip install numpy-1.17.0+mkl-cp37-cp37m-win_amd64.whl),在cmd下import cv2不报错了,问题解决。
参看:ImportError: numpy.core.multiarray failed to import——https://www.cnblogs.com/catpainter/p/8645455.html
ImportError: numpy.core.multiarray failed to import
原因:
解决方案:
原文:https://www.cnblogs.com/Alliswell-WP/p/OpenCV_importcv2_issue.html