2015-10-18 138 views
9

我真的不想開始自己的問題,因爲這似乎是一個常見的錯誤。然而,現在已經浪費了幾個小時,並且遵循了我能找到的每個線索,但沒有給出的答案爲我排序。無法導入cv2; 「DLL加載失敗」

所以我唯一的選擇是提供所有關於我的設置的信息,並希望你們中的很多人能夠識別出問題。

我在Windows 10(x64)上運行,並且已經從集合here安裝了以下預構建的二進制文件。

  1. 蟒蛇3.5.0-Win32的(從蟒蛇網站安裝)
  2. numpy的1.10-CP35-win32的
  3. matplotlib 1.4.3-CP35-win32的
  4. OpenCV的3.0.0-CP35-win32的

所有內容均使用「pip install file_name.whl」安裝,沒有錯誤消息。 然而不同的是開放式的簡歷將不導入,並且我收到以下錯誤:

>>> import cv2 
Traceback (most recent call last): 
    File "<input>", line 1, in <module> 
    File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.4\helpers\pydev\pydev_import_hook.py", line 21, in do_import 
    module = self._system_import(name, *args, **kwargs) 
ImportError: DLL load failed: The specified module could not be found. 

cv2.cp35-win32.pyd加上許多的.dll文件安裝到C:\ Python35 \ Lib文件\站點包

我試圖重新命名cv2.cp35-win32.pydcv2.pyd和複製.DLL文件C:\ Python35 \ DLL文件

我已經使用從網站上下載另一個Python OpenCV的包試過,添加bin目錄到我的PATH環境和移動cv2.pyd文件C:\ Python35 \ Lib \ site-packages

每次都會出現相同的錯誤。任何幫助,將不勝感激!

+0

它適用於Python的3 – AdityaIntwala

+0

認罪CHEAK你的環境變量。它包括正確的方向嗎?如果不是,則爲 。 [envs](http://stackoverflow.com/a/41158148/6952434) – galabrim

回答

7

在我當使用Pycharm導入cv2時,它返回ImportError:找不到DLL。但是,使用python intepreter導入我得到* ImportError:...不是一個win32 DLL ... *而是。所以,在這種情況下,我不得不下載Visual C++ 2015重新分發包並解決問題。

因此,對於任何遇到同樣錯誤的人,請確保您有用於編譯沿模塊打包的DLL的VC++重新分發包。

+0

我認爲這是正確的答案。重要的是,我必須在從頭開始重新嘗試之前,先取消所有與Python有關的事情,包括路徑變量中的所有內容。這一次我包含了VC++ Redistributable,它似乎工作。 –

1

我解決它通過 添加路徑的OpenCV DLL到PATH環境變量

+0

我用這個解決方案解決了這個問題。 就我而言,我已經使用visual studio編譯了OpenCV庫。 謝謝 – Roozi

6

我在Python 10中使用Python 3.4和opencv-python 3.3時發生了錯誤。在我的情況下,問題是由於我的Anaconda發行版。我用來自opencv-python project page的解決方案解決了這個問題,它指向這個github issue

問題是在anaconda分佈中缺少python3.dll。您可以下載python二進制文件here並從zip壓縮文件中提取dll。把它放在PATH的一個文件夾中(例如C:\ Users \ MyName \ Anaconda3)並且導入應該可以工作。

+0

+1這爲我工作,但在下載適當的python3.dll版本(不一定是答案中的鏈接指向的3.5.2版本)後。 _E.g._檢查'python -V'或'conda info'來找出python版本,然後在這個列表中找到合適的版本:https://www.python.org/downloads/)。謝謝! – qwertyman

3

這爲我工作:

pip install opencv-contrib-python

(運行的Python 3.6.3 - 32位,在Windows 7 - 64)

相關問題