💻
Учебник "Машинное зрение", том 2
  • Платформа Copter.Space
  • Введение
    • О пособии
  • Раздел 1
    • Основные понятия и инструменты.
    • Установка дистрибутива Linux
    • Настройка внешнего доступа через SSH, сети WiFi и камеры
    • Настройка рабочей станции для симулятора полётов/мониторинга дрона
    • Симулятор дрона jmavsim
  • РАЗДЕЛ 2
    • Раздел 2. Среда ROS (Robot Operating System)
    • Основные концепции системы ROS
    • Сообщество разработчиков/пользователей ROS
    • Граф Имён Ресурсов
    • Подключение к симулятору и управление виртуальным дроном с помощью ROS
    • Подключение к симулятору и управление дроном с помощью программы на Питоне
    • Подключение Raspberry PI к полётному контроллеру Pixhawk и управление реальным дроном с помощью ROS
  • Раздел 3
    • Основы компьютерного зрения и OpenCV
    • Основной используемый функционал OpenCV – библиотека Aruco
    • Получение и обработка изображения с камеры Raspberry PI
    • Публикация изображений камеры Raspberry PI через ROS
    • Запуск публикации изображений с камеры с помощью пакета ROS
    • Калибровка камеры
    • Распознавание маркеров и оценка положения камеры в пространстве
  • Раздел 4.
    • Среда визуализации RVIZ
    • Визуализация в RVIZ
    • Пример программы отображения маркеров в RVIZ
  • Раздел 5.
    • Реализация зависания дрона под Aruco маркерами
Powered by GitBook
On this page

Was this helpful?

  1. Раздел 3

Основы компьютерного зрения и OpenCV

PreviousПодключение Raspberry PI к полётному контроллеру Pixhawk и управление реальным дроном с помощью ROSNextОсновной используемый функционал OpenCV – библиотека Aruco

Last updated 5 years ago

Was this helpful?

OpenCV (Open Source Computer Vision Library: http://opencv.org) – набор библиотек с открытым исходным кодом, распространяемый по лицензии BSD, в который включены сотни алгоритмов компьютерного зрения.

Установка OpenCV на Raspberry PI

Установка библиотек OpenCV – из исходных кодов -длительный процесс, он поэтапно описан ниже в этой главе. Первым делом нужно обновить стандартный набор пакетов и перезагрузить Raspberry:

sudo apt-get update
sudo apt-get upgrade
sudo rpi-update
sudo reboot

Установка инструментов для разработки:

sudo apt-get update

Установка инструментов для разработки:

sudo apt-get install build-essential git cmake pkg-config

Установка пакетов для обработки изображений в формате JPEG, PNG, TIFF и инструментов обработки видеопотока:

sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev

Установка библиотеки GTK, для возможности отображения картинок на экране и построения GUI интерфейсов:

sudo apt-get install libgtk2.0-dev

Инструменты для ускорения вычислений (операций над матрицами и т.п.):

sudo apt-get install libatlas-base-dev gfortran

Заголовочные файлы для работы с языком Python:

sudo apt-get install python2.7-dev python3-dev

Далее нужно получить из интернет исходный код библиотек OpenCV (Raspberry PI должен быть подключен к Интернет для этого). В нашем примере мы получаем версию библиотек 3.0.0. По мере выхода новых релизов OpenCV номер 3.0.0 следует заменить на соответствующий:

cd ~
wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.0.0.zip
unzip opencv.zip

Для полной установки также можно установить дополнительные библиотеки OpenCV. Убедитесь, что версии самой OpenCV и библиотек совпадают (в нашем примере – 3.0.0):

wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.0.0.zip
unzip opencv_contrib.zip

Установим менеджер пакетов для Python - pip:

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

Подготовка к сборке OpenCV из исходных кодов:

cd ~/opencv-3.0.0/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
 -D CMAKE_INSTALL_PREFIX=/usr/local \
 -D INSTALL_C_EXAMPLES=ON \
 -D INSTALL_PYTHON_EXAMPLES=ON \
 -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.0.0/modules \
 -D BUILD_EXAMPLES=ON ..

Нужно проверить вывод команды cmake, для Python 2 и 3 он должен выглядеть примерно так:

Компилируем OpenCV:

make -j4

Ключ -j4 означает использовать при компиляции все 4 ядра. При компиляции Raspberry может зависнуть, если это происходит – можно компилировать, используя одно ядро.

Это займёт больше времени, но позволит избежать ошибок, связанных с параллельной обработкой:

make clean
make

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

sudo make install
sudo ldconfig

Если команды выполнились без ошибок – установка OpenCV завершена успешно. После установки можно проверить работу OpenCV с помощью Python:

python
 >>> import cv2
 >>> cv2.__version__
 '3.0.0'

Если команда выдала версию OpenCV – установка завершена успешно и можно приступать к разработке программ под OpenCV на Python.

https://docs.opencv.org/3.4.1/d1/dfb/intro.html
http://robotclass.ru/articles/raspberrypi-3-opencv-3-install/
http://www.ekzorchik.ru/2017/09/how-to-install-opencv-on-raspberry-pi-3-model-b-jessie/