Как установить opencv
Перейти к содержимому

Как установить opencv

  • автор:

Установка OpenCV

В статье разберем, как установить библиотеку OpenCV на компьютеры с операционной системой Windows и MacOS.

Установка OpenCV на компьютер с ОС Windows

Установка OpenCV

  1. Установить Python со встроенными библиотеками.
  2. После установки Python нажимаем на комбинацию кнопок Win+R. В открывшемся окне нужно прописать:

Начнётся скачивание и установка:

Установка OpenCV

Готово! Библиотека OpenCV установлена на ваш Windows-компьютер.

Для установки OpenCV на компьютер с ОС Linux вводим такую же команду.

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

  1. Установить Python со встроенными библиотеками для своей операционной системы.

Если у Вас уже установлен Python, рекомендуем переустановить и обязательно поставить галочку у пункта «добавить в PATH».

2. Открываем терминал и пишем туда несколько команд:

pip install --upgrade pip pip install opencv-python

После ввода произойдёт скачивание и установка.

Установка OpenCV

Проверка установки

Для проверки откроем Python и напишем:

import cv2

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

Курсы Робикс, в которых изучается этот материал.

Как установить opencv

В строке поиска пишем opencv. Ставим галочку около «py-opencv». В правом нижнем углу нажимаем «Apply»

Через некоторое время появится вот такое окно. Нажимаем «Apply». Начинается процесс установки библиотеки

Иногда появляется вот такое окно, сообщающие о множественных ошибках. Нажимаем ОК. Появление этого окна не всегда означает, что библиотеки не установятся

Когда процесс установки завершится, нужно проверить, установились ли наша библиотека.

Для этого щёлкаем левой кнопкой на значок «Play» и в появившемся меню выбираем пункт «Open with Python»

Откроется командная строка с интерпретатором Python.
1. Пишем «import cv2», нажимаем Ввод.
На следующей строке должны появиться три знака «больше» («>>>»).
2. Пишем «print (cv2.__version__)» и нажимаем Ввод.
На следующей строке должна появиться версия нашей библиотеки.
Если всё верно, значит библиотека установилась успешно. Закрываем командную строку, выключаем Anaconda Navigator и приступаем у Установке PyCharm.

Как установить библиотеку OpenCV в Python – 2 способа

OpenCV – это библиотека Python с открытым исходным кодом, которая используется для понимания содержимого цифрового изображения. CV – это аббревиатура компьютерного зрения. Она извлекает описание из изображения в реальном времени или цифрового изображения, которое может быть объектом, текстовым описанием и т. д.

Мы можем выполнять множество задач с помощью библиотеки OpenCV, таких как обнаружение лиц, распознавание лиц, обнаружение blob-объектов, выделение границ, фильтр изображений, сопоставление шаблонов и т.д. Разберем как установить библиотеку OpenCV в нашей среде Python.

Установка OpenCV

OpenCV устанавливается следующими способами:

  • с помощью команды pip;
  • используя Anaconda.

Использование команды pip

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

pip install opencv-contrib-python --upgrade

Или можно установить без дополнительного модуля с помощью следующей команды:

pip install opencv-python

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

Теперь мы проверим правильность установки OpenCV. Импортируйте модуль cv2 и распечатайте его версию.

Импорт модуля cv2

Если он правильно установлен, то он покажет свою версию.

Использование Anaconda

Anaconda – это программный пакет Python. Anaconda с Jupyter – лучший способ работать с OpenCV. Во-первых, нам нужно установить установщик графики Anaconda с официального сайта.

Установщик Anaconda

Теперь выберите подходящий установщик для вашей версии Python.

Соответствующий версии Python установщик

После завершения загрузки откройте командную строку Anaconda и введите следующую команду.

conda install -c conda-forge opencv

Завершение загрузки

Затем нажмите кнопку ввода, загрузится всю номинальная конфигурация OpenCV.

Загрузка OpenCV

Теперь вы готовы работать с OpenCV.

OpenCV — установка 4.5.5 (под Linux)

Рассмотрим как установить последнюю версию OpenCV из исходников под ОС Linux.

На время написания (апрель 2022) — последняя стабильная версия OpenCV — 4.5.5 ( релиз от 25 декабря 2021).

Установка из исходников может потребоваться — если захочется воспользоваться модулем dnn для запуска нейронных сетей с поддержкой CUDA (технология от Nvidia для параллельных вычислений на видеокартах).

На установке CUDA подробно останавливаться не буду, но сделаю небольшое замечание ниже.

Сама установка OpenCV состоит из нескольких простых шагов, которые приводятся в документации:

1. Установка требуемых программ для сборки:

sudo apt update && sudo apt install -y cmake g++ wget unzip

Если вы и так используете компьютер для разработки — то скорее всего это всё у вас и так уже установлено.

2. Установка требуемых библиотек:

В сети приводится вот такой список:

sudo apt-get install build-essential cmake pkg-config unzip yasm git checkinstall sudo apt-get install libjpeg-dev libpng-dev libtiff-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libavresample-dev sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev sudo apt-get install libxvidcore-dev x264 libx264-dev libfaac-dev libmp3lame-dev libtheora-dev sudo apt-get install libfaac-dev libmp3lame-dev libvorbis-dev sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev sudo apt-get install libgtk-3-dev sudo apt-get install libtbb-dev sudo apt-get install libatlas-base-dev gfortran sudo apt-get install libprotobuf-dev protobuf-compiler sudo apt-get install libgoogle-glog-dev libgflags-dev sudo apt-get install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen sudo apt-get install libgtkglext1 libgtkglext1-dev sudo apt-get install libopenblas-dev liblapacke-dev libva-dev libopenjp2-tools libopenjpip-dec-server libopenjpip-server libqt5opengl5-dev libtesseract-dev

Не все эти библиотеки нужны и часть можно не ставить — просто при подготовке к сборке cmake будет говорить, что чего-то не хватает.

3. Скачивание и распаковка исходников OpenCV:

# Download and unpack sources wget -O opencv.zip https://github.com/opencv/opencv/archive/4.x.zip wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.x.zip unzip opencv.zip unzip opencv_contrib.zip

Соответственно — здесь 4.x нужно заменить на 4.5.5

wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.5.zip wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.5.zip

4. Подготовка директории для сборки:

# Create build directory and switch into it mkdir -p build && cd build

5. Подготовка к сборке и сборка:

# Configure cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.x/modules ../opencv-4.x # Build cmake --build .

6. Установка:

sudo make install

По-умолчанию, файлы будут установлены в /usr/local/

/usr/local/bin — исполняемые файлы
/usr/local/lib — библиотеки (.so)
/usr/local/include/opencv4 — заголовочные файлы
/usr/local/cmake/opencv4 — cmake package
/usr/local/share/opencv4 — другие файлы (e.g. trained cascades in XML format)

Замечания

Если cmake почему-то не увидел CUDA или cuDNN,то придётся ему подсказать и принудительно указать, что мы хотим использовать CUDA:

cmake -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda -D CUDNN_LIBRARY=/usr/lib/cuda/lib/libcudnn.so -D CUDNN_INCLUDE_DIR=/usr/lib/cuda/include -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.5.5/modules -D WITH_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_DNN_CUDA=ON ../opencv-4.5.5/ make -j8

Здесь требуется сделать несколько замечаний:

Если устанавливать cuDNN (версии 8) через deb-пакет, то он устанавливается в /usr/lib/x86_64-linux-gnu/ и при попытке сборки может выдавать ошибку вида:

Could NOT find CUDNN: Found unsuitable version “…”, but required is at least “7.5”

Оказывается, что в 8-й версии cuDNN из deb-пакета почему-то нет cudnn.h — и эту ошибку можно убрать либо создав ссылку на cudnn_version_v8.h:

sudo ln -s ./cudnn_version_v8.h ./cudnn.h

, либо скачать и установить cuDNN из архива (cudnn-linux-x86_64-8.4.0.27_cuda11.6-archive.tar.xz), содержимое которого скопировать в /usr/local/cuda

FAST_MATH

Во многих статьях рекомендуют в качестве параметров сборки указывать опцию -D ENABLE_FAST_MATH=1

Однако, необходимо иметь в виду, что эта опция включает оптимизацию

-ffast-math

Sets the options -fno-math-errno, -funsafe-math-optimizations, -ffinite-math-only, -fno-rounding-math, -fno-signaling-nans, -fcx-limited-range and -fexcess-precision=fast.

This option causes the preprocessor macro __FAST_MATH__ to be defined.

This option is not turned on by any -O option besides -Ofast since it can result in incorrect output for programs that depend on an exact implementation of IEEE or ISO rules/specifications for math functions. It may, however, yield faster code for programs that do not require the guarantees of these specifications.

Что может привести к непредвиденным и нежелательным последствиям при вычислениях на CPU.

Например, при использовании OpenCV, собранного с этой опцией — у меня возникли проблемы с выполнением модели нейронной сети через модуль dnn на центральном процессоре.

Симптомы были следующими: при работе на CUDA — всё работало как надо, но при попытке запуска на CPU — на выходе модели кроме нормальных данных — было ещё много nan.

Python

Если сборка OpenCV была выполнена с поддержкой python, то после установки пакет поставится в /usr/local/lib/python3.x/site-packages, где x — ваша версия питона.

Чтобы указать, что нужно брать пакет cv2 именно оттуда — нужно перед импортом этого модуля добавить в путь поиска данную директорию.

import sys sys.path.insert(0, '/usr/local/lib/python3.8/site-packages') #print(sys.path) import cv2 print(cv2.__version__)

Это может понадобиться если, опять-таки, захочется чтобы OpenCV-ный модуль dnn мог работать с CUDA.

Заключение

Установка завершена и остаётся собрать свою первую тестовую программу.

Для сборки можно использовать вот такой

CC := g++ CFLAGS := -I/usr/local/include/opencv4 -L/usr/local/lib OBJECTS := LIBRARIES := -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_dnn -lopencv_videoio -lopencv_imgcodecs .PHONY: all clean all: test test: $(CC) $(CFLAGS) -o test test.cpp $(LIBRARIES)

Ссылки

  • OpenCV — Installation in Linux
  • opencv releases
  • Compiling OpenCV with CUDA support
  • How to Compile OpenCV 4.5.2 with CUDA 11.2 and cuDNN 8.1 on Ubuntu 20.04

По теме

  • OpenCV шаг за шагом. Установка.
  • OpenCV шаг за шагом. Установка OpenCV под OC Linux
  • OpenCV — установка 2.3.1

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *