Obsah:

Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow .: 4 kroky
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow .: 4 kroky

Video: Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow .: 4 kroky

Video: Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow .: 4 kroky
Video: Seminár Robotika SK, 34. prednáška, Viktor Kocur: Detekcia objektov pomocou RANSAC, 2020/03 2024, November
Anonim
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow
Detekcia objektov pomocou Dragonboard 410c alebo 820c pomocou OpenCV a Tensorflow

Tento návod popisuje, ako nainštalovať rámce OpenCV, Tensorflow a strojového učenia pre Python 3.5 na spustenie aplikácie Object Detection.

Krok 1: Požiadavky

Budete potrebovať nasledujúce položky:

  • DragonBoard ™ 410c alebo 820c;
  • Čistá inštalácia Linaro-alip:

    • DB410c: testované vo verzii v431. Odkaz:
    • DB820c: testované vo verzii v228. Odkaz:
  • Minimálne 16 GB karta MicroSD (ak používate 410c);

Stiahnite súbor (na konci tohto kroku), rozbaľte a skopírujte na kartu MicroSD; Poznámka: Ak používate DB820c, stiahnite si súbor, rozbaľte ho a presuňte sa na/home/*USER*/, aby ste uľahčili používanie príkazov.

  • Rozbočovač USB;
  • USB kamera (kompatibilná s Linuxom);
  • Myš a klávesnica USB;
  • Pripojenie na internet.

Poznámka: Ak je to možné, postupujte podľa týchto pokynov v prehliadači DragonBoard, ktoré uľahčujú kopírovanie príkazov

Krok 2: Inštalácia karty MicroSD (iba W/ DB410c)

  • Otvorte terminál na Dragonboarde;
  • V termináli spustite príkaz fdisk:

$ sudo fdisk -l

  • Vložte kartu MicroSD do zásuvky na kartu MicroSD DragonBoard;
  • Spustite znova fdisk a v zozname vyhľadajte názov (a oddiel) nového zariadenia (napr. Mmcblk1p1)

$ sudo fdisk -l

Prejdite do koreňového adresára:

$ cd ~

Vytvorte priečinok:

priečinok $ mkdir sd

Namontujte kartu MicroSD:

priečinok $ mount / dev / sd

Krok 3: Inštalácia požadovaných rámcov

  • Otvorte terminál na Dragonboarde;
  • V termináli prejdite na zvolený adresár (pomocou „~“pre 820c a pripojenej karty SDCard pre 410c):

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Prejdite do priečinka skriptov Object Detector:

$ cd object_detector_tensorflow_opencv/skripty/

Spustite skript na nastavenie prostredia:

$ sudo bash set_Env.sh

Aktualizujte systém:

$ sudo apt aktualizácia

Nainštalujte tieto balíky:

$ sudo apt install -y protobuf-kompilátor 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* libhdf5* libpng-dev build-essential cmake 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 libswscale-dev libv4l-dev libxvidcore-dev lib2 libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl

Prejdite do tohto adresára:

$ cd /usr /src

Stiahnite si Python 3.5:

$ sudo wget

Extrahujte balík:

$ sudo tar xzf Python-3.5.6.tgz

Odstráňte komprimovaný balík:

$ sudo rm Python-3.5.6.tgz

Prejdite do adresára Python 3.5:

$ cd Python-3.5.6

Povoliť optimalizácie pre kompiláciu Python 3.5:

$ sudo./configure --enable-optimizations

Kompilácia Pythonu 3.5:

$ sudo make altinstall

Inovujte nástroje pip a nastavenia:

$ sudo python3.5 -m pip install --upgrade pip && python3.5 -m pip install --upgrade setuptools

Inštalovať numpy:

$ python3.5 -m pip install numpy

Prejdite do zvoleného adresára:

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Stiahnite si Tensorflow 1.11 whl:

$ wget

Nainštalujte tensorflow:

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

Klonujte úložiská OpenCV a OpenCV Contrib:

$ sudo git clone -b 3,4 https://github.com/opencv/opencv.git && sudo git clone -b 3,4

Prejsť do adresára:

$ cd opencv

Vytvorte adresár zostavenia a prejdite naň:

$ sudo mkdir build && cd build

Spustiť CMake:

$ sudo cmake -D CMAKE_BUILD_TYPE = RELEASE -D CMAKE_INSTALL_PREFIX =/usr/local -D BUILD_opencv_java = OFF_D ktorý 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 BUILDES -DBUILD_TBB = ON -D OPENCV_ENABLE_NONFREE = ON -DBUILD_opencv_xfeatures2d = OFF -D OPENGL = ON -D OPENMP = ON -D ENABLE_NEON = ON -D BUILD_PERF_TESTS = OFF -D BUILD_OPE moduly..

Zostavte OpenCV so 4 jadrami:

$ sudo make -j 4

Nainštalujte OpenCV:

$ sudo make install

Prejdite do zvoleného adresára:

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Prejdite do adresára skriptov:

$ cd object_detector_tensorflow_opencv/skripty/

Nainštalujte požiadavky Python3.5:

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

Skúšobné dovozy:

$ python3,5

> import cv2 >> import tensorflow

Poznámka: Ak cv2 vráti chybu importu, spustite príkaz make install v priečinku zostavenia OpenCV a skúste to znova

Prejdite do zvoleného adresára:

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Stiahnite si úložisko cocoapi:

$ git klon

Stiahnite si úložisko modelov Tensorflow:

$ git klon

Prejdite do tohto adresára:

$ cd cocoapi/PythonAPI

Upravte súbor Makefile tak, že v riadkoch 3 a 8 zmeníte python na python3.5 a potom súbor uložíte (ako príklad použijete nano):

$ nano Makefile

Zostavte cocoapi:

$ sudo make

Poznámka: Ak sa príkaz „make“neskompiluje, skúste znova nainštalovať cython pomocou:

$ sudo python3.5 -m pip install cython

Skopírujte pycocotools do adresára tensorflow /models /research:

(820c) $ cp -r pycocotools ~/models/research/

(410c) $ cp -r pycocotools ~/sdfolder/models/research/

Prejdite do zvoleného adresára:

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Prejdite do adresára modelov/výskumu:

$ cd modely/výskum

Kompilovať s protokolom:

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

Export premennej prostredia:

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

Otestujte prostredie:

$ python3.5 object_detection/builders/model_builder_test.py

Pozor: Musí sa vrátiť OK, inak aplikácia nebude fungovať. Ak nie, starostlivo vyhľadajte akúkoľvek chybu v procese inštalácie požadovaných rámcov

Krok 4: Spustenie rozhrania API na detekciu objektov

Spustenie rozhrania API na detekciu objektov
Spustenie rozhrania API na detekciu objektov

So všetkými nakonfigurovanými rámcami je teraz možné spustiť rozhranie API na detekciu objektov, ktoré používa OpenCV, spolu s Tensorflow.

Prejdite do zvoleného adresára:

(820c) $ cd ~

(410c) $ cd ~/sdfolder

Prejdite do adresára detekcie objektov:

$ cd object_detector_tensorflow_opencv/

Teraz spustite aplikáciu:

$ python3.5 app.py

Teraz Dragonboard bude streamovať video cez sieť. Ak chcete vidieť výstupné video, otvorte prehliadač v databáze DB a prejdite na „0,0.0.0: 5000“.

Odporúča: