关于cv2导入出错的问题

由于兴趣的原因,最近准备开始学习深度学习的图像识别。那么要学习图像识别就得先配置环境。

我的环境是:Windows7,Python3.6.5

但是还需要一些基本的深度学习的框架,于是,我就去安装了Numpy,OpenCV-Python和TensorFlow,安装的时候没有出什么问题,但是。安装完之后,导入cv2的时候,出现了问题。请见下图:

在这里插入图片描述

上面显示“找不到指定的模块”。

于是,我就去网上查,终于找到了几种解决方案,总结了一下,总有一种适合你。

  1. 保证有Visual C++ Redistributable for Visual Studio 2015,如果没有可以去官网下载: https://www.microsoft.com/en-us/download/details.aspx?id=48145

  2. 安装OpenCV,把将cv2.pyd拷贝到文件夹python36\Lib\site-packages下,在pycharm下 pip install opencv_python-3.4.3-cp36-cp36m-win_amd64.whl(下载地址http://www.lfd.uci.edu/~gohlke/pythonlibs/),再次运行程序时,若出现错误:numpy.core.multiarray failed to import,则下载安装numpy (下载地址:https://pypi.python.org/pypi/numpy),再运行,则成功解决问题。

  3. 如果前两种都解决不了问题的话(前两种反正没解决我的问题),接下来的这种基本可以解决。

    像我这种经常打游戏而且基本是单机游戏的人可以知道,当一个游戏突然打不开无法使用的时候,基本可以断定是少了配置文件例如某些dll文件,所以我就想查看一下是否是少了配置文件。这时我们就可以使用depends软件来看一下。(depends下载地址

    下载之后,解压并且打开软件,将目录打开至cv2的目录下,我的目录是:C:\Users\WJL\venv\Lib\site-packages\cv2

    图在这里![]()

    这时,我们就可以看见红框中我圈住的,果然是少了两个配置文件(哇哈哈哈!!),IEShims.dll可以在自己的电脑的C:\Windows\winsxs\中找到,api-ms-win-downlevel-shlwapi-l1-1-0.dll只能去网上下载了。

    当然像我这么好的人肯定给大家准备了连接,IEShims.dll,api-ms-win-downlevel-shlwapi-l1-1-0.dll,这两个是我的,亲测能用,要是不能用就只能自己下了。把这两个文件放入cv2中之后,再去import cv2就没问题了!

当然,接下来我又去import tensorflow的时候,果不其然又出现问题了,问题显示没有找到名字为tensorflow.python的包,这时候我想起来,python3带着pip3,而我装的时候,用的命令是pip install tensorflow,这样装完是没问题,但是调用的时候会出现路径错误的问题。

这时候,只需要先卸掉tensorflow,pip uninstall tensorflow

再去安装:pip3 install tensorflow就可以了,然后就可以快(ku)乐(bi)的编程了。

由于我这是刚开始学计算机视觉这方面的知识,之后还会不定期写一些学习的心得和重难点,有兴趣的小伙伴也可以联系我,大家共同学习!!

猜你喜欢

转载自blog.csdn.net/nidhogge/article/details/83541768