Les Truies Savent Quand Mettre Bas, Cette Fois NNU Utilise NVIDIA Edge AI Jetson

Contenu en un coup d'œil :Pour l’élevage porcin, la mise bas des truies est un maillon essentiel. Par conséquent, l’amélioration du taux de survie des porcelets et la garantie de la sécurité du processus de mise bas des truies sont devenues des enjeux importants. Les méthodes de surveillance de l’IA existantes présentent des problèmes liés aux coûts élevés des équipements et à la transmission instable des informations. Des chercheurs de l'Université agricole de Nanjing ont utilisé une méthode d'apprentissage en profondeur légère pour fournir une alerte précoce et une surveillance efficace du processus de mise bas de la truie, réduisant ainsi les coûts tout en améliorant la précision de la surveillance.
Mots-clés:Carte de développement embarquée Apprentissage profond léger
Cet article a été publié pour la première fois sur la plateforme publique HyperAI WeChat~
L'élevage porcin de mon pays est le premier au monde, mais l'industrie dans son ensemble est toujours confrontée au problème des faibles niveaux de reproduction. Pour de nombreuses grandes exploitations porcines, le plus important est de réduire les coûts tout en augmentant le taux de survie des porcelets. Les méthodes traditionnelles reposent sur la supervision humaine, ce qui est difficile et hautement subjectif.Face à une série de problèmes tels que la dystocie lors de la mise bas des truies et l'étouffement des porcelets, il est difficile de les traiter de manière rapide et efficace.
Ces dernières années, la surveillance par IA est devenue un moyen important de résoudre ce problème. Le principe est principalement d’utiliser l’apprentissage profond basé sur le cloud computing pour la surveillance.Cependant, cette méthode a des exigences élevées en matière d’équipement et de bande passante réseau, et est très restrictive et instable.
Selon le China Pig Farming Network, les truies présentent souvent un comportement de nidification et augmentent la fréquence des changements de posture dans les 12 à 24 heures précédant la mise bas en raison des effets de l'ocytocine ou de la prolactine.Sur cette base, l'équipe expérimentale a conçu un modèle pour surveiller la posture des truies et la naissance des porcelets grâce à l'algorithme YOLOv5 et l'a déployé sur la carte de développement NVIDIA Jetson Nano.Cela permet de surveiller et d’analyser le processus dans des scénarios complexes, avec les caractéristiques de faible coût, de faible latence, de haute efficacité et de mise en œuvre facile.
Cette réalisation a été publiée dans la revue « Sensors » en janvier 2023, sous le titre « Sow Farrowing Early Warning and Supervision for Embedded Board Implementations ».

Adresse du document :
Aperçu de l'expérience
Données et traitement
Les données vidéo proviennent de deux fermes à Suqian et Jingjiang, dans le Jiangsu.Des données vidéo de 35 truies périparturientes ont été collectées.Parmi eux, les données de 11 truies de la ferme porcine de Jingjiang ont été enregistrées du 27 avril au 13 mai 2017, et les données de 24 truies de la ferme porcine de Suqian ont été enregistrées du 9 au 15 juin 2020. Les truies ont été placées au hasard dans des enclos de mise bas de taille spécifique (2,2 mx 1,8 m) et les données vidéo ont été enregistrées en continu par des caméras pendant 24 heures.
Le processus est le suivant :

Ensuite, les données sont prétraitées. L'équipe expérimentale a d'abord examiné les vidéos enregistrées un jour avant et après la mise bas des truies, puis les a traitées en données d'image à l'aide de Python et d'OpenCV.Le logiciel d'étiquetage a été utilisé pour annoter et améliorer manuellement les données de posture des truies et des porcelets nouveau-nés dans les 12 450 images acquises., et 32 541 images sont obtenues pour former l'ensemble de données.
Augmentation des données (Augmentation des données) : cela fait référence au recadrage, à la translation, à la rotation, à la mise en miroir, à la modification de la luminosité, à l'ajout de bruit et au cisaillement.
Cet ensemble de données est divisé en 5 catégories : 4 postures de truie (couchée latérale, couchée sternale, debout et assise) et porcelets,Le rapport entre l'ensemble d'entraînement, l'ensemble de validation et l'ensemble de test est de 7:1:2.

Modèle expérimental
L'équipe expérimentale a utilisé YOLOv5s-6.0 pour construire un modèle permettant de détecter la posture des truies et des porcelets.Ce modèle se compose de 4 parties :
Saisir:Entrée d'image
Colonne vertébrale:Extraction des caractéristiques des images de truies et de porcelets
Cou:Fusion des caractéristiques de l'image
Prédiction:Prédiction (en raison de la grande différence de taille entre les truies et les porcelets, cette partie utilise 3 cartes de caractéristiques différentes pour détecter les cibles grandes, moyennes et petites)

un:Détails du module CBS
b:Détails du module Res-unit
c:Détails des modules CSP1_X et CSP2_X
d:Structure détaillée du module SPPF
L'équipe expérimentale a déployé l'algorithme sur la plate-forme informatique d'IA embarquée de la série Jetson Nano de NVIDIA et a utilisé TensorRT pour optimiser le modèle.Cela permet à son fonctionnement ultérieur sur la carte de développement embarquée d'avoir un débit plus élevé et une latence plus faible, tout en évitant d'éventuelles fuites de données lors de la transmission sur le réseau.

Les paramètres spécifiques sont les suivants :
Environnement de formation du modèle :Système d'exploitation Ubuntu 18.04, processeur Intel(R) Xeon(R) Gold 5118 à 2,30 GHz, GPU NVIDIA Quadro P4000, mémoire vidéo de 8 Go, mémoire de 64 Go, disque dur de 2 To, frameworks d'apprentissage en profondeur PyTorch 1.7.1 et Torchvision 0.8.2, version CUDA 10.1.
Environnement de déploiement du modèle :Système d'exploitation Ubuntu 16.04 adapté à ARM, processeur ARM A57 à 4 cœurs à 1,43 GHz, GPU à architecture Maxwell à 128 cœurs, 4 Go de mémoire, JetPack 4.5, Cuda10.2.89, Python 3.6, TensorRT 7.1, Opencv 4.1.1, environnement d'apprentissage en profondeur CMake 3.21.2.
Paramètres du modèle :(1) Pour la formation YOLOv5, définissez l'époque 300, le taux d'apprentissage 0,0001, la taille du lot 16 ; (2) Pour le réseau optimisé TensorRT, batch_size est 1 et la précision est fp16.
Enfin, l’équipe expérimentale a utilisé des indicateurs tels que la précision, le taux de rappel et la vitesse de détection pour évaluer les performances de différents algorithmes.
dans,La précision et le rappel peuvent être utilisés pour mesurer la capacité d’un algorithme à détecter toutes les catégories de données., comprenant 4 positions de truie (couchée sur le côté, couchée sur le sternum, debout et assise) et des porcelets nouveau-nés ;La taille du modèle et la vitesse de détection sont utilisées pour mesurer si l'algorithme est adapté au déploiement sur des appareils embarqués.
La formule de calcul est la suivante :

TP:Le nombre de prédictions correctes pour les échantillons positifs
FP:Le nombre de prédictions incorrectes pour les échantillons positifs
FN:Le nombre de prédictions incorrectes pour les échantillons négatifs
Résultats expérimentaux
Performances du modèle
L'équipe expérimentale a constaté qu'au cours des 300 époques d'entraînement du modèle,À mesure que le cycle d’itération augmente, la précision et le taux de rappel affichent généralement une tendance à la hausse.Dans le même temps, on peut constater queLa précision et le rappel du modèle YOLOv5s après augmentation des données sont systématiquement élevés.

un:Précision
b:Rappel
Ligne orange :Précision/rappel du modèle YOLOv5s après augmentation des données
Ligne bleue :Précision/Rappel du modèle YOLOv5s sans augmentation des données
Dans les expériences, la précision moyenne (mAP) est utilisée pour évaluer la capacité de l'algorithme à détecter toutes les catégories.Lors de l’évaluation de l’algorithme YOLOv5s, l’équipe expérimentale a également comparé les performances des algorithmes YOLOX-nano et NanoDet-m. Les résultats ont montré que la vitesse de détection de YOLOX-nano et NanoDet-m était légèrement plus rapide que celle de YOLOv5s, mais la précision était plus faible et il y avait des cas de détection manquée et de fausse détection de porcelets. L'algorithme YOLOv5s fonctionne bien dans la détection d'objets de différentes tailles, et la vitesse de détection moyenne du modèle dans les images, les vidéos locales et les caméras est comparable aux deux autres.De plus, le modèle YOLOv5s augmenté de données présente la précision et le rappel les plus élevés, qui sont respectivement de 0,982 et 0,937.

Afin de tester la capacité de généralisation et la capacité anti-interférence du modèle, l'équipe expérimentale a conservé l'une des truies comme « nouvel échantillon » lors de la formation du modèle et a sélectionné 410 images contenant différentes scènes complexes pour tester le modèle. Les résultats montrent queLa détection manquée et la fausse détection de la posture de la truie sont principalement affectées par les changements d'éclairage ; les porcelets sont principalement affectés par l'allumage des lampes chauffantes, c'est-à-dire qu'ils sont difficiles à identifier sous une forte lumière ; le moment où le premier porcelet naît et les scènes de lampes chauffantes de différentes couleurs ont peu d'effet sur la capacité de détection du modèle.

Deuxième colonne à partir de la gauche :Le taux de détection manquée de la posture de la truie est le plus élevé dans des conditions d'éclairage complexes
Trois colonnes de gauche :Le taux de fausse détection de la posture de la truie est plus élevé dans des conditions d'éclairage complexes et lorsque les lampes chauffantes sont allumées la nuit.
Quatre colonnes de gauche :Le nombre de faux positifs était plus élevé dans des conditions d’éclairage mixtes et la nuit lorsque les lampes chauffantes étaient allumées.
Cinq colonnes de gauche :Le nombre de porcelets manqués était plus élevé la nuit lorsque les lampes chauffantes étaient allumées

un:Sous un éclairage complexe
b:Premier porcelet né
c:Différentes couleurs de lampes chauffantes
d:Lampe chauffante allumée la nuit
Avant et après le déploiement
Après que l'équipe expérimentale a déployé le modèle sur NVIDIA Jetson Nano, elle a pu détecter avec précision la posture des truies et des porcelets. Après avoir comparé les résultats des tests, nous avons constaté queBien que le modèle ait montré une légère diminution de précision après avoir été déployé sur NVIDIA Jetson Nano, sa vitesse a augmenté de plus de 8 fois.

Colonne de gauche :Format du modèle
Deuxième colonne à partir de la gauche :Plateforme de déploiement de modèles, Quadro P4000 est la plate-forme utilisée pour les tests comparatifs.
L'utilisation du GPU sur la carte de développement intégrée limite l'application pratique de ce modèle. Le graphique suivant montre l’utilisation du GPU du modèle lors de la détection d’objets dans des images et des vidéos sur une carte de développement intégrée. Étant donné que le flux vidéo doit être décodé, le taux d’utilisation du GPU lors de la détection de vidéos est plus élevé que lors de la détection d’images, mais cela n’affecte pas les performances du modèle.Les résultats des tests montrent que le modèle étudié peut être appliqué à différents scénarios de production.

(un) Utilisation du GPU dans la détection d'images
(b) Utilisation du GPU dans la détection vidéo
Résultats des tests
L’équipe expérimentale a testé et analysé les données de 22 truies.La fréquence moyenne des changements de posture des truies de 48 heures avant la mise bas à 24 heures après la mise bas a été obtenue.En fonction de la fréquence des changements (comme indiqué dans la figure ci-dessous), l'équipe a résumé la stratégie d'alerte précoce du modèle comme suit :
1. Une alarme sera émise lorsque la fréquence de transition de posture dépasse la limite supérieure (17,5 fois/heure) ou tombe en dessous de la limite inférieure (10 fois/heure).
2. Afin de réduire l'impact des activités quotidiennes de la truie sur l'alerte, la limite supérieure ou inférieure doit être supérieure à 5 heures.
Les tests sur les échantillons ont montré queLe modèle a pu émettre une alarme 5 heures avant le début de la mise bas, l'erreur entre l'heure d'avertissement et l'heure réelle de mise bas étant de 1,02 heure.

(un) Plage de taux de transition de posture moyenne
(b) Fréquence moyenne de transition de posture
48 heures à 24 heures avant la livraison,Durant cette période, les activités des truies sont normales
24 heures à 1 heure avant la livraison,La fréquence des changements de posture augmente progressivement puis diminue progressivement
1 heure à 24 heures après l'accouchement,La fréquence des transitions posturales est proche de 0, puis augmente légèrement
Lorsque le premier porcelet nouveau-né est détecté, l'alarme de mise bas se déclenche et affiche « Mise bas commencée ! Heure de début : XXX ». De plus, la lumière LED clignotante peut également aider les éleveurs à localiser rapidement les truies qui mettent bas et à déterminer si une intervention manuelle est nécessaire.
Mais lorsque le taux de détection est trop élevé, les porcelets sont souvent détectés de manière incorrecte. Par conséquent, afin de parvenir à une détection en temps réel et de réduire les faux positifs, l'équipe expérimentale a adopté « Trois tests consécutifs ».Ce n'est que lorsque les porcelets nouveau-nés sont détectés trois fois de suite qu'ils peuvent être jugés comme porcelets.Le nombre de faux positifs pour cette méthode est de 1,59 fois, tandis que celui de la règle de détection unique traditionnelle est de 9,55 fois. Le nombre de faux positifs a diminué de manière significative et la précision moyenne globale était de 92,9%.
Élevage porcin par IA : une nouvelle ère d'agriculture intelligente
En tant que principal pays éleveur de porcs au monde, la production porcine annuelle de mon pays était d'environ 700 millions de têtes de 2015 à 2018. Cependant, ces dernières années, en raison de l'impact de la peste porcine et d'autres maladies, le nombre de porcs vivants disponibles et le nombre de porcs abattus ont continué de fluctuer considérablement. Selon les données de recherche publiées par l'industrie,Ces dernières années, la proportion d’éleveurs porcins individuels a continué de diminuer, tandis que l’échelle de production a continué d’augmenter, nécessitant l’application de technologies d’élevage plus efficaces et plus intensives à l’industrie de l’élevage porcin.

dans le pays, il existe déjà des produits fiables pour l'élevage porcin in vitro. Alibaba Cloud, en collaboration avec Aibo Machinery et Qishuo Technology, a lancé une solution d'élevage porcin IA pour répondre aux besoins de divers scénarios. La solution d'élevage intelligent de JD Agriculture and Animal Husbandry est basée sur l'IA, l'Internet des objets et d'autres technologies, et a permis d'obtenir une « reconnaissance faciale des porcs et une traçabilité complète de la chaîne ». Le modèle agricole plus intelligent et plus sophistiqué apporté par l’IA est progressivement promu.
Cependant, la promotion de l’élevage porcin IA est toujours confrontée à des problèmes urgents tels que le coût élevé et la complexité du fonctionnement.Il reste probablement encore un long chemin à parcourir avant que davantage d’élevages porcins puissent adopter l’IA.
Cet article a été publié pour la première fois sur la plateforme publique HyperAI WeChat~
Liens de référence :
[1]https://www.163.com/dy/article/HCSQN810055360T7.html
[2]https://xueshu.baidu.com/usercenter/paper/show
[3]https://www.aliyun.com/solution/govcloud/ai-pig
[4]http://www.dekanggroup.com/index/news/detail/id/182.html
[5]https://www.thepaper.cn/newsDetail_forward_3695180
[7] Ding Qian, Liu Longshen, Chen Jia, Tai Meng, Shen Mingxia. Détection de cibles de porcelets allaités basée sur Jetson Nano[J/OL]. Transactions de la Société chinoise de machines agricoles.