Google Coral AI pci-express et M.2
Par Google Coral
Google Coral AI Mini PCIe M.2 Accelerateur TPU A + E et B + M Key
Cet Article a été vu ... fois
Un petit tuto pour te montrer les bienfaits d’un google coral dans ton NAS. J’utilise le NVR frigate qui traite par l’ia les images afin d’interpréter une détection d’objet et rendre une conclusion sur l’état. C’est sympa, pratique, mais quand tu n’utilises pas google Coral ça consomme un MAX de RAM et CPU.
j’utilise un coral M.2 pci sur debian, donc je suis l’intallation préconisée par Google
J’utilise frigate sur un docker n’oublie pas de renseigner le device /dev/apex_0:/dev/apex_0 comme dans le docker-compose.yaml ci-dessous
dans le fichier config.yaml de frigate rajoute je detecteur google Coral comme le fichier ci-dessous et redémarre frigate.
Voilà c’est terminé vérifie les logs que le google coral est bien reconnu dans frigate.
Il est fortement recommandé d’utiliser un Google Coral. Un appareil à 50€ surpassera un processeur à 1800€. Frigate devrait fonctionner avec n’importe quel appareil Coral pris en charge sur https://coral.ai
La version USB est compatible avec la plus grande variété de matériels et ne nécessite pas de pilote sur la machine hôte. Cependant, il lui manque les fonctionnalités de limitation automatique des autres versions.
Dans le monde de l’IA (intelligence artificielle), l’inférence est l’art de tirer des conclusions et de prendre des décisions en utilisant la puissance des informations ou des données disponibles. Il s’agit d’un processus cognitif qui va au-delà de la simple interprétation des données et qui permet de générer de nouvelles idées et conclusions à partir de connaissances ou d’ensembles de données existants.
Dans le domaine de la vision artificielle, elle permet aux machines de reconnaître des objets dans des images, en identifiant des modèles et des caractéristiques.
L’inférence dans l’IA (intelligence artificielle) se présente sous deux formes principales : déductive et inductive. L’inférence déductive implique l’application de principes généraux pour parvenir à des conclusions spécifiques, tandis que l’inférence inductive fonctionne à l’inverse, décodant des principes généraux ou des règles à partir d’observations spécifiques ou de modèles de données.
Dans le domaine de la vision artificielle, elle permet aux machines de reconnaître des objets dans des images, en identifiant des modèles et des caractéristiques.
Pour résumer, l’inférence est l’élément fondamental de la capacité de l’IA (intelligence artificielle) à raisonner, à apprendre et à prendre des décisions en connaissance de cause, ce qui lui confère les capacités de base nécessaires à la mise en œuvre de diverses caractéristiques des applications.
Un seul Coral peut gérer plusieurs caméras et sera suffisant pour la majorité des utilisateurs. Vous pouvez calculer les performances maximales de votre Coral en fonction de la vitesse d’inférence signalée par Frigate. Avec une vitesse d’inférence de 10, votre Coral atteindra 1000/10=100, soit 100 images par seconde. Si votre fps de détection s’en rapproche régulièrement, vous devez d’abord envisager de régler les masques de mouvement. Si ceux-ci sont déjà correctement configurés, un deuxième Coral peut être nécessaire.
Le google coral a une inférence de 6,2, d’après le calcul ci-dessus il pourrait traiter: 1000/6.2= 161 images par secondes, nous sommes actuellement sur images à 83,4 images par seconde, exactement à la moitié des capacités de traitemnt du google coral.
L’installation Frigate comprend 5 caméras en détections et en enregistrements
Comme tu peux le constater ci-dessous sans google coral et sans l’optimisation matérielle j’atteint une moyenne de consommations de mémoires RAM de 1.4GB, quand à l’usage CPU la moyenne est de 450%, c’est énorme
Une fois le Google Coral installé la consommation mémoire RAM oscille à 1,3GB et la consommation de l’usage CPU est aux alentours de 180%, je rappelle que seule le google Coral AI est installé il n’y a toujours pas d’accélération matérielle
OUI! Le Coral n’aide pas au décodage des flux vidéo.
La décompression des flux vidéo nécessite une quantité importante de puissance CPU. La compression vidéo utilise des images clés (également appelées images I) pour envoyer une image complète dans le flux vidéo. Les images suivantes incluent uniquement la différence par rapport à l’image clé, et le processeur doit compiler chaque image en fusionnant les différences avec l’image clé. Explication plus détaillée. Des résolutions et des fréquences d’images plus élevées signifient qu’une plus grande puissance de traitement est nécessaire pour décoder le flux vidéo, alors essayez de les régler sur la caméra pour éviter un travail de décodage inutile.
Une fois l’accélération matérielle intel-vaapi installé plus le fonctionnement du Google Coral la consommation de la mémoire RAM passe à 0,8GB et la consommation de l’usage CPU passe à 30%.
Il ne suffit pas d’installer un NVR de paramétrer ses caméras et de laisser tourner, surtout si comme moi tu possèdes un NAS Diy. Si tu décides de faire en plus des captures vidéos et snapshot du contrôle d’objet alors il te faudra t’équiper d’un google Coral, et aussi d’utiliser l’accélération matérielle ainsi tu économiseras énormément de CPU et allongera la vie de ton processeur.
Nous sommes passés d’une consommation de 1,4GB à 0,8GB de RAM et une conso CPU de 450% à 30%, les chifres parlent d’eux mêmes.
Copyright © 2024 Haade 🎉 by Nicoxygen
commentaires