Python 2.7: ошибка при загрузке DLL cv2 (opencv): указанная процедура не найдена. (Windows XP) - PullRequest
0 голосов
/ 09 января 2020

Меня попросили сделать файл Python, чтобы делать снимки экрана через равные промежутки времени на минимальной машине Windows XP (к сожалению), по очевидным причинам совместимости я использовал Python 2.7.10 X86.

Приложение работает как положено на Windows 10, используя ту же версию Python (32 бита), но не работает на машине Windows XP.

opencv- python ни Подушка работает, они оба указывают, что указанная процедура не может быть найдена.

Я думаю, что проблема связана с отсутствующими зависимостями, особенно когда машина XP минималистична ...

Если быть более точным, файл python вылетает в строке import cv2.

Если есть другие скриншоты и библиотеки сравнения изображений, я был бы рад узнать!

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

Спасибо за чтение, любая помощь приветствуется!

РЕДАКТИРОВАТЬ: Извините, я забыл упомянуть, что мне нужно сравнить с предыдущим изображением. Я использовал: ImageChops.difference (a, b)

Ответы [ 2 ]

0 голосов
/ 10 января 2020

Изменить

image = pyautogui.screenshot("captures/capture.png")

на

image = pyautogui.screenshot(r"captures/capture.png")

0 голосов
/ 10 января 2020

Наконец, я решил использовать Pillow вместо cv2 и, в частности, использовать pip install Pillow == 4.0 для разрешения сбоя загрузки DLL (они оба были обеспокоены), но в итоге у меня возник новый конфликт:

IOError: кодировщик zip недоступен

Я занимаюсь расследованием, но для более подробной информации не делаю:

image = grab()
image.save("captures/capture.png")

или

image = pyautogui.screenshot("captures/capture.png")

пока что дает какие-либо результаты ...: (

...