Ошибка загрузки DLL при импорте cv2

Я установил opencv на свою машину windows с помощью python 3.6 без каких-либо проблем, используя:

pip install opencv-python

но когда я пытаюсь импортировать cv2 я получаю следующую ошибку

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

Я видел этот пост

Он говорит, что cv2 не работает с python 3 мне было интересно, исправлено ли это или есть способ обойти это

13 ответов


вы можете скачать последнюю версию OpenCV 3.2.0 для Python 3.6 на 32-разрядной или 64-разрядной машине Windows, искать файл начинается сopencv_python‑3.2.0‑cp36‑cp36m от этого неофициальный сайт. Затем введите ниже команду, чтобы установить его:

  • pip install opencv_python‑3.2.0‑cp36‑cp36m‑win32.whl (32-разрядная версия)
  • pip install opencv_python‑3.2.0‑cp36‑cp36m‑win_amd64.whl (64-разрядная версия)

Я думаю, это было бы проще.

обновление 2017-09-15:

OpenCV 3.3.0 колесные файлы теперь доступны в неофициальный сайт и заменить OpenCV 3.2.0.

обновление 2018-02-15:

OpenCV 3.4.0 файлы колес теперь доступны в неофициальный сайт сайт и заменить OpenCV 3.3.0.

обновление 2018-06-19:

OpenCV 3.4.1 файлы колес теперь доступны в неофициальный сайт С сайта CPython 3.5/3.6/3.7 поддержка, и заменить OpenCV 3.4.0.

Обновление ПО 2018-10-03:

OpenCV 3.4.3 файлы колес теперь доступны в неофициальный сайт С сайта CPython 3.5/3.6/3.7 поддержка, и заменить OpenCV 3.4.1.


если вы используете Anaconda с python 3.5, это проблема в выпуске Anaconda. (См. это вопрос)

вы можете исправить эту проблему путем копирования до Anaconda3 папку (где python.exe находится)

как получить " python3.DLL-файл"

  • на cmd, тип python --version чтобы узнать, является ли ваша установка 64-разрядной или 32-разрядной
  • скачать python 3.X встраиваемый zip-файл из здесь
  • извлеките zip-файл и скопируйте до Anaconda3 папку

но если вы можете перейти к Anaconda С python 3.6 вы не столкнетесь с этой проблемой. Если это возможно для вас, то это рекомендуемый способ..


проведя слишком много времени на этот вопрос и опробовать все разные ответы, вот что нашел:

  • принятый ответ @thewaywewere больше не применим. Я думаю, что это было применимо, когда модуль opencv-python все еще не был доступен.

  • Это действительно ошибка в Anaconda 4.2, потому что они забыли отправить python3.файл DLL. Они исправили это в следующих выпусках, но, к сожалению, 4.2 является последним выпуском с Python 3.5 как по умолчанию. Если вы застряли с Python 3.5 (например, VS2015 знает только версии до 3.5), то вы должны вручную загрузить python3.dll, как описано в ответе @Ramesh-X.

  • Если вы можете перейти на Python 3.6 (что в настоящее время немного сложно, если вы используете OpenCV и VS2015), то просто установите последнюю версию Anaconda, и вам не придется иметь дело с любым из них.


Я взял много времени, чтобы решить эту ошибку! Выполнить команду

pip install opencv-contrib-python

У меня была такая же проблема при установке opencv 2.4.13 на Anaconda3 (Python 3.6)... Мне удалось исправить эту проблему, вернувшись к Anaconda2 (Python 2.7)


это происходит потому, что компилятор или интерпретатор находит более одного пакета файла, удаляет все количество одного и того же пакета, который у вас есть, а затем сохраняет только один, а затем пытается установить. Он служит


есть много вопросов по этому поводу и много предложений. Ни один из них не помог мне в недавнем Opencv 3.4.16 и Python 3.6/3.7. Наконец, я переключился на Pyhon 2.7.15 и установил opencv 3.1.0. DLL-проблема была решена.

когда я смотрю в cv2.pyd с зависимостью walker, 3.1 не имеет зависимости от одной отсутствующей dll. В формате OpenCV 3.4 и эта отсутствующая зависимость от этой dll:

API-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLL

может быть, это проблема.

P. S.: Я уже с Win7 pofessional 64Bit, 32bit Python 2.7.15


У меня была такая же проблема с python 3.6(Anaconda3) и OpenCV 3.4.1 для работы spyder. Даже после копирования cv2.pyd в Anaconda3 Users / home/Anaconda3/Lib / site-packages, это не сработало.

но нашел решение

позже я установил OpenCV и Dlib на Anaconda и скопировал сгенерированный cv2.cp36-win_amd64.пид и длиб.cp36-win_amd64.pyd в Anaconda3 пользователи / главная/Anaconda3 / Lib / сайт-пакеты. Их можно скопировать из папки среде C:\Users\home\Anaconda3\envs\opencv\Lib\site-packages.

наконец-то spyder начал работать


У меня такая же проблема. когда я устанавливаю Программирование WinPython и запускаю opencv после копирования cv2.pyd-файл из моего каталога opencv, он будет выглядеть так: C:\Users - ... ....\Downloads\opencv\build\python\2.7\x64, x64 или x86 зависит от ваших 32 или 64-разрядных устройств. и вставить в C:\Users - ... ....\Загрузки\WinPython-64bit-3.5.4.1qt5\python-3.5.4.amd64\Lib\site-packages, я предпочитаю предыдущий python 3.5, чем 3.6. Потому что, когда я" импортирую cv2 "(python 3.6), он показывает напрямую: "ImportError: Ошибка загрузки DLL: не удалось найти указанный модуль" Затем я устанавливаю python 3.5 и открываю командную строку WinPyhton и набираю "pip install opencv-python".

в командной строке загрузить opencv автоматически, он показывает процесс, как это "успешно установлен opencv-python-3.3.0.10"

наконец, я пытаюсь запустить open cv по типу "импорт cv2", он работает я пытаюсь набрать " cv2.версия", и показывает: '3.3.0'


установите python, используя:

  • pip install opencv-python (он будет принимать последнюю версию)

убедитесь, что opencv-python установлен в path (\Python\Python36\Lib\site-packages), вы найдете папку cv2 там.

для проверки версии cv2: импорт cv2 печати(cv2.__ version__)


под Winpython: файл cv2.pyd следует переименовать в _cv2.pyd


(основание) C:\WINDOWS\system32>conda установить C:\Users\Todd\Downloads\opencv3-3.1.0-py35_0.tar.bz2

Я запустил эту команду из терминала anaconda после того, как загрузил версию из https://anaconda.org/menpo/opencv3/files

Это единственный способ заставить cv2 работать, и я пробовал все в течение двух дней.


проблема из-за отсутствия python3.dll файл в Anaconda3.

чтобы устранить проблему, вы должны просто скопировать python3.dll до C:\Program Files\Anaconda3 (или где угодно Anaconda3 установлен).

вы можете узнать python3.dll загрузив двоичные файлы, указанные в нижней части страница выпуска Python и извлечения python3.dll из ZIP-файла.