导入cv2 dll加载失败

时间:2018-08-09 07:18:15

标签: python-3.x opencv window cv2

当我传递win7(python3)

pip install opencv-python

pip install opecncv-contrib-python

可以正确导入CV2

但是当我在Windows Server 2008 R2企业版上安装opencv时,出现以下错误:

In [2]: import cv2
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-2-c8ec22b3e787> in <module>()
----> 1 import cv2

c:\python36\lib\site-packages\cv2\__init__.py in <module>()
      1 import importlib
      2
----> 3 from .cv2 import *
      4 from .data import *
      5

ImportError: DLL load failed: The specified module could not be found.

我尝试安装C++可再发行程序包(所有版本)并下载WHL文件仍然无法解决该错误。

C:\Users\Administrator\Desktop>ipython
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD6
4)]
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import cv2
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-c8ec22b3e787> in <module>()
----> 1 import cv2
ImportError: DLL load failed: The specified module could not be found.

我的猜测肯定是系统问题,但是我检查了数据,发现服务器2008 R2系统的原型是Win7,并且已经安装了可以容纳的内容,但仍然无法解决问题。 / p>

所以我想知道这个错误的真正原因是什么,以及我是否能找出并解决它。
那我该怎么寻求帮助

3 个答案:

答案 0 :(得分:1)

如果您使用的是Windows 10 N发行版,并且Windows Media功能包未预安装N发行版,则可能会发生这种情况,这是OpenCV 3.4版及更高版本所必需的。

首选解决方案是将功能部件包安装在:https://www.microsoft.com/en-us/software-download/mediafeaturepack

请小心选择适用于当前Windows版本的版本。

如果这不是一种选择,请回退到不具有dll依赖项的OpenCV的早期版本,您可以通过以下方式实现:pip install opencv-python=3.3.0.9

自从Windows推出了N版本以来,这个问题已在很多地方出现,并且在整个Windows环境中产生了许多影响,如果您说有HTML5媒体,则在Edge浏览器中打开youtube是确定您是否遇到此问题的最快方法。找不到插件,这就是问题所在。

除非您安装功能部件包,否则conda或任何其他在Windows上本地运行python的虚拟管理器都无法解决此问题。但是,WSLbash和VMWare将在没有功能部件包的情况下运行cv2。

答案 1 :(得分:0)

尝试首先安装Anaconda,然后使用conda安装opencv。例如,在Windows中打开Conda Prompt并键入conda install opencv,而不使用pip。那对我有用。

答案 2 :(得分:0)

如果您使用的是python 3.6,则可能是由于依赖性错误。 尝试安装旧版本的opencv。 例如python-3.6可能与opencv-4.0.1冲突。 在Windows 7系统中可以正常安装以前的版本(3.4.1)。

要卸载旧版本

  

pip卸载opencv-python

要安装新版本

  

pip install opencv-python == 3.4.1.14

如果失败,找到匹配的对应版本。