La comparaison modèles détection marine met en lumière l’efficacité relative de YOLO et Faster R-CNN dans la classification des objets marins. Les résultats montrent que YOLO excelle en vitesse, tandis que Faster R-CNN offre une précision supérieure pour les objets de petite taille et partiellement occultés.
Comparaison des Modèles
Cette section examine la comparaison des différents modèles de détection et de classification des objets marins.
Tableau Comparatif
Tableau 2.2 – Comparaison des modèles | ||
---|---|---|
CRITÈRES | YOLO | Faster R-CNN |
Vitesse | Très rapide, capable de traitement en temps réel | Plus lent comparé à YOLO en raison de sa complexité |
Précision | Haute précision pour les objets de taille moyenne à grande | Très haute précision, particulièrement pour les petits objets et les objets partiellement occultés |
Fonctionnement | Divise l’image en une grille et prédit les boîtes englobantes et les probabilités de classe simultanément | Utilise un réseau de propositions de région (RPN) pour générer des propositions de régions d’intérêt qui sont ensuite classifiées et ajustées |
Complexité de l’architecture | Moyenne, architecture relativement simple | Élevée, en raison de l’étape supplémentaire de génération de propositions de région |
Facilité de mise en œuvre | Relativement facile à mettre en œuvre et à entraîner | Plus complexe à mettre en œuvre et à entraîner |
Avantages |
|
|
Inconvénients |
|
|
Justification du Choix
Pour notre étude, nous avons décidé d’utiliser à la fois YOLO (V8, V9) et Faster R-CNN afin de tirer parti de leurs caractéristiques distinctes et complémentaires. YOLO, connu pour sa rapidité et sa capacité à traiter les données en temps réel, est particulièrement adapté pour les systèmes de surveillance marine où une détection rapide est cruciale.
Sa simplicité d’intégration et sa performance en temps réel permettent des déploiements rapides.
En parallèle, Faster R-CNN est choisi pour sa précision exceptionnelle, ce qui est essentiel pour des scénarios nécessitant une détection minutieuse malgré un coût de traitement plus élevé. Cette combinaison nous permet de comparer directement les performances entre un modèle de détection en temps réel et un modèle offrant une précision accrue, nous fournissant ainsi une vision complète des avantages fondamentaux de chaque approche.
Évaluation
L’évaluation des performances des modèles de détection d’objets est cruciale pour déterminer leur efficacité et leur pertinence dans notre projet. Divers indicateurs et métriques permettent de quantifier la performance de chaque modèle, permettant une comparaison objective et un choix éclairé du modèle le plus adapté à un besoin donné.
Précision moyenne (mAP)
La mAP (Mean Average Precision) est considérée comme la mesure de performance standard pour les modèles de détection d’objets. Elle calcule la moyenne de la précision sur toutes les classes d’objets, en tenant compte de la précision et du rappel pour chaque classe. Une valeur de mAP élevée indique une détection précise et complète des objets dans l’ensemble des classes.
Formule
La formule pour calculer le mAP (mean Average Precision) est donnée par :
où :
1
mAP =
N
1
∫
APi =
0
N
APi
Σ
i=1
P(r) dr
Dans ces équations :
- N est le nombre total de classes.
- APi est la moyenne des précisions pour la classe i.
- P(r) est la précision en fonction du rappel r.
Score F1
Le score F1 est une mesure de la performance d’un modèle de classification qui prend en compte à la fois la précision et le rappel. Il est défini comme la moyenne harmonique de la précision (precision) et du rappel (recall).
Formule
Le score F1 est défini comme suit :
où :
F1 = 2 ·
Précision · Rappel Précision + Rappel
Précision =
TP TP + FP
avec :
Rappel =
TP TP + FN
- TP : Nombre de vrais positifs (True Positives)
- FP : Nombre de faux positifs (False Positives)
- FN : Nombre de faux négatifs (False Negatives)
Rappel moyen (mR)
Le mR (Mean Recall) mesure la proportion d’objets réels dans l’image qui ont été détectés correctement par le modèle. Il s’agit d’une mesure complémentaire à la mAP, car elle évalue la capacité du modèle à identifier tous les objets présents dans l’image, sans omettre d’objets (faux négatifs). Une valeur de mR élevée indique que le modèle détecte la plupart, voire tous, les objets présents dans l’image.
Formule
La formule pour calculer le mR (Mean Recall) est donnée par :
où :
1
mR =
N
N
Ri
Σ
i=1
- N est le nombre total de classes.
- Ri est le rappel (Recall) pour la classe i.
- Ri = TPi/(TPi + FNi), où TPi est le nombre de vrais positifs pour la classe i et FNi est le nombre de faux négatifs pour la classe i.
Le rappel pour chaque classe i est calculé en divisant le nombre de vrais positifs (TPi) par la somme des vrais positifs et des faux négatifs (FNi) pour cette classe.
Précision moyenne par classe (mAPc)
La mAPc (Mean Average Precision per Class) va plus loin que la mAP en calculant la précision moyenne pour chaque classe d’objet individuellement. Cela permet d’évaluer la performance du modèle pour chaque classe d’objet, identifiant les classes où le modèle excelle et celles où il peut nécessiter des améliorations.
Formule
La formule pour calculer la mAPc (Mean Average Precision per Class) est donnée par :
où :
1
mAPc =
N
N
APi
Σ
i=1
- N est le nombre total de classes.
- APi est la précision moyenne (Average Precision) pour la classe i.
La précision moyenne pour chaque classe i est calculée en intégrant la courbe précision-rappel (Precision-Recall curve) pour cette classe. La précision moyenne d’une classe est la moyenne des précisions obtenues à différents seuils de rappel.
Nombre d’erreurs de localisation (LOC)
Le nombre d’erreurs de localisation (LOC) mesure le nombre de boîtes englobantes prédites dont la localisation est incorrecte par rapport aux boîtes englobantes réelles. Ces erreurs surviennent lorsque le modèle détecte un objet, mais place la boîte englobante prédite à une position qui ne correspond pas précisément à la position de l’objet réel dans l’image.
Formule
Le calcul du LOC peut se baser sur la comparaison de la boîte englobante prédite (Bp) et de la boîte englobante réelle (Br) en utilisant l’intersection sur union (IoU) :
IoU = |Bp ∩ Br| / |Bp ∪ Br|
où |Bp ∩ Br| est l’aire de l’intersection des deux boîtes englobantes et |Bp ∪ Br| est l’aire de leur union.
Si l’IoU est inférieure à un seuil prédéfini (par exemple 0,5), alors la prédiction est considérée comme une erreur de localisation.
Le nombre total d’erreurs de localisation est ensuite calculé en comptant toutes les prédictions incorrectes selon ce critère dans l’ensemble des images.
Taux d’erreurs de localisation (LOCerr)
C’est une métrique utilisée pour mesurer la précision des boîtes englobantes prédites par un modèle de détection d’objets. Cette métrique indique le pourcentage de prédictions où la localisation des boîtes englobantes est incorrecte par rapport aux boîtes englobantes réelles.
Formule
Pour calculer le LOCerr, on commence par comparer chaque boîte englobante prédite (Bp) avec la boîte englobante réelle correspondante (Br) en utilisant l’intersection sur union (IoU) :
IoU = |Bp ∩ Br| / |Bp ∪ Br|
Une prédiction est considérée comme une erreur de localisation si l’IoU est inférieur à un seuil prédéfini (par exemple 0,5).
Le LOCerr est alors calculé comme le ratio du nombre d’erreurs de localisation sur le nombre total de prédictions :
LOCerr = (Nombre d’erreurs de localisation / Nombre total de prédictions) × 100%
Cette métrique est cruciale pour évaluer la capacité d’un modèle à non seulement détecter la présence d’objets, mais aussi à les localiser précisément dans une image.
Choix des métriques d’évaluation
Le choix des métriques d’évaluation les plus pertinentes dépend des objectifs spécifiques de l’application et des priorités de l’utilisateur. Pour notre application en temps réel, le mAP et les rappels seront des priorités majeures.
Déploiement
Dans le cadre de ce projet, nous avons exploré l’intégration d’un modèle de détection d’objets sur un drone simulé dans un environnement marin réaliste créé à l’aide de Blender. L’objectif principal est d’évaluer la faisabilité de cette approche pour la détection d’objets dans des environnements marins complexes afin de minimiser les coûts de production.
Création de l’environnement marin
Un environnement marin réaliste a été créé dans Blender, incluant les poissons, les coraux, les épaves d’avions, les bateaux et d’autres objets pertinents pour la tâche de détection. Divers outils et techniques de modélisation, de texturation et de simulation de fluides ont été utilisés pour générer un environnement aquatique crédible et immersif.
Intégration du modèle de détection d’objets
Après avoir étudié et sélectionné le meilleur modèle de détection d’objets, nous l’intégrerons dans l’interface Streamlit que nous avons développée. Cela comprendra la conversion du modèle dans un format compatible avec Streamlit, la rédaction de scripts Python pour connecter le modèle à l’interface, et la configuration des paramètres de détection.
Implémentation
Voici une explication plus détaillée de la circulation des données entre les trois technologies utilisées :
SimScale
- Entrée : Avec le format CAD (par exemple, formats STEP ou IGES) ou des fichiers de maillage (par exemple, formats STL ou OBJ) pour représenter la géométrie du drone, ainsi que les caractéristiques de conception du drone sous-marin. Ces données seraient utilisées pour simuler le comportement du drone dans des conditions environnementales réalistes.
- Sortie : Les résultats de simulation produits par SimScale seraient basés sur le comportement du drone sous-marin dans l’environnement simulé. Cela fournirait des informations sur la performance du drone dans des conditions spécifiques, telles que sa stabilité, sa résistance aux courants, son efficacité énergétique, etc. Ces résultats pourraient ensuite être utilisés pour ajuster la conception du drone et améliorer sa performance dans des environnements réels.
Blender
- Entrée : Blender recevra les modèles 3D du drone, ainsi que les données de conception et de simulation de SimScale. Cela inclut les géométries détaillées, les matériaux, et les résultats de simulation pour créer des visualisations précises et réalistes.
- Sortie : Blender produira des visualisations et des animations haute qualité du drone sous-marin et de ses capteurs en action dans des environnements simulés. Cela permet de créer des présentations visuelles pour les analyses et les démonstrations, en montrant comment le drone et ses composants réagissent aux conditions marines. Les sorties peuvent inclure des rendus photoréalistes, des vidéos d’animation et des modèles interactifs.
Interface
- Entrée : L’interface développée avec le framework Python Streamlit recevra une image ou une vidéo provenant de Blender ou d’autres sources.
- Sortie : La détection et la classification des objets.
En résumé, chaque technologie jouera un rôle crucial dans le processus de développement du drone sous-marin, en permettant la circulation des données entre elles pour optimiser sa conception, sa simulation et sa performance dans des environnements sous-marins variés.
Conclusion
Ce chapitre a décrit en détail l’approche méthodologique adoptée. En utilisant le processus CRISP-DM comme cadre principal, nous avons couvert les étapes essentielles depuis la collecte et le prétraitement des données jusqu’à l’évaluation des performances des modèles d’intelligence artificielle sélectionnés. Cette méthodologie structurée vise à assurer la qualité, la robustesse et l’efficacité de notre système.