Taula de continguts:
- Pas 1: actualitzeu Raspberry Pi
- Pas 2: instal·leu TensorFlow
- Pas 3: instal·leu OpenCV
- Pas 4: instal·leu Protobuf
- Pas 5: configureu l'estructura de directori TensorFlow
- Pas 6: detectar objectes
- Pas 7: Problemes i gràcies
Vídeo: Detecció d'objectes Raspberry Pi: 7 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Aquesta guia proporciona instruccions pas a pas sobre com configurar l’API de detecció d’objectes de TensorFlow al Raspberry Pi. Seguint els passos d’aquesta guia, podreu utilitzar el vostre Raspberry Pi per realitzar la detecció d’objectes en vídeo en directe des d’una càmera web Picamera o USB. No és necessari l'aprenentatge manual per màquina, ja que s'utilitza a la base de dades en línia per a la detecció d'objectes. Podeu detectar la majoria dels objectes que s’utilitzen habitualment a tot el món.
Consulteu la meva imatge anterior, hem utilitzat un ratolí, Apple i tisores i hem detectat l'objecte perfectament.
El guia recorre els següents passos:
Actualitzeu el Raspberry Pi
Instal·leu TensorFlowInstall OpenCV
Compileu i instal·leu Protobuf
Configureu l'estructura de directoris TensorFlow
Detecta objectes
Pas 1: actualitzeu Raspberry Pi
Cal actualitzar el vostre Raspberry Pi
Pas 1:
Escriviu el terminal d’ordres, sudo apt-get update
I, a continuació, escriviu
sudo apt-get dist-upgrade
Això pot trigar molt depèn de la vostra Internet i de Raspberry pi
Això és tot el que necessiteu, ja heu acabat d'actualitzar el vostre Raspberry pi
Pas 2: instal·leu TensorFlow
Ara, instal·larem Tensorflow.
Escriviu aquesta ordre següent, pip3 instal·la TensorFlow
TensorFlow també necessita el paquet LibAtlas. Escriviu aquesta ordre següent
sudo apt-get install libatlas-base-dev
I escriviu també aquesta ordre següent, sudo pip3 install coixí lxml jupyter matplotlib cythonsudo apt-get install python-tk
Ara hem acabat d’instal·lar Tensorflow.
Pas 3: instal·leu OpenCV
Ara estem treballant per instal·lar la biblioteca OpenCV perquè els exemples de detecció d’objectes de TensorFlow utilitzen matplotlib per mostrar imatges, però jo decideixo practicar OpenCV, ja que és més fàcil treballar amb menys errors. Per tant, hem d’instal·lar OpenCV. Ara OpenCV no admet RPI, de manera que instal·larem Verision anterior.
Ara estem treballant per instal·lar algunes dependències que cal instal·lar mitjançant apt-get
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
sudo apt-get install qt4-dev-tools libatlas-base-dev
Finalment, ara podem instal·lar OpenCV escrivint, pip3 instal·la opencv-python == 3.4.6.27
Això és tot, ara hem instal·lat OpenCV
Pas 4: instal·leu Protobuf
L’API de detecció d’objectes TensorFlow utilitza Protobuf, un paquet que s’adapta al format de dades de Buffer de protocols de Google. Heu de compilar des de la font, ara podeu instal·lar-la fàcilment.
sudo apt-get install protobuf-compiler
Executeu protoc --version un cop fet això. Hauríeu d'obtenir una resposta de libprotoc 3.6.1 o similar.
Pas 5: configureu l'estructura de directori TensorFlow
Hem instal·lat tots els paquets, volem configurar un directori per a TensorFlow. Des del directori inicial, creeu un nom de directori anomenat "tensorflow1", Escriviu el següent, mkdir tensorflow1cd tensorflow1
Ara descarregueu TensorFlow escrivint, git clone --depth 1
Volem modificar la variable d'entorn PYTHONPATH per dirigir-la a alguns directoris dins del dipòsit TensorFlow. Necessitem establir PYTHONPATH cada vegada. Hem d’ajustar el fitxer.bashrc. L’hem d’obrir escrivint
sudo nano ~ /.bashrc
Al final del fitxer i a l'última línia afegiu l'ordre, com a la imatge superior que està marcada al quadre de color vermell.
export PYTHONPATH = $ PYTHONPATH: / home / pi / tensorflow1 / models / research: / home / pi / tensorflow1 / models / research / slim
Ara deseu i sortiu. Hem d’utilitzar Protoc per compilar els fitxers Protocol Buffer (.proto) que utilitza l’API de detecció d’objectes. Els fitxers.proto es troben a / research / object_detection / protos, volem executar l’ordre des del directori / research. Escriviu l'ordre següent
cd / home / pi / tensorflow1 / models / researchprotoc object_detection / protos / *. proto --python_out =.
Aquesta ordre canvia tots els fitxers.proto de "nom" a fitxers.py "name_pb2".
cd / home / pi / tensorflow1 / models / research / object_detection
Hem de descarregar el model SSD_Lite del zoo del model TensorFlowdetection. Per a això, volem utilitzar SSDLite-MobileNet, que és el model més ràpid existent per a l'RPI.
Google llança infinitament models amb una velocitat i un rendiment millorats, així que comproveu sovint si hi ha algun model millorat.
Escriviu l'ordre següent per descarregar el model SSDLite-MobileNet.
wget
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Ara podem practicar els models Object_Detction.
Estem a punt d’acabar!
Pas 6: detectar objectes
Ara tot està configurat per a la detecció d’objectes d’execució al Pi.
Object_detection_picamera.py detecta objectes en directe des d’una càmera web Picamera o USB.
Si utilitzeu una Picamera, feu un canvi de configuració de Raspberry Pi per un menú com a la imatge superior marcada amb un quadre de color vermell.
Escriviu l'ordre següent per descarregar el fitxer Object_detection_picamera.py al directori object_detection.
wget https://raw.githubusercontent.com/EdjeElectronics/ TensorFlow-Object-Detection-on-the-Raspberry-Pi / master / Object_detection_picamera.py
python3 Object_detection_picamera.py
Escriviu l'ordre següent per a la càmera USB
python3 Object_detection_picamera.py --usbcam
L'ordre s'executa, al cap d'1 minut s'obre una nova finestra que començarà a detectar els objectes !!!
Pas 7: Problemes i gràcies
Si teniu cap pregunta, feu-m’ho saber
Correu electrònic: [email protected]
Gràcies, Rithik
Recomanat:
Detecció d'objectes amb plaques SIPeed MaiX (Kendryte K210): 6 passos
Detecció d’objectes amb plaques Sipeed MaiX (Kendryte K210): Com a continuació del meu article anterior sobre reconeixement d’imatges amb les plaques Sipeed MaiX, vaig decidir escriure un altre tutorial, centrat en la detecció d’objectes. Recentment va aparèixer un maquinari interessant amb el xip Kendryte K210, inclòs S
Programació orientada a objectes: Creació d’objectes Mètode / tècnica d’aprenentatge / ensenyament mitjançant l’aplicació de formes: 5 passos
Programació orientada a objectes: Creació d’objectes Mètode / tècnica d’aprenentatge / ensenyament mitjançant Shape Puncher: mètode d’aprenentatge / ensenyament per a estudiants que s’inicien en la programació orientada a objectes. Aquesta és una manera de permetre'ls visualitzar i veure el procés de creació d'objectes a partir de classes. Puny gran EkTools de 2 polzades; les formes sòlides són les millors. Tros de paper o c
Seguiment d'objectes basat en la detecció de color: 10 passos
Seguiment d’objectes basat en la detecció de color: història. Vaig fer aquest projecte per aprendre el processament d’imatges amb Raspberry PI i obrir el CV. Per fer aquest projecte més interessant, he utilitzat dos servomotors SG90 i hi heu muntat càmera. Un motor que es movia horitzontalment i un segon motor que es movia verticalment
RASPBERRY PI Pi DETECCIÓ D'OBJECTES AMB MÚLTIPLES CÀMERES: 3 passos
RASPBERRY PI Pi DETECCIÓ D'OBJECTES AMB MÚLTIPLES CÀMERES: Mantindré breu la introducció, ja que el títol propi suggereix quin és el propòsit principal de l'instrumentable. En aquesta instrucció pas a pas, us explicaré com connectar diverses càmeres, com ara una càmera 1-pi i, com a mínim, una càmera USB o 2 càmeres USB
Programació orientada a objectes: creació d'objectes Mètode / tècnica d'aprenentatge / ensenyament amb tisores: 5 passos
Programació orientada a objectes: Creació d'objectes Mètode / Tècnica d'aprenentatge / ensenyament amb tisores: Mètode d'aprenentatge / ensenyament per a estudiants que s'inicien en la programació orientada a objectes. Aquesta és una manera de permetre'ls visualitzar i veure el procés de creació d'objectes a partir de classes. Parts: 1. Tisores (ho farà qualsevol tipus). 2. Peça de paper o cartolina. 3. Marcador