Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Ce guide fournit des instructions détaillées sur la configuration de l'API de détection d'objets de TensorFlow sur le Raspberry Pi. En suivant les étapes de ce guide, vous pourrez utiliser votre Raspberry Pi pour effectuer une détection d'objet sur une vidéo en direct à partir d'une webcam Picamera ou USB. L'apprentissage automatique manuel n'est pas requis tel qu'il est utilisé dans la base de données en ligne pour la détection d'objets. Vous pouvez détecter la plupart des objets couramment utilisés dans le monde.
Veuillez vous référer à ma photo ci-dessus, nous avons utilisé une souris, une pomme et des ciseaux et avons parfaitement détecté l'objet.
Le guide parcourt les étapes suivantes:
Mettre à jour le Raspberry Pi
Installer TensorFlowInstaller OpenCV
Compiler et installer Protobuf
Configurer la structure de répertoires TensorFlow
Détectez les objets
Étape 1: Mettre à jour Raspberry Pi
Votre Raspberry Pi doit être mis à jour
Étape 1:
Tapez dans le terminal de commande, sudo apt-get mise à jour
Et puis Tapez
sudo apt-get dist-upgrade
Cela peut prendre beaucoup de temps en fonction de votre Internet et de votre Raspberry Pi
C'est tout ce dont vous avez besoin, vous avez terminé la mise à jour de votre Raspberry pi
Étape 2: Installez TensorFlow
Maintenant, nous allons installer Tensorflow.
Tapez cette commande suivante, pip3 installer TensorFlow
TensorFlow a également besoin du package LibAtlas. Tapez la commande suivante
sudo apt-get install libatlas-base-dev
Et tapez également cette commande suivante, sudo pip3 installer coussin lxml jupyter matplotlib cythonsudo apt-get installer python-tk
Nous avons maintenant terminé l'installation de Tensorflow.
Étape 3: Installez OpenCV
Nous travaillons maintenant à l'installation de la bibliothèque OpenCV car les exemples de détection d'objets de TensorFlow utilisent matplotlib pour afficher des images, mais j'ai choisi de pratiquer OpenCV car il est plus facile à utiliser et moins d'erreurs. Nous devons donc installer OpenCV. Maintenant, OpenCV ne prend pas en charge RPI, nous allons donc installer l'ancienne version.
Nous travaillons maintenant à installer quelques dépendances qui doivent être installées via 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
Enfin, maintenant nous pouvons installer OpenCV en tapant, pip3 installer opencv-python==3.4.6.27
C'est tout, nous avons maintenant installé OpenCV
Étape 4: Installer Protobuf
L'API de détection d'objets TensorFlow utilise Protobuf, un package qui s'adapte au format de données Protocol Buffer de Google. Vous devez compiler à partir des sources, vous pouvez maintenant l'installer facilement.
sudo apt-get install protobuf-compiler
Exécutez protoc --version une fois cela fait. Vous devriez obtenir une réponse de libprotoc 3.6.1 ou similaire.
Étape 5: Configurer la structure du répertoire TensorFlow
Nous avons installé tous les packages, nous souhaitons créer un répertoire pour le TensorFlow. À partir du répertoire personnel, créez un nom de répertoire appelé "tensorflow1", Tapez ce qui suit, mkdir tensorflow1cd tensorflow1
Téléchargez maintenant TensorFlow en tapant, git clone --depth 1
Nous souhaitons modifier la variable d'environnement PYTHONPATH pour diriger vers certains répertoires du référentiel TensorFlow. Nous avons besoin que PYTHONPATH soit défini à chaque fois. Nous devons ajuster le fichier.bashrc. Nous devons l'ouvrir en tapant
sudo nano ~/.bashrc
À la fin du fichier et à la dernière ligne, ajoutez la commande, comme dans l'image du haut qui est marquée sur la case de couleur rouge.
export PYTHONPATH=$PYTHONPATH:/home/pi/tensorflow1/models/research:/home/pi/tensorflow1/models/research/slim
Maintenant, enregistrez et quittez. Nous devons utiliser Protoc pour compiler les fichiers Protocol Buffer (.proto) utilisés par l'API de détection d'objets. Les fichiers.proto sont situés dans /research/object_detection/protos, nous voulons exécuter la commande depuis le répertoire /research. Tapez la commande suivante
cd /home/pi/tensorflow1/models/researchprotoc object_detection/protos/*.proto --python_out=.
Cette commande change tous les fichiers "name".proto en fichiers "name_pb2".py.
cd /home/pi/tensorflow1/models/research/object_detection
Nous devons télécharger le modèle SSD_Lite à partir du zoo de modèles TensorFlowdetection. Pour cela, nous souhaitons utiliser SSDLite-MobileNet, qui est le modèle le plus rapide existant pour le RPI.
Google publie sans cesse des modèles avec une vitesse et des performances améliorées, alors vérifiez souvent s'il existe des modèles améliorés.
Tapez la commande suivante pour télécharger le modèle SSDLite-MobileNet.
wget
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Maintenant, nous pouvons pratiquer les modèles Object_Detction !
Nous avons presque terminé !
Étape 6: Détecter l'objet
Maintenant, tout est configuré pour la détection d'objets d'exécution sur le Pi !
Object_detection_picamera.py détecte les objets en direct depuis une webcam Picamera ou USB.
Si vous utilisez une Picamera, modifiez la configuration du Raspberry Pi dans un menu comme dans l'image ci-dessus marquée en rouge.
Tapez la commande suivante pour télécharger le fichier Object_detection_picamera.py dans le répertoire 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
Tapez la commande suivante pour la caméra USB
python3 Object_detection_picamera.py --usbcam
Sa commande est exécutée, après 1 minute une nouvelle fenêtre s'ouvre qui va commencer à détecter les objets !!!
Étape 7: Problèmes et remerciements
S'il vous plaît laissez-moi savoir si vous avez des questions
Courriel: [email protected]
Merci, Rithik