Настройка OpenCV3 с Python3 в MacOS
Недавно я хотел начать проект с OpenCV, используя его на Python. Однако я нашел только краткие описания использования в Python2, а не в Python3. Я узнал, что вам нужно проделать некоторую предварительную работу, чтобы включить OpenCV с Python3, и я хочу провести вас через этот проект, если вы тоже боретесь с ним.
Предпосылки
- Убедитесь, что у вас установлен XCode и вы приняли лицензию разработчика следующим образом:
sudo xcodebuild -license
- Установите инструменты командной строки Apple, такие как GCC, make, clang и т. Д .:
sudo xcode-select --install
- Убедитесь, что у вас установлены Homebrew и Python3 (3.5, 3.6, 3.7)
- Установите псевдоним python на python3 в своем .bash_profile, чтобы он использовал Python3 по умолчанию.
alias python=”python3” alias python2=”python2”
Введите следующую команду, чтобы изменения вступили в силу:
source .bash_profile
- Убедитесь, что у вас установлен NumPy, необходимый для OpenCV.
python -m pip3 install numpy
Предварительные требования OpenCV
Мы собираемся настроить предварительные условия OpenCV с помощью Homebrew. Для этого введите следующие три команды.
brew install cmake pkg-config brew install jpeg libpng libtiff openexr brew install eigen tbb
Установка OpenCV из исходников
Мы установим OpenCV из репозитория GitHub. Поэтому перейдите в корневой каталог пользователей и клонируйте репо:
cd ~ git clone https://github.com/opencv/opencv
После этого клонируйте репозиторий opencv_contrib:
git clone https://github.com/opencv/opencv_contrib
Теперь нам нужно настроить OpenCV вместе с Python для наших нужд. Это та часть, на которую у меня ушло больше всего времени, чтобы понять, как поддерживать работу.
Перейдите в каталог opencv, создайте новый каталог с именем build и войдите в него:
cd ~/opencv mkdir build cd build
Перед настройкой сборки нам необходимо создать виртуальную среду, чтобы убедиться, что мы используем правильную версию Python, что может быть сложной задачей при установке OpenCV. Поэтому выполните следующие команды:
python -m venv venv source venv/bin/activate
Затем мы настроим фактическую сборку с помощью cmake. Я нашел отличную статью с шаблоном для этого, которую мы будем использовать, и я объясню, где найти необходимую информацию. Вот шаблон, который вы можете скопировать и вставить в свой терминал:
Присмотритесь к строкам 4 и 5. Это те, которые вам нужно настроить под свои нужды. Перейти в каталог
/usr/local/Cellar/python3/
И проверьте, какие версии Python доступны для вас и как устроены каталоги. Однако это должно быть похоже на два предоставленных мной пути.
После настройки этих двух строк для ваших нужд нажмите Enter, и начнется выполнение cmake.
Если команда завершилась, ее нужно скомпилировать и установить.
make -j4
Флаг -j4 использует все четыре ядра, доступные на моем Mac. Это может занять несколько минут, поэтому выпейте кофе и откиньтесь на спинку кресла. После компиляции без ошибок выполните следующую команду, чтобы установить его.
sudo make install
Переименуйте файл OpenCV для дальнейшего использования в Python:
cd /usr/local/lib/python3.6/site-packages/ mv cv2.cpython-35m-darwin.so cv2.so cd ~
Если вы используете другую версию Python, измените свой путь. Поздравляю! Вы успешно установили OpenCV под Python. Чтобы сделать его глобально доступным, вам нужно сделать последний шаг.
Добавьте эти две строки в свой ~ / .bash_profile:
# Add opencv to PYTHONPATH export PYTHONPATH=/usr/local/lib/python3.6/site-packages/:$PYTHONPATH
Выйдите из виртуальной среды, если вы еще этого не сделали:
deactivate
Проверьте, сработало ли это, запустив интерактивную оболочку python и импортировав cv2:
python >>> import cv2
Если у вас возникли проблемы, не стесняйтесь оставлять комментарии или связываться со мной через Twitter, и я постараюсь вам помочь.
Понравилась история? Пожалуйста, поделитесь этим с другими!