ImportError: Ошибка загрузки DLL:% 1 не является допустимым приложением Win32

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

>>> import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.

Я понимаю, что есть много сообщений об этом, где предлагается, чтобы битность пакета отличалась от пакета python.

Однако все, что я запускаю, - 64 бита. Я на win7 64 бит, у меня есть winpython 2.7.3.3, дистрибутив 64 бит, и я скомпилировал opencv в 64 битах с инструкцией здесь и поместил dll cv2.pyd в папку Lib/site-packages на python.

К сожалению, предложение использовать 32-битную версию python для меня больше не работает, поскольку я должен обрабатывать массивы numpy слишком большими для 32 бит.

Спасибо!!!

------ UPDATE

Единственное, чего не хватало, это добавить новый путь двоичных файлов opencv (C:\opencv\build\bin\Release) к переменной среды Windows PATH, перезапустить python.

Теперь все работает нормально!

Ответ 1

Сообщение ImportError немного вводит в заблуждение из-за ссылки на Win32, тогда как проблема была просто в том, что opencv DLL не были найдены.

Эта проблема была решена путем добавления пути двоичных файлов opencv к переменной среды Windows PATH (в качестве примера на моем компьютере этот путь: C:\opencv\build\bin\Release).

Ответ 2

Вы можете попробовать установить 32-разрядную версию opencv

Ответ 3

Или вам нужно перестроить модуль cv2 для win 64bit.

Ответ 4

Все, что вам нужно сделать, это скопировать файл cv2.pyd из папки x86 (C:\opencv\build\python\2.7\x86\), чтобы C:\Python27\Lib\site-packages\, а не из папки x64.

Надеюсь, что вам помогут.

Ответ 5

Когда у меня была эта ошибка, она ушла после того, как я разбился и перезапустил компьютер. Попробуйте закрыть и снова открыть вашу среду IDE, если это не сработает, попробуйте перезагрузить компьютер. Я только что установил библиотеки в этот момент без перезапуска pycharm, когда получил эту ошибку.

Никогда не закрывал PyCharm сначала, чтобы проверить, потому что мой взорванный компьютер продолжает рушиться случайно... работая над этим, но он хотя бы решил эту проблему.. Маленькие победы..:).