Connectez-vous à YOLO Vision 2025 !
25 septembre 2025
10:00 — 18:00, heure d'été britannique
Événement hybride
Yolo Vision 2024

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

Abirami Vina

6 min de lecture

7 juin 2024

Découvrez RCNN et son impact sur la détection d'objets. Nous aborderons ses composantes clés, 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 peut reconnaître et 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 de détection d'objets antérieures, 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 artisanales et des fenêtres coulissantes. Ces méthodes avaient souvent du mal à détecter avec précision les objets dans des scènes complexes avec plusieurs objets de formes et de tailles différentes.

Les réseaux neuronaux convolutionnels basés sur les régions (R-CNN) ont changé notre façon d'aborder 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 ont vu le jour, nous devons d'abord comprendre des modèles comme 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 englobantes. Bien que cela puisse sembler intimidant, à la fin de cet article, vous comprendrez clairement comment fonctionne R-CNN et pourquoi il est si important. Jetons un coup d'œil !

Comment fonctionne R-CNN ?

Le processus de détection d'objets du modèle R-CNN implique trois étapes principales : la génération de propositions de régions, l'extraction de caractéristiques et la classification des objets tout en affinant leurs boîtes englobantes. Examinons chaque étape.

Fig 1. Fonctionnement de R-CNN.

Propositions de régions : l'épine dorsale de RCNN

Dans la première étape, le modèle R-CNN scanne 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 comme 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 parties plus petites, puis en fusionnant celles qui sont similaires pour former des zones d'intérêt plus grandes. Ce processus se poursuit jusqu'à ce qu'environ 2 000 propositions de régions soient générées.

Fig 2. Fonctionnement de la recherche sélective.

Ces propositions de régions aident à identifier tous les emplacements 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 équilibre la rigueur et l'efficacité du calcul.

Extraction de caractéristiques d'images : capture des détails

Étape suivante du processus de détection d'objets du modèle R-CNN : l'extraction de caractéristiques à partir des propositions de régions. Chaque proposition de région est redimensionnée à une taille uniforme attendue par le CNN (par exemple, 224x224 pixels). Le redimensionnement aide le CNN à traiter chaque proposition efficacement. Avant la déformation, la taille de chaque proposition de région est légèrement augmentée pour inclure 16 pixels de contexte supplémentaire autour de la région, afin de fournir plus d'informations environnantes 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 jeu de données comme ImageNet. Le CNN traite chaque région pour extraire des vecteurs de caractéristiques de 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. Extraction de caractéristiques à partir d'une proposition de région à l'aide d'AlexNet.

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

La troisième étape consiste à classer les objets dans ces régions. Cela signifie déterminer la catégorie ou la classe de chaque objet trouvé dans les propositions. Les vecteurs de caractéristiques extraits sont ensuite transmis à un classificateur d'apprentissage automatique.

Dans le cas de R-CNN, les machines à vecteurs de support (SVM) sont couramment 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'objets, il existe un classificateur dédié qui vérifie chaque proposition de région pour cet objet spécifique.

Pendant l'entraînement, 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 à distinguer ces échantillons. La régression de la boîte englobante affine davantage la position et la taille des objets détectés en ajustant les boîtes englobantes initialement proposées pour mieux correspondre aux limites réelles de l'objet. Le modèle R-CNN peut identifier et localiser avec précision les objets en combinant la classification et la régression de la boîte englobante.

Fig 4. Un exemple de régression de boîte englobante. (source : towardsdatascience.com)

Assemblage : affiner les détections avec la suppression des non-maximums (NMS)

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 fiables. 

La 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 englobantes et en supprimant celles qui se chevauchent de manière significative avec les boîtes ayant des scores plus élevés. 

Fig 5. Exemple de suppression non maximale. (source : towardsdatascience.com)

Voici une explication détaillée des étapes de la NMS :

  • 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 Union, IoU) avec celle-ci sont supprimées.
  • Itération : Ce processus se répète pour la boîte suivante avec le score le plus élevé et se poursuit jusqu'à ce que toutes les boîtes 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 avec un CNN, en classifiant les objets et en affinant leurs positions avec la régression de la boîte englobante, et en utilisant la suppression non maximale (NMS) en ne conservant 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 phare dans l'histoire de la détection d'objets car il a introduit une nouvelle approche qui a considérablement amélioré la précision et les performances. Avant R-CNN, les modèles de détection d'objets avaient du mal à équilibrer vitesse et précision. La méthode de R-CNN, qui consiste à générer des propositions de régions et à utiliser des CNN pour l'extraction de caractéristiques, permet une localisation et une identification précises des 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 avec 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 concrètes.

Transformer l'imagerie médicale avec R-CNN

Un cas d'utilisation intéressant de R-CNN est dans l'imagerie médicale. Les modèles R-CNN ont été utilisés pour détecter et classer différents types de tumeurs, telles que les tumeurs cérébrales, dans des examens médicaux tels que les IRM et les tomodensitométries. L'utilisation du modèle R-CNN dans l'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 même les tumeurs 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 de tumeurs cérébrales à l'aide de RCNN.

Le modèle R-CNN peut être appliqué à d'autres tâches d'imagerie médicale en plus de la détection de tumeurs. Par exemple, il peut identifier les fractures, détecter les maladies rétiniennes dans les scans oculaires et analyser les images pulmonaires pour des affections comme la pneumonie et la COVID-19. Quel que soit le problème médical, la détection précoce peut conduire à de meilleurs résultats pour les patients. En appliquant la précision de R-CNN dans 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. Avec la rationalisation du processus de diagnostic par la détection d'objets, les patients peuvent bénéficier de plans de traitement rapides et précis.

Les limites de R-CNN et ses successeurs

Bien qu'impressionnant, R-CNN présente certains inconvénients, comme une complexité de calcul élevée 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égion et des classifications en étapes distinctes peut entraîner une performance moins efficace.

Au fil des ans, divers modèles de détection d'objets ont été mis au point pour répondre à ces préoccupations. Fast R-CNN combine les propositions de régions et l'extraction de caractéristiques CNN en une seule étape, ce qui accélère le processus. Faster R-CNN introduit un réseau de proposition 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 de R-CNN, fast R-CNN, faster R-CNN et mask R-CNN.

À peu près au même moment 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 englobantes et les probabilités de classe en un seul passage dans le réseau. Par exemple, Ultralytics YOLOv8 offre une précision et une vitesse améliorées avec des fonctionnalités avancées pour de nombreuses tâches de vision par ordinateur.

Principaux points à retenir

RCNN a changé la donne dans le domaine de la vision par ordinateur, en montrant comment l'apprentissage profond peut transformer 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 ont été mis au point pour corriger les défauts de RCNN, sa contribution est une étape importante qu'il est important de retenir.

À mesure que la recherche se poursuit, nous verrons des modèles de détection d'objets encore meilleurs et plus rapides. Ces avancées amélioreront non seulement la façon dont les machines comprennent le monde, mais conduiront également à des progrès dans de nombreuses industries. L'avenir de la détection d'objets s'annonce passionnant !

Vous souhaitez continuer à explorer le domaine de l'IA ? Rejoignez la communauté Ultralytics ! Explorez notre dépôt GitHub pour découvrir nos dernières innovations en matière d'intelligence artificielle. Consultez nos solutions d'IA couvrant divers secteurs tels que l'agriculture et la fabrication. Rejoignez-nous pour apprendre et progresser !

Construisons ensemble l'avenir
de l'IA !

Commencez votre parcours avec l'avenir de l'apprentissage automatique

Démarrer gratuitement
Lien copié dans le presse-papiers