Avec Frigate 0.14 on a plus de détecteurs et avec les CPUs Intel Core, à partir de la 6e génération, on peut utiliser OpenVINO qui procure de très bonnes performances, en gros, pas vraiment besoin d’avoir un Google Coral ou autre.
En parcourant la doc j’ai noté qu’il est mentionné qu’il y a un model, YOLO-NAS, moins gourmand en ressources CPU et qui a une meilleure inférence mais ne dégrade pas la détection. Par contre comme il est soumis à licence pour usage professionnel il n’est pas inclus par défaut dans l’image docker de Frigate.
On peut néanmoins générer le model et l’utiliser, c’est assez simple et documenté:
Je ne sais pas s’il y a un vrai gain par rapport au model fourni par défaut mais je trouve ça intéressant de partager.
Si quelqu’un s’y connait et peut nous expliquer si c’est utile/plus performant/vraiment moins gourmand/etc ou pas d’utiliser ce model, je suis preneur d’explications
Hello,
Etant inscrit depuis 34 minutes et ayant posté qu’une seule fois et 6 min de lecture, le forum te considère encore comme « nouveau membre » en termes de niveau de confiance, donc quelques limites sont imposées. Ca fait partie du filtre anti-spam.
Pour le moment si tu veux partager ton tuto tu peux donner ton nom d’utilisateur github les gens trouveront.
J’avais fait un essais de ce détecteur sur un core i3-13500H et ça fonctionnait vraiment bien, sans être gourmand en ressource. Pour ceux qui ont un « gros » processeur récent avec GPU intégré, c’est a mon avis une solution à privilégier (pour ne pas se prendre la tête et limiter l’investissement en hardware).
Dans mon cas j’avais déjà un Coral en PCI-E donc il a reprit du service mais c’est plus par principe (le fameux biais des cout irrécupérables) que par nécessité.
Bonjour,
avez-vous des liens à suivre pour savoir comment installer YOLONAS sur frigate 0.14 pour un néophyte ? Le lien de la documentation officielle frigate vers un notebook qui semble ne pas fonctionner sans erreur chez moi ne m’est d’aucune utilité, et je ne trouve rien même pas chez le créateur de yolonas qui fonctionne… Donc vous qui semblez avoir réussi, merci de m’éclairer !
Le modèle de base pour OpenVINO tourne rapidement certe (mieux que le modèle de base pour coral usb que j’ai), mais ne détecte rien d’autre que des personnes chez moi (comme le modèle coral d’ailleurs).
Si tu veux détecter autre chose que des personnes il faut configurer la détection pour. Sinon effectivement de base il ne détecte que des personnes.
Chez moi il détecte aussi les chiens, et ça fonctionne sur un Coral ou avec le modèle OpenVINO de base.
Alors normalement chez moi le paramétrage est fait pour les catégories :
- person
- cat
- dog
- car
- bird
Mettons de côté pour l’instant la possibilité que j’ai mal paramétré la détection (ce qui est possible) pour revenir à YOLONAS, comment fait-on pour l’utiliser à la place de SSDLite MobileNet V2 ? J’avoue que j’ai rarement été aussi perdu face à une installation où je ne trouve absolument rien sur internet… tous les notebooks (dont je ne suis pas certain d’avoir compris le fonctionnement) que j’ai pu essayer plantent systématiquement, donc si une âme charitable pouvait m’indiquer où regarder pour comprendre comment installer YOLONAS sur mon frigate, je lui en serait très reconnaissant !
Et en dehors de frigate qui ne peut pas distribuer YOLONAS pour des problèmes de licence, pourquoi devrait-on tous compiler le modèle et pourquoi n’y a-t-il personne qui partage sa compilation puisqu’à priori les notebooks ne reprennent aucun paramètre spécifique à chaque configuration ?
Est-ce que c’est moi qui ne comprend rien, ou bien il y a des prérequis implicites dont je n’ai pas connaissance pour utiliser les notebooks ? Si quelqu’un arrive à installer YOLONAS en suivant la doc officielle Frigate, merci de m’expliquer comment il faut faire !
Quand je teste le notebook du créateur de YOLONAS qui a moins de 3 mois, il y a à priori au moins un fichier du modèle qui n’est plus à l’emplacement prévu d’après les logs d’erreur, du coup compilation impossible.
On est d’accord qu’à priori on pourrait réutiliser le fichier compiler par n’importe qui ?
Dans mon cas avec les modèles par défaut pour openvino et coral, sur un frigate en conteneur LXC sous proxmox (donc CPU partagé avec les autres containers et VM dont home assistant) j’ai:
CPU N5105
3 caméras
Detector Inference Speed coral usb : 30ms (je ne me souviens plus pour le cpu)
Detector Inference Speed openvino : 16ms (cpu : 13%)
flux de détection : 3x704*576px à 5fps
Dans mon cas seules les personnes sont détectées, je n’ai pas comparé l’efficacité des modèles dans les 2 cas, je peux juste dire que le modèle coral par défaut ignore mon chien, quand le modèle openvino par défaut l’ignore à 90% du temps, et le détecte en faux positif comme personne 10% du temps.
A voir en augmentant le nombre de caméras si les 2 évoluent similairement ou si le coral rattrape l’écart, mais dans ma config le coral n’a pas d’intérêt actuellement, mais j’ai prévu d’ajouter d’autres caméras, et mon processeur étant partagé il se peut que je vienne à plus le charger par d’autres applications.
Le coral a toujours un grand intéret sur une microconfig à base de raspberry je pense
Pour la partie installation de frigate sous proxmox, c’est à peu près ce que j’avais fait et ça fonctionne bien.
En revanche pour la partie YOLONAS, le collab ne fonctionne pas chez moi (et comme à priori il ne dépend pas de moi, il ne devrait plus fonctionner chez personne) : impossible d’installer la version 3.7.1 de super_gradient :
Merci, je viens de faire la compilation grâce à ce lien.
Pour ce qui est des détections, il me manquait une déclaration pour activer les chiens et chats, ce soir mon chien est détecté 1 fois sur 2 en tant que chien, sinon en tant que personne.
Je vais voir ce que donne YOLONAS (si je trouve le répertoire où mettre le fichier compilé)
Encore merci !