OpenCV выдает ошибку всякий раз, когда используется импорт cv2 - PullRequest
3 голосов
/ 17 февраля 2020

Я установил cv2 с pip3, установил opencv-contrib- python на терминал, и он работал, но на python IDLE всякий раз, когда я пытаюсь импортировать cv2 или запускать файл vscode с импортированным cv2, он говорит

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/__init__.py", line 3, in <module>
    from .cv2 import *
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/cv2.cpython-38-darwin.so, 2): Symbol not found: _inflateValidate
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/.dylibs/libpng16.16.dylib (which was built for Mac OS X 10.13)
  Expected in: /usr/lib/libz.1.dylib
 in /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cv2/.dylibs/libpng16.16.dylib

в терминале. Есть идеи как это исправить?

Ответы [ 2 ]

4 голосов
/ 16 марта 2020

У меня был тот же вопрос, и я обнаружил, что это потому, что я использую старшую версию opencv (4.XX), а моя системная версия низкая (ma c os 10.12.5). Поэтому я установил более низкую версию opencv (3.4.5.20), и тогда вопрос решен.

Вы можете использовать следующую команду для просмотра списка версий opencv:

pip install opencv-python==

ОШИБКА: не удалось найти версию, которая удовлетворяет требованию opencv-python == (из версий: 3.4.2.16, 3.4.2.17, 3.4.3.18, 3.4.4.19, 3.4.5.20, 3.4.6.27, 3.4.7.28, 3.4.8.29, 3.4.9.31, 4.0.0.21, 4.0.1.24, 4.1.0.25, 4.1.1.26, 4.1.2.30, 4.2.0.32) ОШИБКА: Не найдено соответствующего распределения для opencv-python ==

Затем вы можете попробовать более низкую версию (например, 3.4.5.20) и установить ее, используя:

pip install opencv-python==3.4.5.20

Затем вы можете повторить попытку import cv2, чтобы увидеть, решен ли вопрос.

0 голосов
/ 18 февраля 2020

OpenCV также упоминается как cv2 в Python.

Установка OpenCV варьируется между операционными системами, поэтому ниже Iam предоставляет инструкции для Windows, Ma c и Linux:

Установка OpenCV на Windows

1. Откройте командную строку и введите:

pip install opencv- python

2. Затем откройте a Python сеанс и попробуйте:

import cv2

3.Если нет ошибок, значит, OpenCV успешно установлен и вы можете пропустить следующие шаги.

4 .Если есть ошибка (обычно говорит, что загрузка DLL не удалась), пожалуйста, скачайте файл предварительно скомпилированного колеса (.whl) по этой ссылке и установите его с помощью pip. Убедитесь, что вы загрузили правильный файл для вашей Windows версии и Python версии. Например, для Python 3,6 на Windows 64-разрядных вы должны сделать это:

pip install opencv_ python3 .2.0cp36cp36mwin_amd64.whl

5. Затем попытайтесь импортировать cv2 в Python снова. Если ошибка по-прежнему существует, введите в командной строке следующую команду:

pip install opencv- python

6. Теперь вы должны успешно импортировать cv2 в Python.

Установка OpenCV на Ma c

В настоящее время некоторые функции OpenCV не поддерживаются для Python 3 на ОС Ma c, поэтому лучше установить OpenCV для Python 2 и использовать Python 2 для запуска программы, содержащей код scv2. Стоит отметить, что Python 2 по умолчанию устанавливается на Ma c, поэтому нет необходимости устанавливать Python 2. Вот шаги для правильной установки OpenCV:

  1. Установка brew:

Откройте терминал и вставьте следующее:

/ usr / bin / ruby -e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 2. OpenCV зависит от GTK +, поэтому, пожалуйста, установите эту зависимость сначала с помощью brew (всегда с терминала):

brew install gtk +

Установить OpenCV с помощью brew:

brew установить opencv

Открыть Python 2, набрав:

python

Импорт cv2 в Python:

импорт cv2

Если вы не получаете ошибок, это означает, что OpenCV был успешно установлен.

Установка OpenCV в Linux

1.Пожалуйста, откройте ваш терминал и выполните следующие команды одну за другой:

sudo apt-get install libqt4-dev cmake -D WITH_QT = ON .. make sudo make install 2.Если это не работает, выполните это:

sudo apt-get install libopencv- * 3. Затем установите OpenCV с помощью pip:

pip install opencv- python

Импорт cv2 в Python. Если ошибок нет, OpenCV успешно установлен.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...