X
Ultralytics YOLOv8.2 LibérationUltralytics YOLOv8.2 LibérationUltralytics YOLOv8.2 Flèche de déverrouillage
Contrôle vert
Lien copié dans le presse-papiers

Qu'est-ce que R-CNN ? Un aperçu rapide

Apprends à connaître le RCNN et son impact sur la détection d'objets. Nous aborderons ses principaux composants, ses applications et son rôle dans l'avancement de techniques telles que Fast RCNN et YOLO.

La détection d'objets est une tâche de vision par ordinateur qui permet de reconnaître et de localiser des objets dans des images ou des vidéos pour des applications telles que la conduite autonome, la surveillance et l'imagerie médicale. Les méthodes antérieures de détection d'objets, telles que le détecteur de Viola-Jones et l'histogramme des gradients orientés (HOG) avec les machines à vecteurs de support (SVM), reposaient sur des caractéristiques élaborées à la main et des fenêtres coulissantes. Ces méthodes avaient souvent du mal à détecter avec précision des objets dans des scènes complexes comportant plusieurs objets de formes et de tailles différentes.

Les réseaux neuronaux convolutionnels basés sur les régions (R-CNN) ont changé la façon dont nous abordons la détection d'objets. Il s'agit d'une étape importante dans l'histoire de la vision par ordinateur. Pour comprendre comment des modèles comme YOLOv8 sont apparus, nous devons d'abord comprendre les modèles comme le R-CNN. 

Créée par Ross Girshick et son équipe, l'architecture du modèle R-CNN génère des propositions de régions, extrait des caractéristiques à l'aide d'un réseau neuronal convolutif (CNN) pré-entraîné, classe les objets et affine les boîtes de délimitation. Bien que cela puisse sembler décourageant, à la fin de cet article, tu auras bien compris comment fonctionne le R-CNN et pourquoi il a un tel impact. Jetons un coup d'œil !

Comment fonctionne R-CNN ?

Le processus de détection d'objets du modèle R-CNN comprend trois étapes principales : la génération de propositions de régions, l'extraction de caractéristiques et la classification d'objets tout en affinant leurs boîtes de délimitation. Passons en revue chacune de ces étapes.

Fig 1. Comment fonctionne le R-CNN.

Propositions de régions : L'épine dorsale du RCNN

Dans un premier temps, le modèle R-CNN analyse l'image pour créer de nombreuses propositions de régions. Les propositions de régions sont des zones potentielles qui pourraient contenir des objets. Des méthodes telles que la recherche sélective sont utilisées pour examiner divers aspects de l'image, tels que la couleur, la texture et la forme, en la décomposant en différentes parties. La recherche sélective commence par diviser l'image en petites parties, puis fusionne les parties similaires pour former de plus grandes zones d'intérêt. Ce processus se poursuit jusqu'à ce qu'environ 2 000 propositions de régions soient générées.

Fig 2. Comment fonctionne la recherche sélective.

Ces propositions de régions permettent d'identifier tous les endroits possibles où un objet pourrait être présent. Dans les étapes suivantes, le modèle peut traiter efficacement les zones les plus pertinentes en se concentrant sur ces zones spécifiques plutôt que sur l'ensemble de l'image. L'utilisation de propositions de régions permet d'équilibrer la rigueur et l'efficacité des calculs.

Extraction des caractéristiques de l'image : Saisir les détails

L'étape suivante du processus de détection d'objets du modèle R-CNN consiste à extraire les caractéristiques des propositions de régions. Chaque proposition de région est redimensionnée à une taille cohérente à laquelle le CNN s'attend (par exemple, 224x224 pixels). Le redimensionnement aide le CNN à traiter efficacement chaque proposition. Avant la déformation, la taille de chaque proposition de région est légèrement agrandie pour inclure 16 pixels de contexte supplémentaire autour de la région afin de fournir plus d'informations sur l'environnement pour une meilleure extraction des caractéristiques.

Une fois redimensionnées, ces propositions de régions sont introduites dans un CNN comme AlexNet, qui est généralement pré-entraîné sur un grand ensemble de données comme ImageNet. Le CNN traite chaque région pour extraire des vecteurs de caractéristiques à haute dimension qui capturent des détails importants tels que les bords, les textures et les motifs. Ces vecteurs de caractéristiques condensent les informations essentielles des régions. Ils transforment les données brutes de l'image en un format que le modèle peut utiliser pour une analyse plus approfondie. La classification et la localisation précises des objets dans les étapes suivantes dépendent de cette conversion cruciale des informations visuelles en données significatives.

Fig 3. Extrait les caractéristiques d'une proposition de région à l'aide d'AlexNet.

Classification des objets : Identification des objets détectés

La troisième étape consiste à classer les objets qui se trouvent dans ces régions. Il s'agit de déterminer la catégorie ou la classe de chaque objet trouvé dans les propositions. Les vecteurs de caractéristiques extraits sont ensuite passés par un classificateur d'apprentissage automatique.

Dans le cas du R-CNN, les machines à vecteurs de support (SVM) sont généralement utilisées à cette fin. Chaque SVM est entraîné à reconnaître une classe d'objets spécifique en analysant les vecteurs de caractéristiques et en décidant si une région particulière contient une instance de cette classe. Essentiellement, pour chaque catégorie d'objet, il existe un classificateur dédié qui vérifie chaque proposition de région pour cet objet spécifique.

Pendant la formation, les classificateurs reçoivent des données étiquetées avec des échantillons positifs et négatifs :

  • Échantillons positifs : Régions contenant l'objet cible.
  • Échantillons négatifs : Régions sans l'objet.

Les classificateurs apprennent à faire la distinction entre ces échantillons. La régression des boîtes englobantes affine encore la position et la taille des objets détectés en ajustant les boîtes englobantes initialement proposées pour qu'elles correspondent mieux aux limites réelles des objets. Le modèle R-CNN peut identifier et localiser avec précision les objets en combinant la classification et la régression des boîtes de délimitation.

Fig 4. Exemple de régression par boîte englobante.

Tout mettre ensemble : Affiner les détections avec le DDN

Après les étapes de classification et de régression des boîtes englobantes, le modèle génère souvent plusieurs boîtes englobantes qui se chevauchent pour le même objet. La suppression non maximale (NMS) est appliquée pour affiner ces détections, en conservant les boîtes les plus précises. Le modèle élimine les boîtes redondantes et qui se chevauchent en appliquant la NMS et ne conserve que les détections les plus sûres. 

Le NMS fonctionne en évaluant les scores de confiance (indiquant la probabilité qu'un objet détecté soit réellement présent) de toutes les boîtes de délimitation et en supprimant celles qui se chevauchent de manière significative avec des boîtes ayant un score plus élevé. 

Fig 5. Un exemple de suppression non maximale.

Voici un aperçu des étapes du DDN :

  • Tri : Les boîtes englobantes sont triées par ordre décroissant de leur score de confiance.
  • Sélection : La boîte ayant le score le plus élevé est sélectionnée, et toutes les boîtes qui se chevauchent de manière significative (sur la base de l'intersection sur l'union, IoU) avec elle sont supprimées.
  • Itération : Ce processus se répète pour la case suivante ayant obtenu le meilleur score et se poursuit jusqu'à ce que toutes les cases aient été traitées.

Pour résumer, le modèle R-CNN détecte les objets en générant des propositions de régions, en extrayant des caractéristiques à l'aide d'un CNN, en classant les objets et en affinant leur position à l'aide d'une régression de la boîte englobante, et en utilisant la suppression non maximale (NMS) pour ne conserver que les détections les plus précises.

R-CNN est une étape importante dans la détection d'objets

R-CNN est un modèle marquant dans l'histoire de la détection d'objets parce qu'il a introduit une nouvelle approche qui a grandement amélioré la précision et les performances. Avant R-CNN, les modèles de détection d'objets avaient du mal à trouver un équilibre entre vitesse et précision. La méthode de R-CNN consistant à générer des propositions de régions et à utiliser les CNN pour l'extraction des caractéristiques permet de localiser et d'identifier avec précision les objets dans les images. 

R-CNN a ouvert la voie à des modèles tels que Fast R-CNN, Faster R-CNN et Mask R-CNN, qui ont encore amélioré l'efficacité et la précision. En combinant l'apprentissage profond et l'analyse basée sur les régions, R-CNN a établi une nouvelle norme dans le domaine et a ouvert des possibilités pour diverses applications dans le monde réel.

Transformer l'imagerie médicale avec R-CNN

L'imagerie médicale est un cas d'utilisation intéressant de R-CNN. Les modèles R-CNN ont été utilisés pour détecter et classer différents types de tumeurs, comme les tumeurs cérébrales, dans les scanners médicaux tels que les IRM et les tomodensitogrammes. L'utilisation du modèle R-CNN en imagerie médicale améliore la précision du diagnostic et aide les radiologues à identifier les tumeurs malignes à un stade précoce. La capacité de R-CNN à détecter des tumeurs même petites et à un stade précoce peut faire une différence significative dans le traitement et le pronostic de maladies comme le cancer.

Fig 6. Détection des tumeurs cérébrales à l'aide du RCNN.

Le modèle R-CNN peut être appliqué à d'autres tâches d'imagerie médicale en plus de la détection des tumeurs. Par exemple, il peut identifier les fractures, détecter les maladies de la rétine dans les scanners oculaires et analyser les images des poumons pour détecter des affections telles que la pneumonie et le COVID-19. Quel que soit le problème médical, une détection précoce peut conduire à de meilleurs résultats pour les patients. En appliquant la précision de R-CNN à l'identification et à la localisation des anomalies, les prestataires de soins de santé peuvent améliorer la fiabilité et la rapidité des diagnostics médicaux. La détection d'objets rationalisant le processus de diagnostic, les patients peuvent bénéficier de plans de traitement opportuns et précis.

Les limites de R-CNN et ses successeurs

Bien qu'impressionnant, le R-CNN présente certains inconvénients, comme une grande complexité de calcul et des temps d'inférence lents. Ces inconvénients rendent le modèle R-CNN inadapté aux applications en temps réel. La séparation des propositions de régions et des classifications en étapes distinctes peut conduire à des performances moins efficaces.

Au fil des ans, divers modèles de détection d'objets sont apparus pour répondre à ces préoccupations. Fast R-CNN combine les propositions de régions et l'extraction des caractéristiques CNN en une seule étape, ce qui accélère le processus. Faster R-CNN introduit un réseau de propositions de régions (RPN) pour rationaliser la génération de propositions, tandis que Mask R-CNN ajoute une segmentation au niveau des pixels pour des détections plus détaillées.

Fig 7. Comparaison entre R-CNN, R-CNN rapide, R-CNN plus rapide et R-CNN avec masque.

À peu près en même temps que Faster R-CNN, la série YOLO (You Only Look Once) a commencé à faire progresser la détection d'objets en temps réel. Les modèles YOLO prédisent les boîtes de délimitation et les probabilités de classe en un seul passage dans le réseau. Par exemple, la série R-CNN Ultralytics YOLOv8 offre une précision et une vitesse accrues avec des fonctions avancées pour de nombreuses tâches de vision par ordinateur.

Principaux enseignements

RCNN a changé la donne dans le domaine de la vision par ordinateur, en montrant comment l'apprentissage profond peut modifier la détection d'objets. Son succès a inspiré de nombreuses nouvelles idées dans le domaine. Même si des modèles plus récents comme Faster R-CNN et YOLO sont venus corriger les défauts de RCNN, sa contribution est une étape importante qu'il est important de ne pas oublier.

Au fur et à mesure que la recherche se poursuit, nous verrons des modèles de détection d'objets encore plus performants et plus rapides. Ces avancées permettront non seulement d'améliorer la façon dont les machines comprennent le monde, mais aussi de faire des progrès dans de nombreux secteurs d'activité. L'avenir de la détection d'objets s'annonce passionnant !

Tu veux continuer à explorer l'IA ? Fais partie de lacommunauté Ultralytics ! Explore notre dépôt GitHub pour voir nos dernières innovations en matière d'intelligence artificielle. Jette un coup d'œil à nos solutions d'IA couvrant divers secteurs comme l'agriculture et la fabrication. Rejoins-nous pour apprendre et progresser !

Logo FacebookLogo de TwitterLogo LinkedInSymbole du lien de copie

Lire la suite dans cette catégorie

Construisons ensemble le futur
de l'IA !

Commence ton voyage avec le futur de l'apprentissage automatique.