Как установить Python OpenCV через Conda?

Я пытаюсь установить OpenCV для Python через Anaconda, но я не могу понять этого.

Я пробовал

conda install opencv
conda install cv2

Я также попытался найти

conda search cv

Нет сигары. Я наткнулся на это, в котором перечислены opencv как включенный пакет:

http://docs.continuum.io/anaconda/pkgs.html

После запуска conda info я заметил, что моя версия - 3.4.1, но я не мог найти никакой информации об этой версии в Интернете. Я довольно смущен этим.

Я пропустил что-то довольно очевидное здесь? Если opencv был доступен для предыдущей версии Anaconda, почему бы не быть доступным для более новой версии? И почему эта ссылка показывает только документацию для версии 1.9.2?

Ответ 1

Вы можете установить его с помощью binstar:

conda install -c menpo opencv

Ответ 2

Это сработало для меня (на Ubuntu и conda 3.18.3):

conda install --channel https://conda.anaconda.org/menpo opencv3

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

anaconda show menpo/opencv3

Это был результат:

To install this package with conda run:
     conda install --channel https://conda.anaconda.org/menpo opencv3

Я тестировал следующее в python без ошибок:

>>> import cv2
>>>

Ответ 3

conda install opencv в настоящее время работает для меня в UNIX/python2. Это стоит попробовать прежде, чем обратиться к другим решениям.

Ответ 4

Я кратко изложил свое полностью работающее решение: OpenCV-Python - Как установить пакет OpenCV-Python в Anaconda (Windows). Тем не менее я скопировал и вставил важные фрагменты в этот пост.


На момент написания статьи я использовал Windows 8.1, 64-битный компьютер, Anaconda/Python 2.x. (см. примечания ниже - это также работает для Windows 10 и, вероятно, для Python 3.x).

  • ПРИМЕЧАНИЕ 1: как уже упоминалось @great_raisin (спасибо) в разделе комментариев, тем не менее, это решение также работает для Windows 10.

  • ПРИМЕЧАНИЕ 2: вероятно, это будет работать и для Anaconda/Python 3.x. Если вы используете Windows 10 и Anaconda/Python 3.x, и это решение работает, пожалуйста, добавьте комментарий ниже. Спасибо! (Обновление: примечание из комментария "Работа в Windows 10")

  • ПРИМЕЧАНИЕ 3: в зависимости от того, используете ли вы Python 2.x или 3.x, просто измените оператор print соответствующим образом в фрагментах кода. то есть в Python 3.x это будет print("hello"), а в Python 2.x это будет print "hello".

TL; DR

Чтобы полностью использовать OpenCV с Anaconda (и Spyder IDE), нам необходимо:

  1. Загрузите пакет OpenCV с официального сайта OpenCV
  2. Скопируйте и вставьте cv2.pyd в каталог пакетов сайтов Anaconda.
  3. Установите пользовательские переменные среды, чтобы Anaconda знала, где найти утилиту FFMPEG.
  4. Проведите некоторое тестирование, чтобы убедиться, что OpenCV и FFMPEG теперь работают.

(Читайте подробные инструкции...)

Предпосылкой

Установить Анаконду

По сути, Anaconda - это красиво упакованная среда разработки Python, которая поставляется с множеством полезных пакетов, таких как NumPy, Pandas, IPython Notebook и т.д. Похоже, что это рекомендуется везде в научном сообществе. проверьте Анаконду, чтобы установить ее.

Установить OpenCV-Python для Anaconda

Осторожно: изначально я попробовал установить OpenCV-пакет binstar.org, как было предложено. Однако этот метод не включает кодек FFMPEG, т.е. вы можете использовать OpenCV, но не сможете обрабатывать видео.

Следующая инструкция работает для меня на основе этого видео OpenCV на YouTube. Пока что он работает как на моем настольном компьютере, так и на ноутбуке, как на 64-битных машинах, так и на Windows 8.1.

Загрузить пакет OpenCV

Во-первых, перейдите на официальный сайт OpenCV, чтобы загрузить полный пакет OpenCV. Выберите версию, которая вам нравится (2.x или 3.x). Я нахожусь на Python 2.x и OpenCV 3.x - главным образом потому, что именно так Учебники по OpenCV-Python настроены/основаны.

В моем случае я распаковал пакет (по сути, папку) прямо на диск C (C:\opencv).

Скопируйте и вставьте файл cv2.pyd

Каталог сайтов-пакетов Anaconda (например, C:\Users\Johnny\Anaconda\Lib\site-packages в моем случае) содержит пакеты Python, которые вы можете импортировать. Наша цель - скопировать и вставить файл cv2.pyd в этот каталог (чтобы мы могли использовать import cv2 в наших кодах Python.).

Для этого скопируйте файл cv2.pyd...

Из этого каталога OpenCV (начальная часть может немного отличаться на вашем компьютере). Думаю, для Python 3.x просто измените 2.x на 3.x соответственно.

# Python 2.7 and 32-bit machine:
C:\opencv\build\python\2.7\x84

# Python 2.7 and 64-bit machine:
C:\opencv\build\python\2.7\x64

В этот каталог Anaconda (начальная часть может немного отличаться на вашем компьютере):

C:\Users\Johnny\Anaconda\Lib\site-packages

После выполнения этого шага мы теперь сможем использовать import cv2 в коде Python. НО, нам все еще нужно проделать немного больше работы, чтобы заставить работать FFMPEG (видеокодек) (чтобы мы могли выполнять такие вещи, как обработка видео).

Установить переменные среды

Щелкните правой кнопкой мыши "Мой компьютер" (или "Этот компьютер" в Windows 8.1) → щелкните левой кнопкой мыши Свойства → щелкните левой кнопкой мыши вкладку "Дополнительно" → щелкните левой кнопкой мыши кнопку "Переменные среды...".

Добавьте новую переменную пользователя для указания на OpenCV (либо x86 для 32-разрядной системы, либо x64 для 64-разрядной системы). В настоящее время я нахожусь на 64-битной машине.

| 32-bit or 64 bit machine? | Variable     | Value                                |
|---------------------------|--------------|--------------------------------------|
| 32-bit                    | 'OPENCV_DIR' | 'C:\opencv\build\x86\vc12'           |
| 64-bit                    | 'OPENCV_DIR' | 'C:\opencv\build\x64\vc12'           |

Добавьте %OPENCV_DIR%\bin к пользовательской переменной PATH.

Например, моя пользовательская переменная PATH выглядит следующим образом...

Перед тем:

C:\Users\Johnny\Anaconda;C:\Users\Johnny\Anaconda\Scripts

После:

C:\Users\Johnny\Anaconda;C:\Users\Johnny\Anaconda\Scripts;%OPENCV_DIR%\bin

Это все, что мы сделали! FFMPEG готов к использованию!

Тест для подтверждения

Нам нужно проверить, можем ли мы теперь делать это в Anaconda (через Spyder IDE):

  • Импорт пакета OpenCV
  • Используйте утилиту FFMPEG (для чтения/записи/обработки видео)

Тест 1: Можем ли мы импортировать OpenCV?

Чтобы подтвердить, что Anaconda теперь может импортировать пакет OpenCV-Python (а именно, cv2), введите их в консоли IPython:

import cv2
print cv2.__version__

Если пакет cv2 импортирован нормально, без ошибок, и версия cv2 распечатана, значит, все в порядке! Вот снимок:

import-cv2-ok-in-anaconda-python-2.png
(источник: mathalope.co.uk)

Тест 2: Можем ли мы использовать кодек FFMPEG?

Поместите образец видеофайла input_video.mp4 в каталог. Мы хотим проверить, можем ли мы:

  • прочтите этот видеофайл .mp4 и
  • запишите новый видеофайл (может быть .avi или .mp4 и т.д.)

Для этого нам нужен тестовый код Python, назовите его test.py. Поместите его в тот же каталог, что и образец файла input_video.mp4.

Вот как может выглядеть test.py (я перечислил здесь как новые, так и более старые коды - сообщите нам, какой из них работает/не работает для вас!).

(Более новая версия...)

import cv2
cap = cv2.VideoCapture("input_video.mp4")
print cap.isOpened()   # True = read video successfully. False - fail to read video.

fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter("output_video.avi", fourcc, 20.0, (640, 360))
print out.isOpened()  # True = write out video successfully. False - fail to write out video.

cap.release()
out.release()

(или более старая версия...)

import cv2
cv2.VideoCapture("input_video.mp4")
print cv2.isOpened()   # True = read video successfully. False - fail to read video.

fourcc = cv2.cv.CV_FOURCC(*'XVID')
out = cv2.VideoWriter("output_video.avi",fourcc, 20.0, (640,360))
print out.isOpened()  # True = write out video successfully. False - fail to write out video.

cap.release()
out.release()

Этот тест ОЧЕНЬ ВАЖЕН. Если вы хотите обрабатывать видеофайлы, вам нужно убедиться, что Anaconda/Spyder IDE может использовать FFMPEG (видеокодек). Мне потребовались дни, чтобы заставить это работать. Но я надеюсь, что это займет у вас гораздо меньше времени! :)

Примечание. Еще один очень важный совет при использовании Anaconda Spyder IDE. Убедитесь, что вы проверили текущий рабочий каталог (CWD) !!!

Заключение

Чтобы полностью использовать OpenCV с Anaconda (и Spyder IDE), нам необходимо:

  1. Загрузите пакет OpenCV с официального сайта OpenCV
  2. Скопируйте и вставьте cv2.pyd в каталог пакетов сайтов Anaconda.
  3. Установите пользовательские переменные среды, чтобы Anaconda знала, где найти утилиту FFMPEG.
  4. Проведите некоторое тестирование, чтобы убедиться, что OpenCV и FFMPEG теперь работают.

Удачи!

Ответ 5

Кажется, что связанная вами страница не включает opencv. (Смешно, я действительно помню, что он был включен и в предыдущий момент.)

В любом случае установка OpenCV в Anaconda, хотя и недоступна через conda, довольно тривиальна. Вам просто нужно загрузить один файл.

  • Загрузите OpenCV из http://opencv.org/downloads.html и извлеките
  • Из извлеченной папки скопируйте файл из извлеченного каталога: opencv/build/python/2.7/(либо x86, либо x64, в зависимости от версии Anaconda)/cv2.pyd в каталог вашего сайта Anaconda, например, C:\Anaconda\Lib\сайт-пакеты
  • Чтобы заставить FFmpeg в opencv работать, вам нужно добавить каталог, в котором FFmpeg находится в пути (например, opencv/sources/3rdparty/ffmpeg). Затем вам придется найти DLL файл в этой папке (например, opencv_ffmpeg_64.dll) и скопировать или переименовать его в имя файла, содержащего версию opencv, которую вы устанавливаете (например, opencv_ffmpeg249_64) для версии 2.4.9.

Теперь в приглашении Python вы сможете ввести "import cv2"..., чтобы убедиться, что он работает, введите "print cv2.__ version__" и он должен распечатать загруженную версию OpenCV.

Ответ 6

Чтобы установить OpenCV в Anaconda, запустите командную строку Anaconda и установите OpenCV с помощью

conda install -c https://conda.anaconda.org/menpo opencv3

Проверьте, что он работает в вашей консоли Anaconda Spyder или IPython с помощью

import cv2

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

cv2.__version__

Ответ 7

Вы можете установить OpenCV 3, выполнив любую из следующих команд в командной строке Anaconda:

conda install -c menpo opencv3

conda install -c conda-forge opencv

канал mempo больше не поддерживается.

Он работал на Windows 10 и Ubuntu 14.

Источник:

https://anaconda.org/menpo/opencv3

https://github.com/conda-forge/opencv-feedstock

Ответ 8

Следующее устанавливает opencv из conda-forge (примечание: пробовал в Windows)

conda config --add channels conda-forge
conda install opencv

Ответ 9

В мае 2019 года ответ будет следующим:

conda update freetype
conda install opencv

Это обновляет libfreetype.6.dylib до 24.0.0 совместимости и устанавливает OpenCV 4.1.0. Мне не нужно было использовать -c conda-forge для указания канала, хотя вы можете, если вышеперечисленное не работает.

EDIT:

Обязательно придерживайтесь Python 3.6, это пока сделает вашу жизнь проще.

Ответ 10

У меня была точно такая же проблема, и я не смог установить conda для установки OpenCV. Однако мне удалось установить его с помощью установщика OpenCV, который вы найдете на этом сайте:

http://www.lfd.uci.edu/~gohlke/pythonlibs/

Его файлы - это файлы "Wheel", которые могут быть установлены с помощью пипа, например

pip install SomePackage-1.0-py2.py3-none-any.whl

в окне команд. Он работал со Spyder непосредственно после выполнения этой команды для меня. У меня был тот же опыт с другими пакетами, вышеупомянутый сайт UC Irvine - это золотой рудник.

Ответ 11

В командной строке я ввел следующую команду:

conda install -c menpo opencv=2.4.11

Это сработало для меня!

Ответ 12

Чтобы установить OpenCv с conda на Windows-64 и Python 3.5, единственным, который работал у меня, является:

conda install -c conda-forge opencv=3.1.0 

Ответ 13

Как и у других, у меня были проблемы с Python 3.5.1/Anaconda 2.4.0 на OS X 10.11.

Но я нашел совместимый пакет здесь:

https://anaconda.org/menpo/opencv3

Он может быть установлен через командную строку следующим образом:

 conda install -c https://conda.anaconda.org/menpo opencv3

Работал как шарм. Впервые я получил OpenCV для работы на 3.x!

Ответ 14

Чтобы установить пакет OpenCV с помощью conda, запустите:

conda install -c menpo opencv3=3.1.0

https://anaconda.org/menpo/opencv3

Ответ 15

Единственное решение для Windows. Установка OpenCV 3.x для Python 3.x

Загрузите файл .whl (cpMN, где у вас есть Python MN). contrib включает в себя пакеты OpenCV-extra. Например, если у вас есть Python 3.6 и Windows 64-bit, вы можете загрузить opencv_python ‑ 3.2.0 + contrib ‑ cp36 ‑ cp36m ‑ win_amd64.whl

Из командной строки введите:

pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win_amd64.whl

В вашем conda list opencv-python 3.2.0+contrib <pip> будет пакет: opencv-python 3.2.0+contrib <pip>

Теперь вы можете проверить это (без ошибок):

>>> import cv2
>>>

Первоначальная страница источника, где я взял информацию, находится здесь.

Ответ 16

В Linux, как обсуждалось здесь, лучший способ получить opencv в настоящее время - от loopbio в conda-forge:

conda install -c loopbio -c conda-forge -c pkgw-forge ffmpeg-feature ffmpeg gtk2 opencv

Если у вас есть "современный CPU", существует также скомпилированная версия, позволяющая использовать все современные расширения набора инструкций процессора [...] и против libjpeg-turbo ":

conda install -c loopbio -c conda-forge -c pkgw-forge ffmpeg-feature ffmpeg gtk2 opencv-turbo`

Два из решений, упомянутых в других ответах, не работают безоговорочно:

  • Конда, с которой вы проходите conda install opencv или pip install opencv-python, не поддерживает gtk2, поэтому вы не можете отображать изображения через imshow.
  • Конда, созданная Menpo (conda install -c menpo opencv3), поддерживает gtk2, но
    • они только создали OpenCV 3.2 для Python 3.5, а не Python 3.6
    • Ubuntu 16.10 устарел libpng12, что приводит к отсутствующей зависимости и следующей ошибке при попытке import cv2: ImportError: libpng12.so.0: cannot open shared object file: No such file or directory, как обсуждалось здесь

EDIT: @Yamaneko указывает, что с 14 июня 2017 года "есть проблема с loopbio OpenCV версии 3.2.0, которая молча читает и не записывает видео. сочетание проблемы с OpenCV выше по течению в сочетании со старым GCC. Подробнее здесь. На пути к решению проблемы существует PR".

Ответ 17

Простым и прямым решением является установка python3.5 перед установкой opencv3

conda install python=3.5

за которым следует

conda install --channel https://conda.anaconda.org/menpo opencv3 

Ответ 18

Я думаю, что самый простой вариант, который должен работать кросс-платформенным и в разных версиях Anaconda,

#Run Anaconda Prompt as an Administrator (on Windows) & execute the command below
#(you may need to use   sudo   on a Unix-Based or Mac system 
#to have the needed permissions)

conda install -c conda-forge opencv

Ответ 19

Если conda install opencv или conda install -c https://conda.binstar.org/menpo opencv не работает, вы можете попытаться скомпилировать его из источника.

Загрузите источник из http://opencv.org/downloads.html, следуйте инструкциям по установке в http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html (возможно, вы можете перейти непосредственно к последней части:" Создайте OpenCV из Source Using CMake...), измените команду cmake следующим образом:

mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/**/env/opencv-2.4.10 -D BUILD_NEW_PYTHON_SUPPORT=ON -D PYTHON_EXECUTABLE=/home/**/env/anaconda/bin/python -D PYTHON_INCLUDE_DIR=/home/**/env/anaconda/include/python2.7 -D PYTHON_LIBRARY=/home/**/env/anaconda/lib/libpython2.7.so -D PYTHON_PACKAGES_PATH=/home/**/env/anaconda/lib/python2.7/site-packages -D PYTHON_NUMPY_INCLUDE_DIRS=/home/**/env/anaconda/lib/python2.7/site-packages/numpy/core/include ..

make -j4
make install

Вы найдете cv2.so в anaconda/lib/python2.7/site-packages.

Тогда:

import cv2
print cv2.__version__

Откроется 2.4.10.

Моя среда - это GCC 4.4.6, Python 2.7 (anaconda) и opencv-2.4.10.

Ответ 20

Следующая команда работает и для меня. Я использую встроенный IPython Notebook в Anaconda.

conda install -c https://conda.binstar.org/menpo opencv

Ответ 21

Правильная команда для установки текущей версии OpenCV 3.3 в окнах Anaconda:

conda install -c conda-forge opencv

или

conda install -c conda-forge/label/broken opencv

Для 3.2 используйте это:

conda install -c menpo opencv3

Ответ 22

conda install -c https://conda.anaconda.org/menpo opencv

Попробуйте это

Ответ 23

Скопируйте файл cv2.pyd в каталог C:\Users\USERNAME\Anaconda2\Lib.

Вы получаете файл cv2.pyd по этой ссылке (https://sourceforge.net/projects/opencvlibrary/files/).

cv2.pyd находится в C:\Users\USERNAME\Desktop\opencv\build\python\2.7\x64.

Ответ 24

Я только что попробовал два компьютера Win32 Python 3.5. Сначала мне удалось conda install opencv, но это не сработало и не было версии из menpp, но это произошло:

conda install -c https://conda.binstar.org/conda-forge opencv

Ответ 25

ОП не указал, что ему абсолютно необходимо решение с использованием команды conda, я думаю, что установка opencv проще всего с помощью приложения Anaconda Navigator:

  1. откройте Anaconda Navigator (например, через меню "Пуск" вашей ОС),
  2. щелкните вкладку "Среды" слева.
  3. Рядом с этой вкладкой выберите среду conda, в которой вы хотите установить opencv (если у вас нет конкретной среды, выберите base (root) среду по умолчанию).
  4. Справа выберите Not installed в раскрывающемся списке и введите "opencv" в поле фильтра,
  5. выберите пакет 'opencv' в списке,
  6. нажмите "Применить" в нижней части приложения. Anaconda Navigator теперь установит для вас opencv.

Ответ 26

Я установил его так:

$ conda install --channel https://conda.anaconda.org/conda-forge opencv

Я пробовал conda install opencv напрямую, но это не работает для меня, поскольку я использую Python 3.5, который является более высокой версией, которая по умолчанию имеет библиотеку OpenCV в конде. Позже я попробовал "anaconda/opencv", но он тоже не работает. Наконец, я обнаружил, что conda-forge/opencv работает для Python 3.5.

Ответ 27

У меня были шаги в репо, которые помогут вам правильно установить OpenCV.

Если ссылки сломаны, см. Это.

Для требований и предварительных условий следуйте этим инструкциям:

ВАМ НЕОБХОДИМО Иметь ОС WINDOWS, чтобы начать этот проект.

окна с 7 по 10

Внимательно следуйте инструкциям

  1. Установите Anaconda2 32/64 python 2

    или же

    Установите Anaconda3 32/64 python 3

    Он зависит от информации о системе

    По пути вы должны проверить все параметры, игнорируя красный текст

    Затем дождитесь завершения установки...

    Открывать администратор CMD при завершении установки

    Убедитесь, что anaconda-python настроен в CMD admin

  2. Тип: python

    Это выйдет:

    C:\WINDOWS\system32> python Python 3.6.3 | Anaconda custom (64-bit) | (по умолчанию, 15 октября 2017, 03:27:45)

    [MSC v.1900 64 бит (AMD64)] на win32 Введите "помощь", "авторское право", "кредиты" или "лицензия" для получения дополнительной информации.

  3. Далее следует установить пакеты:

    Numpy

    OpenCV

    PyMySQL или pymysql

    Установка и импорт OpenCV

    conda install -c conda-forge opencv = (версия дополнительно)

    (нажмите "Да", если они будут обновлены)

    Установка и импорт памяти

    pip install numpy

    (нажмите "Да", если они будут обновлены)

    Установка и импорт PyMySQL/pymysql

    pip установить PyMySQL или pymysql

  4. Когда весь пакет полностью установлен, вы должны перезагрузить его.

    снова перейдите к администратору CMD

    тип "python"

    import cv2 (cv2 - OpenCV)

    импортировать Numpy или numpy

    import pymysql

    import os

    от PIL от Image

    если все в порядке, то вы готовы запустить код!

    После того, как вы закончите все шаги, теперь вы можете протестировать код на питоне SPYDER, который я использую

Ответ 28

Хотя это не для Conda, и это характерно для Ubuntu, самый простой способ установки OpenCV со всеми его вкладками, такими как SIFT и SURF, - использовать:

pip install opencv-contrib-python

Он поддерживает Python2. 7+ и Python 3. 4+

Если вы не хотите, чтобы вкладки были встроены, вы могли бы:

pip install opencv-python

Вам нужно установить следующие зависимости ниже, прежде чем запускать эти команды:

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

Это хороший учебник по настройке OpenCV на Ubuntu: https://medium.com/@debugvn/installing-opencv-3-3-0-on-ubuntu-16-04-lts-7db376f93961

Ответ 29

Я только что установил conda 4.7.11 в Windows 10. OpenCV можно легко установить в Anaconda Navigator. После запуска Navigator нажмите "Среды" на левой панели. В верхнем раскрывающемся списке выберите Не установлено. Затем найдите py-opencv, поставьте галочку слева, чтобы установить его. Он установит зависимый пакет libopencv. Я использую import cv2 в Spyder для доступа к нему.

enter image description here

Ответ 30

У меня была та же проблема, но я решил ее сейчас. Это то, что я сделал:

Сначала введите conda install -c https://conda.binstar.org/menpo opencv в командной строке, а затем найдите путь Anaconda\pkgs\opencv-2.4.9.1-np19py27_0\Lib\site-packages. Теперь скопируйте все файлы, представленные здесь, в Anaconda\Lib\site-packages. Теперь вы сможете использовать OpenCV с Python.