Как установить OpenCV на Raspberry Pi 3

Установить OpenCV на Raspberry Pi

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

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

В этом уроке мы объясним, как установить OpenCV на Raspberry Pi.

Предпосылки

Мы предполагаем, что на вашем Raspberry Pi установлен Raspbian .

Установка OpenCV из репозиториев Raspbian

Модуль OpenCV Python доступен в стандартном репозитории Raspbian. На момент написания статьи в репозиториях была версия 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 будет оптимизирован для вашей системы.

Начните с увеличения пространства подкачки, чтобы избежать зависаний компиляции из-за проблем с памятью:

 sudo nano /etc/dphys-swapfile

Измените значение CONF_SWAPSIZE со значения по умолчанию 100 на 1024 :

/etc/dphys-swapfile

 CONF_SWAPSIZE = 1024

Сохраните файл и выполните следующую команду, чтобы изменения вступили в силу:

 sudo /etc/init.d/dphys-swapfile restart

Теперь можно приступить к сборке OpenCV. Для начала обновите индекс пакетов и установите инструменты сборки и необходимые зависимости:

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

Создайте каталог сборки , перейдите в него и клонируйте репозитории OpenCV и OpenCV contrib из Github:

 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.1.1. Если вы хотите установить более старую версию OpenCV, перейдите в каталоги opencv и opencv_contrib и выполните команду git checkout .

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

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

Настройте конфигурацию сборки OpenCV с помощью cmake :

 cmake -D CMAKE_BUILD_TYPE = RELEASE  -D CMAKE_INSTALL_PREFIX = /usr/local  -D INSTALL_C_EXAMPLES = OFF  -D INSTALL_PYTHON_EXAMPLES = OFF  -D OPENCV_GENERATE_PKGCONFIG = ON  -D ENABLE_NEON = ON  -D OPENCV_EXTRA_EXE_LINKER_FLAGS = -latomic  -D ENABLE_VFPV3 = ON  -D BUILD_TESTS = OFF  -D OPENCV_ENABLE_NONFREE = ON  -D OPENCV_EXTRA_MODULES_PATH = ~/opencv_build/opencv_contrib/modules  -D BUILD_EXAMPLES = OFF ..

Вывод будет выглядеть примерно так:

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

Запустите make , чтобы начать процесс компиляции:

 make -j4

Процесс займёт некоторое время, около 1–2 часов, в зависимости от модели Raspberry Pi. Если в какой-то момент компиляция даст сбой из-за нехватки ресурсов, выполните команду make ещё раз, и процесс продолжится с того места, где остановился.

После завершения вы увидите что-то вроде ниже:

 ... [100%] Linking CXX shared module ../../lib/python3/cv2.cpython-35m-arm-linux-gnueabihf.so [100%] Built target opencv_python3

Последний шаг — установка скомпилированных файлов OpenCV:

 sudo make install
 ... -- Installing: /usr/local/bin/opencv_version -- Set runtime path of "/usr/local/bin/opencv_version" to "/usr/local/lib"

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

Библиотека C++:

 pkg-config --modversion opencv4
 4.1.1

Библиотека Python:

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

Очистка

Если на вашей SD-карте недостаточно свободного места, удалите исходные файлы:

 rm -rf ~/opencv_build

Интенсивное использование файла подкачки может повредить вашу SD-карту. Верните размер файла подкачки к исходному:

 sudo nano /etc/dphys-swapfile

Измените значение CONF_SWAPSIZE на 100 :

/etc/dphys-swapfile

 CONF_SWAPSIZE = 100

Сохраните файл и активируйте изменения:

 sudo /etc/init.d/dphys-swapfile restart

Заключение

Мы показали вам, как установить OpenCV на плату Raspberry Pi. Сборка OpenCV из исходного кода даёт большую гибкость и должна быть первым вариантом при установке OpenCV.

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

opencv python raspberry pi

Связанные руководства

Источник

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

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