Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Suivi avancé de balle de ping-pong sur Raspberry Pi avec OpenCV

NOTE : Ce tutoriel est avancé, non adapté aux débutants Linux.

Dans ce guide, nous montrons comment détecter et suivre des balles de ping-pong – ou tout objet circulaire bien visible – en utilisant OpenCV sur un Raspberry Pi. Cette technique est précieuse pour la robotique, l'analyse sportive ou l'expérimentation amateur.

Prérequis

Étape 1 : Configuration initiale

  1. Connectez le Pi au clavier, souris, webcam, clé Ethernet ou Wi‑Fi, écran HDMI et alimentation.
  2. Mettez sous tension et démarrez sur l'interface graphique Raspbian.
  3. Ouvrez un terminal et installez OpenCV. Suivez le guide complet de Trevor Appleton pour confirmer l'installation (Installer OpenCV sur Raspberry Pi).
  4. Transférez bdtct.py vers le répertoire personnel du Pi via scp ou une clé USB.

Étape 2 : Exécuter le code de suivi

  1. Dans le terminal du Pi, accédez au dossier contenant bdtct.py.
  2. Exécutez le script :
    sudo python bdtct.py
  3. Cinq fenêtres doivent apparaître : la vidéo originale, une vue « tracking » et trois panneaux de réglage HSV.
  4. Présentez une balle de ping-pong (jaune de préférence) à la webcam.
  5. Ajustez les curseurs « HueComp », « SatComp » et « ValComp » jusqu'à ce que les pixels de la balle soient la seule région blanche dans la fenêtre « closing ». Notez ces valeurs pour une utilisation future en modifiant bdtct.py.

Étape 3 : Comprendre l'algorithme

Ouvrez bdtct.py dans votre éditeur favori pour voir le flux de travail suivant :

  1. Capture vidéo depuis la caméra par défaut : cap = cv2.VideoCapture(-1)
  2. Redimensionnement des images à 320×240 pour augmenter le taux d'images sur le Pi.
  3. Création de fenêtres interactives avec curseurs min/max pour Teinte, Saturation et Valeur.
  4. Conversion de chaque image de BGR vers HSV : hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV).
  5. Séparation des canaux HSV.
  6. Seuillage de chaque canal selon les plages des curseurs pour produire des masques binaires.
  7. Combinaison des trois masques par un ET logique pour isoler les pixels de la balle.
  8. Application d'un flou gaussien pour lisser le résultat.
  9. Utilisation de cv2.HoughCircles pour détecter les formes circulaires.
  10. Dessin des cercles détectés sur l'image originale pour la visualisation.

Pour plus de détails, consultez la documentation complète du projet.

Processus de fabrication

  1. Station météo solaire DIY avec Raspberry Pi
  2. Surveillance de température professionnelle sur Raspberry Pi avec DS18B20
  3. Construction d'une station météo extérieure avec Raspberry Pi 2 et ADS‑WS1
  4. Surveillance précise de la température dans un placard serveur avec Raspberry Pi
  5. Neon : Panneau dynamique Ouvert/Fermé pour Makerspace alimenté par Raspberry Pi 2 – El Paso, TX
  6. Capteur de suivi de ligne KY‑033 avec Raspberry Pi : Détecteur de porte/lignes simple
  7. Construire une télécommande universelle Raspberry Pi professionnelle avec LIRC
  8. Conversion RF vers DC avec Raspberry Pi : Construction et dépannage d'un détecteur d'enveloppe
  9. Cycle Chaser : Transformer votre vélo en spectacle lumineux nocturne avec Raspberry Pi