Съдържание:

Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow .: 4 стъпки
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow .: 4 стъпки

Видео: Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow .: 4 стъпки

Видео: Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow .: 4 стъпки
Видео: Skyrim - SECRETS OF SOLSTHEYE Dragonborn Island (Secrets # 315) 2024, Ноември
Anonim
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow
Откриване на обекти W/ Dragonboard 410c или 820c с помощта на OpenCV и Tensorflow

Тези инструкции описват как да инсталирате OpenCV, Tensorflow и рамки за машинно обучение за Python 3.5, за да стартирате приложението Object Detection.

Стъпка 1: Изисквания

Ще ви трябват следните точки:

  • DragonBoard ™ 410c или 820c;
  • Чиста инсталация на Linaro-alip:

    • DB410c: тестван във версия v431. Връзка:
    • DB820c: тестван във версия v228. Връзка:
  • Най -малко MicroSD карта с капацитет 16 GB (ако използвате 410c);

Изтеглете файла (В края на тази стъпка), разархивирайте и копирайте на MicroSD картата; Obs: Ако използвате DB820c, изтеглете файла, разархивирайте и се преместете в/home/*USER*/, за да улесните използването на командите.

  • USB концентратор;
  • USB камера (съвместима с Linux);
  • USB мишка и клавиатура;
  • Интернет връзка.

Obs: Следвайте тези инструкции в браузъра DragonBoard, ако е възможно, улеснявайки копирането на командите

Стъпка 2: Монтиране на MicroSD картата (само W/ DB410c)

  • Отворете терминала в Dragonboard;
  • В терминала изпълнете fdisk:

$ sudo fdisk -l

  • Поставете MicroSD картата в слота за карти за MicroSD на DragonBoard;
  • Стартирайте отново fdisk, търсейки името (и дяла) на новото устройство в списъка (напр. Mmcblk1p1)

$ sudo fdisk -l

Отидете в главната директория:

$ cd ~

Създайте папка:

sd папка на $ mkdir

Монтирайте MicroSD картата:

$ mount / dev / sdfolder

Стъпка 3: Инсталиране на необходимите рамки

  • Отворете терминала в Dragonboard;
  • В терминала отидете в избрана директория (използвайки "~" за 820c и монтираната SDCard за 410c):

(820c) $ cd ~

(410c) $ cd ~/sd папка

Отидете в папката за скриптове на детектора на обекти:

$ cd object_detector_tensorflow_opencv/скриптове/

Стартирайте скрипта за настройка на средата:

$ sudo bash set_Env.sh

Актуализирайте системата:

$ sudo apt актуализация

Инсталирайте тези пакети:

$ sudo apt install -y protobuf-компилатор gcc-aarch64-linux-gnu

g ++-aarch64-linux-gnu debootstrap schroot git curl pkg-config zip unzip python python-pip g ++ zlib1g-dev default-jre libhdf5-dev libatlas-base-dev gfortran v4l-utils hdf5* libhdfma* build bb libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libjpeg-dev libtiff5-dev libavcodec-dev libavformat-dev-deb-liv-dev-deb-dev libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl

Отидете в тази директория:

$ cd /usr /src

Изтеглете Python 3.5:

$ sudo wget

Извадете пакета:

$ sudo tar xzf Python-3.5.6.tgz

Изтрийте компресирания пакет:

$ sudo rm Python-3.5.6.tgz

Отидете в директорията на Python 3.5:

$ cd Python-3.5.6

Активирайте оптимизациите за компилацията на Python 3.5:

$ sudo./configure --enable-optimizations

Компилирайте Python 3.5:

$ sudo направи altinstall

Надстройте pip и инструменти за настройка:

$ sudo python3.5 -m pip install -надстройка pip && python3.5 -m pip install -надстройка за настройка

Инсталирайте numpy:

$ python3.5 -m pip install numpy

Отидете в избраната директория:

(820c) $ cd ~

(410c) $ cd ~/sd папка

Изтеглете Tensorflow 1.11 whl:

$ wget

Инсталирайте тензорния поток:

$ sudo python3.5 -m pip install tensorflow-1.11.0-cp35-none-linux_aarch64.whl

Клониране на хранилища на OpenCV и OpenCV Contrib:

$ sudo git clone -b 3.4 https://github.com/opencv/opencv.git && sudo git clone -b 3.4

Отидете в директорията:

$ cd opencv

Създайте директория за изграждане и отидете в нея:

$ sudo mkdir build && cd build

Стартирайте CMake:

$ sudo cmake -D CMAKE_BUILD_TYPE = RELEASE -D CMAKE_INSTALL_PREFIX =/usr/local -D BUILD_opencv_java = OFF -D BUILD_opencv_python = OFF -D BUILD_opencv_pyTON3 = PON3 който python3.5) -D PYTHON_INCLUDE_DIR =/usr/local/include/python3.5m/-D INSTALL_C_EXAMPLES = OFF -D INSTALL_PYTHON3_EXAMPLES = OFF -D BUILD_EXAMPLES = OFF -D WITH_CUDA = OFF_D -OFF BD -DBUILD_TBB = ON -D OPENCV_ENABLE_NONFREE = ON -DBUILD_opencv_xfeatures2d = OFF -D OPENGL = ВКЛ модули..

Компилирайте OpenCV с 4 ядра:

$ sudo make -j 4

Инсталирайте OpenCV:

$ sudo направи инсталиране

Отидете в избраната директория:

(820c) $ cd ~

(410c) $ cd ~/sd папка

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

$ cd object_detector_tensorflow_opencv/скриптове/

Инсталирайте Python3.5 изисквания:

$ sudo python3.5 -m pip install -r requirements.txt --no -cache -dir

Тестов внос:

$ python3.5

> import cv2 >> import tensorflow

Obs: Ако cv2 връща грешка при импортиране, стартирайте make install в папката за изграждане на OpenCV и опитайте отново

Отидете в избраната директория:

(820c) $ cd ~

(410c) $ cd ~/sd папка

Изтеглете хранилището на cocoapi:

$ git клонинг

Изтеглете хранилището за модели на Tensorflow:

$ git клонинг

Отидете в тази директория:

$ cd cocoapi/PythonAPI

Редактирайте файла Makefile, като промените python на python3.5 в ред 3 и 8, след което запишете файла (като използвате nano като пример):

$ nano Makefile

Компилирайте какаото:

$ sudo make

Obs: Ако командата „make“не се компилира, опитайте да преинсталирате cython с:

$ sudo python3.5 -m pip install cython

Копирайте pycocotools в директорията tensorflow /models /research:

(820c) $ cp -r pycocotools ~/модели/изследвания/

(410c) $ cp -r pycocotools ~/sdfolder/модели/изследвания/

Отидете в избраната директория:

(820c) $ cd ~

(410c) $ cd ~/sd папка

Отидете в директорията модели/изследвания:

$ cd модели/изследвания

Компилирайте с protoc:

$ protoc object_detection/protos/*. proto --python_out =.

Експортиране на променлива на средата:

$ export PYTHONPATH = $ PYTHONPATH: `pwd`:` pwd`/slim

Тествайте околната среда:

$ python3.5 object_detection/builders/model_builder_test.py

Obs: Трябва да се върне OK, в противен случай приложението няма да работи. Ако не, внимателно потърсете всяка грешка в процеса на инсталиране на необходимите рамки

Стъпка 4: Стартирайте API за откриване на обекти

Стартиране на API за откриване на обекти
Стартиране на API за откриване на обекти

С всички конфигурирани рамки вече е възможно да стартирате API за откриване на обекти, който използва OpenCV заедно с Tensorflow.

Отидете в избраната директория:

(820c) $ cd ~

(410c) $ cd ~/sd папка

Отидете в директорията за откриване на обекти:

$ cd object_detector_tensorflow_opencv/

Сега стартирайте приложението:

$ python3.5 app.py

Сега Dragonboard ще предава поточно видеото през мрежата. За да видите изходния видеоклип, отворете браузъра в БД и отидете на „0.0.0.0: 5000“.

Препоръчано: