Установка OpenCV 3 для Python 3 на Mac с использованием Homebrew и pyenv

Я запускаю Mac OS X 10.11 (El Capitan). Я хочу:

  • Сохраняйте мою системную версию Python по умолчанию
  • Установить Python 3.5 рядом с ним
  • Установить OpenCV 3 и привязки Python

Я установил pyenv и Python 3.5, выполнив этот ответ SO: qaru.site/info/62874/...

Я активировал мою установку Python 3 и установил OpenCV 3 с поддержкой Python 3 следующим образом:

pyenv shell 3.5.0
brew install opencv3 --with-python3

Но когда я запускаю оболочку IPython и импортирую cv2, я получаю сообщение об ошибке:

ImportError                               Traceback (most recent call last)
<ipython-input-1-72fbbcfe2587> in <module>()
----> 1 import cv2

ImportError: No module named 'cv2'

почему?

Ответ 1

Отвечая на мой собственный вопрос: мне нужно вручную создать символическую ссылку на файл общих объектов и поместить его в каталог penon 3 python 3:

ln -s /usr/local/opt/opencv3/lib/python3.5/site-packages/cv2.cpython-35m-darwin.so ~/.pyenv/versions/3.5.0/lib/python3.5/site-packages/cv2.so

Теперь строка import cv2 работает так, как ожидалось в Python.

Ответ 2

opencv3 только кег и не привязывается при установке через Brew

Выполните следующие действия:

$ brew link opencv3 --force

Это более контролируемый подход, чем создание символических ссылок вручную.

Затем вы сможете:

$ python3
import cv2

Приветствия