Search code examples
pythonopencvdllanacondaimporterror

OpenCV-Python ImportError: DLL load failed: The specified module could not be found


I am working on windows 10 with Python 3.6.0 (Anaconda3) and jupyter notebook. I have successfully installed and imported OpenCV-Python with the help of comments in this post.

Now the problem is that If I am importing opencv (ijmport cv2) from the same command prompt where I installed the opencv, it is importing without any error. But if I am importing opencv from another command prompt, then it is giving me this error:

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

I can't attach any picture to show this as my reputation is 3. So I am explaining it here.

Command 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
>>>

Command 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.
>>>

This is why, whenever I am opening new command prompt to start coding, I have to install opencv again and then use it. Hope this explaination helps in understanding the problem.


Solution

  • You may try this conda install command for installing OpenCV 3.2.0 for Python 3.6. The conda-forge repository does have OpenCV 3.2.0 binary for 32-bit and 64-bit Windows.

    conda install -c conda-forge opencv=3.2.0
    

    If you need opencv_contrib modules, you can download the binary from this unoffice website and install it to Anaconda through pip install.

    • pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win32.whl (x86 Win)
    • pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win_amd64.whl (x64 Win)

    Take note the package installed by pip will not be shown by conda list command.

    Then type import cv2 in command prompt to verify if the installation is success as below. enter image description here

    If you have problem on import cv2, double check Windows Environment Variables setup as below.

    1. OPENCV_DIR points to your OpenCV executable files, e.g. C:\Program Files\OpenCV 3.2.0\x64\vc14
    2. PATH=%PATH%;%OPENCV_DIR%\bin