Cuprins:
- Pasul 1: Cerințe
- Pasul 2: Montarea cardului MicroSD (numai W / DB410c)
- Pasul 3: Instalarea cadrelor necesare
- Pasul 4: Rularea API-ului de detectare a obiectelor
Video: Detectarea obiectelor cu Dragonboard 410c sau 820c folosind OpenCV și Tensorflow .: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Acest instructable descrie cum să instalați OpenCV, Tensorflow și cadrele de învățare automată pentru Python 3.5 pentru a rula aplicația de detectare a obiectelor.
Pasul 1: Cerințe
Veți avea nevoie de următoarele elemente:
- Un DragonBoard ™ 410c sau 820c;
-
O instalare curată a Linaro-alip:
- DB410c: testat în versiunea v431. Link:
- DB820c: testat în versiunea v228. Link:
- Cel puțin un card MicroSD de 16 GB (dacă utilizați 410c);
Descărcați fișierul (la sfârșitul acestui pas), dezarhivați și copiați pe cardul MicroSD; Obs: dacă utilizați un DB820c, descărcați fișierul, dezarhivați și mutați la / acasă / * USER * / pentru a ușura utilizarea comenzilor.
- Un hub USB;
- O cameră USB (compatibilă cu Linux);
- Un mouse și tastatură USB;
- O conexiune la internet.
Obs: urmați aceste instrucțiuni în browserul DragonBoard, dacă este posibil, facilitând copierea comenzilor
Pasul 2: Montarea cardului MicroSD (numai W / DB410c)
- Deschideți terminalul în Dragonboard;
- În terminal rulați fdisk:
$ sudo fdisk -l
- Introduceți cardul MicroSD în slotul pentru card MicroSD DragonBoard;
- Rulați din nou fdisk, căutând numele (și partiția) noului dispozitiv din listă (de ex. Mmcblk1p1)
$ sudo fdisk -l
Accesați directorul rădăcină:
$ cd ~
Creați un dosar:
$ mkdir sdfolder
Montați cardul MicroSD:
$ mount / dev / sdfolder
Pasul 3: Instalarea cadrelor necesare
- Deschideți terminalul în Dragonboard;
- În terminal, accesați un director ales (folosind „~” pentru 820c și cardul SDCard montat pentru 410c):
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Accesați folderul de scripturi Detector de obiecte:
$ cd obiect_detector_tensorflow_opencv / scripturi /
Rulați scriptul de configurare a mediului:
$ sudo bash set_Env.sh
Actualizați sistemul:
$ sudo apt actualizare
Instalați aceste pachete:
$ sudo apt install -y protobuf-compiler 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 libx4 libgtk2.0-dev libgtk-3-dev ffmpeg python-opengl
Accesați acest director:
$ cd / usr / src
Descărcați Python 3.5:
$ sudo wget
Extrageți pachetul:
$ sudo tar xzf Python-3.5.6.tgz
Ștergeți pachetul comprimat:
$ sudo rm Python-3.5.6.tgz
Accesați directorul Python 3.5:
$ cd Python-3.5.6
Activați optimizările pentru compilarea Python 3.5:
$ sudo./configure --enable-optimizations
Compilați Python 3.5:
$ sudo face altinstall
Actualizați instrumentele de configurare și pip:
$ sudo python3.5 -m instalare pip - actualizați pip && python3.5 -m instalați pip - actualizați instrumentele de configurare
Instalați numpy:
$ python3,5 -m pip instalare numpy
Accesați directorul ales:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Descărcați Tensorflow 1.11 whl:
$ wget
Instalați tensorflow:
$ sudo python3.5 -m pip instalare tensorflow-1.11.0-cp35-none-linux_aarch64.whl
Clonați depozite OpenCV și OpenCV Contrib:
$ sudo git clone -b 3.4 https://github.com/opencv/opencv.git && sudo git clone -b 3.4
Accesați directorul:
$ cd opencv
Creați un director de compilare și accesați-l:
$ sudo mkdir build && cd build
Rulați 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_python3 = ON -D PYTHON3_PD care 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 BUILD_T -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_OPENCV_D_CNV_DC_PV_DC_V_D_CNV_DD_CNV_DC_VERS_DM_VERSION_CONV_DM_VID_CONV_DC_VENIT_CONVENIȚI_CONV. module..
Compilați OpenCV cu 4 nuclee:
$ sudo make -j 4
Instalați OpenCV:
$ sudo make install
Accesați directorul ales:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Accesați directorul de scripturi:
$ cd obiect_detector_tensorflow_opencv / scripturi /
Instalați cerințele Python3.5:
$ sudo python3.5 -m pip install -r requirements.txt --no-cache-dir
Testarea importurilor:
$ python3.5
> import cv2 >> import tensorflow
Obs: Dacă cv2 returnează o eroare de import, rulați make install în folderul de compilare OpenCV și încercați din nou
Accesați directorul ales:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Descărcați depozitul cocoapi:
$ git clone
Descărcați depozitul de modele Tensorflow:
$ git clone
Accesați acest director:
$ cd cocoapi / PythonAPI
Editați fișierul Makefile, schimbând python în python3.5 în rândurile 3 și 8, apoi salvați fișierul (folosind ca exemplu nano):
$ nano Makefile
Compilați cocoapi:
$ sudo make
Obs: dacă comanda „make” nu se compilează, încercați să reinstalați Cython cu:
$ sudo python3,5 -m pip instalează cython
Copiați pycocotools în directorul tensorflow / models / research:
(820c) $ cp -r pycocotools ~ / models / research /
(410c) $ cp -r pycocotools ~ / sdfolder / models / research /
Accesați directorul ales:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Accesați directorul modele / cercetare:
$ cd modele / cercetare
Compilați cu protocoale:
$ protocol object_detection / protos / *. proto --python_out =.
Variabila de mediu de export:
$ export PYTHONPATH = $ PYTHONPATH: `pwd`:` pwd` / slim
Testați mediul:
$ python3.5 object_detection / builders / model_builder_test.py
Obs: Trebuie să revină OK, altfel aplicația nu va funcționa. Dacă nu, căutați cu atenție orice greșeală în procesul de instalare a cadrelor necesare
Pasul 4: Rularea API-ului de detectare a obiectelor
Cu toate cadrele configurate, acum este posibil să rulați API-ul de detectare a obiectelor care utilizează OpenCV împreună cu Tensorflow.
Accesați directorul ales:
(820c) $ cd ~
(410c) $ cd ~ / sdfolder
Accesați directorul de detectare a obiectelor:
$ cd object_detector_tensorflow_opencv /
Acum rulați aplicația:
$ python3.5 app.py
Acum, Dragonboard va transmite video prin rețea. Pentru a vedea videoclipul de ieșire, deschideți browserul în DB și mergeți la „0.0.0.0: 5000”.
Recomandat:
Detectarea obiectelor cu plăci Sipeed MaiX (Kendryte K210): 6 pași
Detectarea obiectelor cu plăcile Sipeed MaiX (Kendryte K210): Ca o continuare a articolului meu anterior despre recunoașterea imaginilor cu plăcile Sipeed MaiX, am decis să scriu un alt tutorial, concentrându-mă pe detectarea obiectelor. Recent a apărut un hardware interesant cu cipul Kendryte K210, inclusiv S
Detectarea obiectelor Raspberry Pi: 7 pași
Detectarea obiectelor Raspberry Pi: acest ghid oferă instrucțiuni pas cu pas pentru configurarea API-ului de detectare a obiectelor TensorFlow pe Raspberry Pi. Urmând pașii din acest ghid, veți putea folosi Raspberry Pi pentru a efectua detectarea obiectelor pe videoclipuri live de la un P
Urmărirea obiectelor bazate pe detectarea culorii: 10 pași
Urmărirea obiectelor bazate pe detectarea culorilor: Povestea Am făcut acest proiect pentru a învăța procesarea imaginilor folosind Raspberry PI și CV deschis. Pentru a face acest proiect mai interesant, am folosit două servomotoare SG90 și am montat camera pe acesta. Un motor folosit pentru a se deplasa orizontal și al doilea motor folosit pentru a se deplasa vertical
Analizator de modele de trafic folosind detectarea obiectelor live: 11 pași (cu imagini)
Analizorul modelului de trafic folosind detectarea obiectelor live: în lumea de astăzi, semafoarele sunt esențiale pentru un drum sigur. Cu toate acestea, de multe ori, semafoarele pot fi enervante în situații în care cineva se apropie de lumină la fel cum devine roșu. Acest lucru pierde timpul, mai ales dacă lumina este
Detectarea obiectelor vizuale cu o cameră (TfCD): 15 pași (cu imagini)
Detecția vizuală a obiectelor cu o cameră (TfCD): serviciile cognitive care pot recunoaște emoțiile, fețele oamenilor sau obiectele simple sunt în prezent încă într-un stadiu incipient de dezvoltare, dar odată cu învățarea automată, această tehnologie se dezvoltă din ce în ce mai mult. Ne putem aștepta să vedem mai mult din această magie în