OpenCV-Python ImportError:DLL加载失败:找不到指定的模块
我正在使用Python 3.6.0(Anaconda3)和jupyter笔记本在windows 10上工作。在这篇文章中,我已经成功安装并导入了OpenCV-Python。 现在的问题是,如果我从安装opencv的相同命令提示符处导入opencv(ijmport cv2),它将导入时不会出现任何错误。 但是,如果我从另一个命令提示符导入opencv,那么它给了我这个错误: ImportError:DLL加载失败:指定的模块找不到。OpenCV-Python ImportError:DLL加载失败:找不到指定的模块
我不能附上任何图片来显示,因为我的声望是3.所以我在这里解释它。
命令PROMPT1:
C:\Users\Prachi\AppData\Local\Programs\Python\Python36-
32\Anaconda3\Scripts>pip install opencv_python-3.2.0+contrib-cp36-cp36m-
win_amd64.whl
Processing C:\Users\Prachi\AppData\Local\Programs\Python\Python36-
32\Anaconda3\Scripts>pip install opencv_python-3.2.0+contrib-cp36-cp36m-
win_amd64.whl
Installing collected packages: opencv-python
Found existing installation: opencv-python-3.2.0.7
Uninstalling opencv-python-3.2.0.7:
Successfully uninstalled opencv-python-3.2.0.7
Successfully installed opencv-python-3.2.0+contrib
C:\Users\Prachi\AppData\Local\Programs\Python\Python36-
32\Anaconda3\Scripts>python
Python 3.2.0 |Anaconda4.3.1(64-bit)| (default, Dec 23 2016, 11:47:51) [MSC
v.1900 64-bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>import cv2
>>>
命令PROMPT2:
C:\Users\Prachi\AppData\Local\Programs\Python\Python36-
32\Anaconda3\Scripts>python
Python 3.2.0 |Anaconda4.3.1(64-bit)| (default, Dec 23 2016, 11:47:51) [MSC
v.1900 64-bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Prachi\Anaconda3\lib\site-packages\cv2\__init__.py", line 7,
in <module>
from . import cv2
ImportError: DLL load failed: The specified module could not be found.
>>>
这就是为什么,每当我打开新的命令提示符开始编码,我必须重新安装OpenCV,然后使用它。 希望这个解释有助于理解问题。
您可以尝试使用conda install
命令来安装OpenCV 3.2.0
for Python 3.6
。 conda-forge
存储库的32-bit
和64-bit
窗口确实有OpenCV 3.2.0
二进制文件。
conda install -c conda-forge opencv=3.2.0
如果需要opencv_contrib模块,你可以从这个unoffice website下载二进制并通过pip install
安装到Anaconda
。
-
pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win32.whl
(86胜) -
pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win_amd64.whl
(64胜)
注意到由PIP安装的包将不会被conda list
命令被显示。
然后在命令提示符下键入import cv2
以验证安装是否成功如下。
如果您有问题import cv2
,请仔细检查Windows Environment Variables
设置如下。
-
OPENCV_DIR
指向您的OpenCV
可执行文件,例如,C:\Program Files\OpenCV 3.2.0\x64\vc14
PATH=%PATH%;%OPENCV_DIR%\bin
我也是这样做的:pip install opencv_python-3.2.0 + contrib-cp36-cp36m-win_amd64.whl但是当我安装opencv时,无论是通过这种方法还是通过conda-forge的方法我上面说过,导入cv2都成功当我从相同的命令提示符打开jupyter笔记本。但是,当我从新的命令提示符打开jupyter笔记本,这是再次给我这个错误 - ImportError:DLL加载失败:指定的模块找不到。我必须首先安装opencv,然后启动jupyter笔记本吗?这非常耗时。 – Prachi
你能继续在第一个启动的Jupyter上编写和运行'opencv'脚本吗?如果你可以使用第一个Jupyter作为'opencv',为什么你必须启动第二个时刻?您可以从网络或同一时刻运行多个笔记本电脑'.ipymb'。 – thewaywewere
是的,当我在同一命令提示符下工作时,我能够使用cv2工作,即导入cv2工作,但是当我从其他命令提示符运行jupyter笔记本时,它会给我那个dll错误。您建议在命令提示符下验证它是否成功的方式不是。这在我安装opencv的命令提示符下工作,但是当我打开其他文件并编写导入cv2时,它给了我同样的错误。我无法理解原因。 – Prachi
我解决它无意中做这些事情:我键入的命令提示符:C:\用户\ Prachi ................. \ Anaconda3 \ Scripts >> conda install -c conda-forge opencv安装了OpenCV 3.2.0-np113py36_203 conda-forge,并在同一命令提示符下键入jupyter笔记本。通过这个导入cv2在Jupyter notebbok中写入成功。
在Anaconda提示符下尝试安装opencv-python时会出现什么错误? – BoboDarph
错误是:FileNotFoundError:在当前的win64通道中找不到该文件。我从这个链接http:// www下载了opencv。lfd.uci.edu/~gohlke/pythonlibs/#opencv我试过32位,64位,contrib +每种类型,但对于每个文件,上面的错误在那里。 – Prachi
如果在anaconda提示符下安装opencv-python失败,你可以尝试手动安装opencv3,按照https://stackoverflow.com/questions/38787748/installing-opencv-3-1-with-anaconda-python3或https ://rivercitylabs.org/up-and-running-with-opencv3-and-python-3-anaconda-edition/。还有一点观察:从评论中我明白,不支持32位Linux系统。 – BoboDarph