Aller au contenu principal

Démarrage avec les réseaux de neurones

Avec les pipelines de réseaux de neurones de Limelight, des défis de vision par ordinateur autrefois impossibles sont désormais triviaux. La vision basée sur l'apprentissage joue déjà un rôle énorme dans les robots de pointe et les véhicules autonomes, nous sommes donc ravis d'apporter cette technologie aux étudiants FIRST.

info

Limelight 1, 2 et 3 prennent tous en charge la vision basée sur l'apprentissage avec l'aide de Google Coral. Google Coral est un accélérateur USB qui doit être acheté séparément.

Découvrez l'utilisation du pipeline de réseau neuronal de Limelight par le champion du monde 2023, l'équipe 1323 :

Téléchargez des réseaux de neurones pré-entraînés depuis notre page de téléchargements.

En FRC, les équipes ont toujours voulu suivre les pièces de jeu sur le terrain pendant les périodes autonomes et téléopérées. En utilisant le pipeline "Neural Detector" de Limelight, les équipes peuvent suivre les pièces comme n'importe quelle autre cible sans aucun réglage.

Les pipelines "Neural Classifier", quant à eux, permettent aux équipes d'ajouter des capacités de détection avancées à leurs robots. Imaginons qu'une équipe veuille déterminer si son robot est en possession d'une balle Rouge, d'une balle Bleue, ou s'il n'est pas en possession d'une balle. Un Limelight pointé à l'intérieur d'un robot pourrait exécuter un classificateur entraîné pour déterminer l'un de ces trois cas. Un classificateur pourrait également compter le nombre d'objets dans une trémie, déterminer l'état d'une caractéristique du terrain, etc.

Les réseaux Neural Detector et Classifier nécessitent l'ajout d'un accélérateur USB Google Coral. L'accélérateur Google Coral est un ASIC (circuit intégré à application spécifique) conçu spécifiquement pour l'inférence de réseaux neuronaux. Vous pouvez considérer le terme "inférence" comme "exécution" ou "faire passer des données à travers le réseau neuronal et produire une sortie".

Si vous êtes intéressé par une compréhension plus approfondie de l'apprentissage automatique, nous vous recommandons de commencer par cette vidéo de 3blue1brown

Les programmeurs peuvent en apprendre davantage de manière pratique avec le livre suivant

Pipeline Neural Detector

Pour commencer, assurez-vous que votre Google Coral est branché sur le port USB-A de votre Limelight.

Changez le "Type de pipeline" en "Neural Detector" pour commencer à exécuter l'inférence sur le modèle de test intégré. Téléchargez des réseaux de neurones pré-entraînés depuis notre page de téléchargements, et téléchargez-le pour commencer à suivre les pièces de jeu.

Modifiez le curseur "seuil de confiance" pour ajuster la confiance requise pour une détection réussie.

Modifiez la fenêtre de recadrage pour ignorer facilement les objets en dehors de la zone de détection souhaitée.

Pipeline Neural Classifier

Pour commencer, assurez-vous que votre Google Coral est branché sur le port USB-A de votre Limelight.

Changez le "Type de pipeline" en "Neural Classifier" pour commencer à exécuter l'inférence sur le modèle de test intégré. Vous pouvez entraîner vos propres modèles de classificateur en utilisant la méthode documentée dans la section "Entraînement".

La fenêtre "Recadrage" vous permettra de mieux contrôler l'image utilisée pour l'inférence du réseau neuronal. Bien que les modèles de classificateur soient capables de niveaux incroyables de généralisation dans des environnements divers, vous obtiendrez de meilleurs résultats en minimisant le nombre de variables dans votre image.