Как установить OpenCV на Debian 10 Linux

12 set 2022 3 min di lettura
Как установить OpenCV на Debian 10 Linux
Indice dei contenuti

Введение

OpenCV (Open Source Computer Vision Library) — библиотека компьютерного зрения с открытым исходным кодом и имеет ярлыки для C++, Python и Java. Он используется для широкого спектра приложений, включая анализ медицинских изображений, сшивку изображений улиц, видеонаблюдение, обнаружение и распознавание лиц, отслеживание движущихся объектов, извлечение 3D-моделей и многое другое.

OpenCV может использовать преимущества многоядерной обработки и ускорения графического процессора для работы в реальном времени.

В этом руководстве показано, как установить OpenCV на Debian 10, Buster. Для большинства людей самый простой способ установить OpenCV в Debian — это установить его с помощью инструмента управления пакетами apt. Если вы хотите установить последнюю стабильную версию OpenCV из исходного кода, следуйте этому руководству.

Если вы хотите установить OpenCV на удаленный сервер, продолжайте читать, в противном случае пропустите первый абзац « Подключение к серверу » и прочитайте следующий.

Подключение к серверу

Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:

ssh [email protected]_DEL_SERVER

Далее вам нужно будет ввести пароль пользователя root.

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

ssh [email protected]_DEL_SERVER

Затем вам будет предложено ввести пароль пользователя.

Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:

ssh [email protected]_DEL_SERVER -p PORTA

Установите OpenCV из репозитория Debian.

Модуль OpenCV Python доступен в стандартном репозитории Debian. На момент написания этой статьи стандартные репозитории Debian включали устаревшую версию OpenCV 3.2.

Чтобы установить модуль OpenCV Python, введите:

sudo apt update
sudo apt install python3-opencv

Приведенная выше команда установит все пакеты, необходимые для запуска OpenCV.

Чтобы проверить установку, импортируйте модуль cv2 и распечатайте версию OpenCV:

python3 -c "import cv2; print(cv2.__version__)"

Вы должны увидеть выходное сообщение, подобное следующему:

3.2.0

Если вы хотите установить OpenCV с привязками Python 2, установите пакет python-opencv.

Установить OpenCV из исходников

Сборка библиотеки OpenCV из исходного кода — рекомендуемый способ установки OpenCV. Он будет оптимизирован для вашей конкретной системы, и вы будете иметь полный контроль над параметрами сборки.

Чтобы установить последнюю версию OpenCV из исходного кода, выполните следующие действия:

Установите обязательные и необязательные зависимости:

sudo apt install build-essential cmake git pkg-config libgtk-3-dev \
 libavcodec-dev libavformat-dev libswscale-dev libv4l-dev \
 libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev \
 gfortran openexr libatlas-base-dev python3-dev python3-numpy \
 libtbb2 libtbb-dev libdc1394-22-dev

Клонируйте репозитории OpenCV и OpenCV contrib с помощью следующих команд:

mkdir ~/opencv_build && cd ~/opencv_build
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

На момент написания статьи версия по умолчанию в репозиториях github — версия 4.2.0. Если вы хотите установить более старую версию OpenCV, перейдите в каталоги opencv и opencv_contrib и запустите git checkout <opencv-version>

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

cd ~/opencv_build/opencv
mkdir build && cd build

Настройте сборку OpenCV с помощью CMake:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
 -D CMAKE_INSTALL_PREFIX=/usr/local \
 -D INSTALL_C_EXAMPLES=ON \
 -D INSTALL_PYTHON_EXAMPLES=ON \
 -D OPENCV_GENERATE_PKGCONFIG=ON \
 -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \
 -D BUILD_EXAMPLES=ON..

Когда система генерации CMake будет доработана, вы увидите примерно следующее:

...
 -- Configuring done
 -- Generating done
 -- Build files have been written to: /home/pi/opencv_build/opencv/build

Начинается процесс компиляции:

make -j2

Измените флаг -j в соответствии с вашим процессором. Если вы не знаете номер ядра вашего процессора, вы можете найти его, набрав nproc.

Компиляция может занять много времени, в зависимости от конфигурации вашей системы. После этого вы увидите что-то вроде этого ниже:

...
 [100%] Linking CXX executable../../bin/example_tutorial_imgcodecs_imwrite
 [100%] Built target example_tutorial_goodFeaturesToTrack_Demo
 [100%] Built target example_tutorial_imgcodecs_imwrite

Установите OpenCV, набрав:

sudo make install
...
 -- Installing: /usr/local/share/opencv4/samples/python/video_threaded.py
 -- Installing: /usr/local/share/opencv4/samples/python/video_v4l2.py
 -- Installing: /usr/local/share/opencv4/samples/python/watershed.py

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

pkg-config --modversion opencv4

Вы должны увидеть выходное сообщение, подобное следующему:

4.2.0
python3 -c "import cv2; print(cv2.__version__)"

Вы должны увидеть выходное сообщение, подобное следующему:

4.2.0-dev

Вывод

Мы показали вам два разных способа установки OpenCV в Debian 10. Выбранный вами метод зависит от ваших требований и предпочтений. Хотя установка упакованной версии из официального репозитория проще, создание OpenCV из исходного кода дает вам больше гибкости и должно быть вашим первым вариантом при установке OpenCV.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.