For the time being, this blog post is only available in French.
Mise en contexte
En vision par ordinateur, le choix du type d’annotation pour un jeu de données dépend de l’application visée (comme par exemple la classification, la détection d’objet ou la segmentation) et des informations que l’on souhaite extraire des images. Whaler Seeker utilise actuellement des techniques de segmentation sémantique pour l'analyse automatique d'images afin de détecter les cétacés. Les annotations et les prédictions sont donc sous forme d’un masque qui associe chaque pixel à un label, permettant de distinguer les pixels correspondant aux baleines de ceux de l'arrière-plan.
Cependant, un défi majeur apparaît lorsque les cétacés nagent très près les uns des autres, formant ce que nous appelons des "troupeaux denses". Dans de tels cas, le modèle produit souvent une seule masse de pixels au lieu de détecter des individus distincts (Figure 1).
Figure 1 : Exemples de prédictions sous forme de masse de pixels englobant plusieurs individus.
Cela rend difficile la tâche de compter précisément les baleines, même pour les biologistes. En effet, les experts peuvent annoter ces situations de manière variable, c’est ce que l’on appelle la variabilité inter-observateur (Figure 2). Avoir un outil d’intelligence artificielle capable d’analyser ces troupeaux denses faciliterait le travail des biologistes mais permettrait également une meilleure standardisation de l’analyse.
Figure 2 : Exemple de variabilité d'annotation dans un groupe de bélugas. Même s'ils avaient le même nombre d'individus, l'observateur 2 et l'observateur 3 n'ont pas fait la même annotation (Boulent et al. 2023)[1].
Le modèle HerdNet
Pour remédier à cette variabilité et accélérer l'examen des images par les biologistes, nous avons étudié une approche de détection par point à l'aide du modèle HerdNet, développé par Delplanque et al. [2] en 2023. Ce modèle a été spécifiquement conçu pour compter les mammifères africains dans des troupeaux denses, ce qui présente des similitudes avec notre défi. Cependant, les images de baleines nageant dans l'eau ont deux particularités qui ne sont pas présentes chez les animaux terrestres. La première est que les baleines peuvent nager plus ou moins profondément dans la colonne d'eau, et sont donc plus ou moins visibles sur l'image. La seconde est que les baleines peuvent nager les unes au-dessus des autres, donnant un effet de superposition (Figure 2) qui complexifie la détection des individus.
Pour évaluer si HerdNet est la solution idéale pour détecter automatiquement les baleines, même dans les troupeaux denses, nous avons comparé ses performances à notre approche actuelle de segmentation sémantique.
HerdNet est une méthode de détection basée sur des points, ce qui signifie qu'elle représente les objets par des points plutôt que par des boîtes englobantes. Cette approche a été initialement utilisée pour étiqueter les foules dans les images et s'est avérée plus rapide que les boîtes englobantes, surtout lorsque de nombreux objets doivent être comptés, comme c'est le cas pour les troupeaux d'animaux. La similarité entre la détection de troupeaux et la détection de foule a inspiré le développement de HerdNet, qui combine la détection et le comptage pour obtenir à la fois un décompte du troupeau et une localisation précise des individus au sein du troupeau. L'architecture de HerdNet est basée sur CenterNet [3], avec une adaptation de l'encodeur et du décodeur DLA-34 pour l'extraction des caractéristiques profondes des images.
Résultat des expériences
Après expérimentation de HerdNet sur notre jeu de données, nous avons remarqué que l'utilisation du modèle HerdNet présente à la fois des avantages et des limites lorsqu’il est appliqué à la détection de baleines.
Les avantages de HerdNet incluent sa capacité à bien détecter les individus et faire très peu d'erreurs dans des troupeaux denses. L'utilisation de points pour représenter les objets offre une approche plus simple que la segmentation sémantique pour compter les individus. Elle pourrait être intégrée à notre processus d'annotation pour faciliter l’annotation des individus qui se superposent. Les images ci-dessous représentent la différence du format de prédictions entre les deux modèles.
Figure 3 : Représentation des prédictions (points verts) et des annotations (points roses) pour HerdNet (gauche), et des prédictions du modèle de segmentation sémantique (droite).
Cependant, le modèle HerdNet présente également certaines limites. Il a du mal à reconnaître les baleines situées en profondeur, comme nous pouvons le voir avec les trois baleines extérieures qui ne sont pas détectées par HerdNet. Cette observation limite sa pertinence pour les animaux marins.
Table 1 : Tableau synthétisant les résultats obtenus avec le modèle HerdNet sur l’ensemble de test, incluant le nombre de vrais positifs (VP), de faux négatifs (FN) le nombre total de prédictions et le rappel calculés selon la profondeur des baleines.
En effet, comme on peut le voir dans le Tableau 1, plus la profondeur est grande, plus la capacité à reconnaître les baleines du modèle diminue.
Une autre limitation importante réside dans l’évaluation des prédictions en vrais positifs. Cette étape, qui est cruciale pour évaluer les performances du modèle, repose sur la création d'un cercle de pixels autour des baleines pour déterminer si une prédiction est bonne ou non (Figure 4). Cette approche n'est pas parfaitement adaptée car les baleines ne sont pas circulaires et leur taille sur l’image varie en fonction de l'altitude de vol, qui est amenée à varier.
Figure 4 : Représentation du cercle de pixel évaluant les prédictions vraies positives (VP). Les prédictions sont représentées par les points verts et les annotations par les points roses.
En fin de compte, comme pour chaque projet d’intelligence artificielle, le choix d'utiliser une approche plutôt qu’un autre dépendra de la nature de l'ensemble de données et des objectifs spécifiques du projet. Finalement dans notre expérimentation, même si le comptage en troupeau dense a bien fonctionné, les résultats n'ont pas été satisfaisants pour la détection de baleine en général, la segmentation sémantique apportant de meilleurs résultats. En effet, le modèle HerdNet possède plus de difficultés à détecter les cétacés en profondeur. Malgré ses limites, le modèle HerdNet offre une approche intéressante pour la détection et le comptage d'individus dans des troupeaux denses. Il reste cependant des défis à relever pour l'adapter efficacement à des ensembles de données qui contiennent des objets variant en taille et en profondeur.
En revanche, le modèle serait intéressant à utiliser pour des inventaires d’animaux terrestres, comme originellement avec les mammifères africains. Ce modèle pourrait être par exemple utilisé dans le cas d’inventaires de population de pingouins ou de phoques.
Références
[1] J. Boulent, B. Charry, M. K. McHugh, E. Tissier, R. Fan, M. Marcoux, C. A. Watt, A. Gagné-Turcotte “Scaling whale monitoring using deep learning: A human-in-the-loop solution for analyzing aerial datasets”, Frontiers in Marine Science, vol. 10, mars 2023, doi: 0.3389/fmars.2023.1099479
[2] A. Delplanque, S. Foucher, J. Théau, E. Bussière, C. Vermeulen, et P. Lejeune, « From crowd to herd counting: How to precisely detect and count African mammals using aerial imagery and deep learning? », ISPRS Journal of Photogrammetry and Remote Sensing, vol. 197, p. 167‑180, mars 2023, doi: 10.1016/j.isprsjprs.2023.01.025.
[3] Duan, Kaiwen, Song Bai, Lingxi Xie, Honggang Qi, Qingming Huang, et Qi Tian. « CenterNet: Keypoint Triplets for Object Detection ». arXiv, 18 avril 2019. http://arxiv.org/abs/1904.08189.