Skip to content

Tests de détection et comptage des abeilles

Tests

Pour évaluer la détection des abeilles, j'ai utilisé deux méthodes distinctes : un simulateur de vol d'abeille et des vidéos capturées devant une ruche.

Test avec le simulateur

Pour les tests avec le simulateur, les paramètres sont prédéfinis dans l'application avant de lancer un enregistrement. Une fois la vidéo enregistrée au format MP4 et les données sur le nombre d'abeilles entrantes et sortantes récupérées, j'exécute mon simulateur de détection et compare les résultats.

Les tests sont effectués sur une vidéo de 30 secondes avec les paramètres par défaut, sauf celui qui est testé et sur un fond de couleur blanche. La détection des abeilles a été réalisée avec une suppression d'une image sur deux.

Résultats des tests de vitesse des abeilles

Les tests sont effectués de la vitesse la plus lente à la plus rapide.

Vitesse Abeilles sorties (Simulateur) Abeilles entrées (Simulateur) Abeilles sorties (Détection) Abeilles entrées (Détection) Pourcentage Abeilles sortit correcte (%) Pourcentage abeilles entrées correctes (%) Pourcentage cumulé correct (%)
10 16 14 10 13 62.5 92.86 77.68
9 15 15 13 15 86.67 100 93.34
8 15 14 13 12 86.67 85.71 86.19
7 17 13 7 12 41.18 92.31 66.74
6 14 18 12 9 85.71 50 67.86
5 16 15 12 13 75 86.67 80.84
4 15 14 8 9 53.33 64.29 58.81
3 17 20 10 6 58.82 30 44.41
2 13 12 5 3 38.46 25 31.73
1 19 13 3 1 15.79 7.69 11.74

Graphique de la vitesse des abeilles :

# mkdocs: render
import matplotlib.pyplot as plt
import numpy as np

vitesses = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
pourcentage_cumule = [77.68, 93.34, 86.19, 66.74, 67.86, 80.84, 58.81, 44.41, 31.73, 11.74]

plt.figure(figsize=(10, 6))
plt.plot(vitesses, pourcentage_cumule, marker='o')
plt.xlabel('Vitesse')
plt.ylabel('Pourcentage cumulé correct (%)')
plt.title('Pourcentage cumulé correct en fonction de la vitesse')
plt.grid(True)
plt.show()

Résultats des tests de taille des abeilles

Les tests sont effectués de la taille la plus grande à la plus petite.

Taille Abeilles sorties (Simulateur) Abeilles entrées (Simulateur) Abeilles sorties (Détection) Abeilles entrées (Détection) Pourcentage Abeilles sortit correcte (%) Pourcentage Abeilles entrée correcte (%) Pourcentage cumulé correct (%)
10 11 12 11 5 100 41.67 70.83
9 17 14 13 15 76.47 107.14 91.81
8 18 18 14 16 77.78 88.89 83.33
7 18 14 7 13 38.89 92.86 65.88
6 17 15 10 16 58.82 106.67 82.75
5 8 12 7 8 87.5 66.67 77.09
4 15 13 9 11 60 84.62 72.31
3 16 15 4 12 25 80 52.5
2 15 16 0 3 0 18.75 9.38
1 15 18 0 0 0 0 0

Graphique de la taille des abeilles :

# mkdocs: render
import matplotlib.pyplot as plt
import numpy as np
tailles = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
pourcentage_cumule = [70.83, 91.81, 83.33, 65.88, 82.75, 77.09, 72.31, 52.5, 9.38, 0]

plt.figure(figsize=(10, 6))
plt.plot(tailles, pourcentage_cumule, marker='o')
plt.xlabel('Taille')
plt.ylabel('Pourcentage cumulé correct (%)')
plt.title('Pourcentage cumulé correct en fonction de la taille')
plt.grid(True)
plt.show()

Conclusion des tests avec le simulateur

Les tests réalisés avec le simulateur ont permis de mieux comprendre les performances et les limites de l'application de détection et de comptage des abeilles en fonction de deux paramètres clés : la vitesse et la taille des abeilles.

Vitesse des abeilles

Les résultats montrent que la précision de détection des abeilles sortantes et entrantes diminue à mesure que la vitesse des abeilles augmente. Les meilleures performances sont observées pour des vitesses moyennes (5 à 9), avec un pourcentage cumulé correct dépassant souvent les 70%. En revanche, pour des vitesses très élevées ou très faibles, la précision chute considérablement, atteignant parfois des valeurs aussi basses que 11.74%.

Taille des abeilles

Concernant la taille, les résultats indiquent que les tailles moyennes (5 à 9) offrent les meilleures performances en termes de détection, avec des pourcentages cumulés corrects atteignant jusqu'à 91.81%. Les très grandes ou très petites tailles d'abeilles posent des défis à l'algorithme de détection, réduisant la précision jusqu'à 0% pour les plus petites tailles testées.

Ces conclusions mettent en évidence la nécessité de calibrer l'algorithme de détection pour des conditions optimales, mais aussi de chercher des solutions pour améliorer la détection dans des conditions moins idéales. L'analyse des vidéos réelles fournit des pistes supplémentaires pour ces améliorations.

Tests avec des vidéos réelles

Les vidéos pour réaliser les tests ont été prises avec une GoPro Hero 11 pour garantir une bonne qualité et un nombre d'images par seconde élevé.

Procédure d'enregistrement de vidéo sur une ruche
Figure 93 — Procédure d'enregistrement de vidéo sur une ruche

Durant la phase de test des différentes vidéos prises, j'ai remarqué que les abeilles en train de voler n'étaient pas détectées. En inspectant image par image la vidéo, j'ai constaté que les abeilles en vol créent un flou avec leurs ailes, rendant leur détection et suivi difficiles pour l'application. Voici les améliorations à apporter pour que cela fonctionne.

Conclusion

Les tests de détection des abeilles ont montré que la précision de détection varie considérablement en fonction de la vitesse et de la taille des abeilles. Les meilleures performances ont été observées pour des vitesses et des tailles moyennes, tandis que les vitesses très élevées et les tailles très petites ou très grandes réduisent la précision de détection.

Les vidéos réelles ont révélé une limitation majeure : la difficulté de détecter les abeilles en vol en raison du flou créé par leurs ailes. Des améliorations sont nécessaires pour augmenter la précision de détection dans ces conditions, notamment en utilisant des algorithmes plus sophistiqués capables de gérer le flou de mouvement.