• Aucun résultat trouvé

Détection des objets

2 .5 Les architectures communes

2.5.2 Détection des objets

Régions avec réseaux de neurones convolutif (R-CNN)

Régions avec réseaux de neurones convolutif (Regions with CNN fea-tures (R−CNN)) [Girshick et al. 2014] est une architecture d’apprentissage profond conçue pour la détection des objets. Cette architecture combine entre les méthodes de proposition des régions (regions proposal) et les CNN.

Figure 2.36 – La représentation des architectures en termes de Top-1 accuracy, profon-deur, nombre d’opérations, et nombre de paramètres [Canziani et al. 2016].

extraction des régions d’intérêt, extraction des caractéristiques, et la clas-sification. Le premier module est basé sur la méthode de recherche sélec-tive (selecsélec-tive search) [Uijlings et al. 2013] qui propose 2000 régions indé-pendantes en entrée. Ensuite, ces régions sont ajustées pour obtenir une dimensionnalité conforme au réseau CNN.

R−CNN exploite le modèle Alexnet [Krizhevsky et al. 2012]

pré-entraîné précédemment sur la base ImageNet, et suivi par un fine-tuning sur la base d’apprentissage cible PASCAL. Le but de ce transfert est d’évi-ter le problème de sur-apprentissage sur les volumes de données limitées de la base PASCAL. Cette étape permet d’extraire 4096 attributs à partir de chaque région. Enfin, ces vecteurs sont fournis à l’algorithme SVM pour la tâche de classification et à l’algorithme bounding-box regressors pour ajuster le cadre de sélection de la région proposée.

Figure 2.37 – La structure de Régions avec réseaux de neurones convolutif (R-CNN) [Girshick et al. 2014].

L’étude expérimentale sur la base d’apprentissage PASCAL VOC a montré que R-CNN a amélioré l’erreur moyenne (MAP) par 30% par rap-port aux résultats obtenus précédemment. Malgré ces performances, R-CNN ne peut pas être exploité dans les applications en temps réel à cause du temps élevé pour le traitement des 2000 régions d’intérêts (47 s/image).

Fast R-CNN

Fast R-CNN [Girshick 2015] est une version optimisée de l’architecture R-CNN [Girshick et al. 2014]. Son but principal est d’accélérer le temps d’apprentissage et de test de R-CNN.

Comme nous l’avons détaillé précédemment, R-CNN effectue la tâche d’extraction des caractéristiques pour chaque région proposée. Cela exige de réaliser 2000 passes dans le réseau CNN, ce qui ralentit le temps de test. Pour résoudre ce problème, Fast R-CNN prend en entrée l’image entière et les cordonnées des régions d’intérêt, donc une seule passe est effectué pour chaque image au lieu de 2000.

La figure 2.38 illustre la structure du réseau Fast R-CNN. Ce réseau passe l’image en entrée au réseau CNN pour générer en sortie des cartes de caractéristiques. Ensuite, les régions proposées sont identifiées dans ces cartes et redimensionnées par la couche RoI-pooling. Les vecteurs en sortie sont passés ensuite aux couches entièrement connectées. Enfin, les sorties sont utilisées pour prédire la classe par le classificateur softmax et pour réajuster le cadre de sélection par le bounding-box regressor.

Figure 2.38 – La structure du réseau Fast R-CNN [Girshick 2015].

Comme R-CNN, Fast R-CNN utilise des modèles pré-entrainés sur la base d’apprentissage ImageNet et la technique de fine-tuning. Afin d’adapter ces modèles sur l’architecture Fast R-CNN, la dernière couche de max-pooling est remplacée par une couche de RoI-pooling et la der-nière couche entièrement connectée et softmax sont remplacées par deux autres couches de type FC. Cette structure montre que l’apprentissage dans un Fast R-CNN est effectué dans une seule étape au lieu de trois étapes séparées (SVM, softmax et l’algorithme de régression). Tous ces facteurs ont permis d’accélérer le temps d’apprentissage et de test de R-CNN et d’améliorer sa performance.

L’étude expérimentale à base du modèle VGG16 sur la base d’ap-prentissage PASCAL VOC 2012 a montré que Fast R-CNN est 9 fois plus rapide que R-CNN en apprentissage et 213 fois en test.

Faster R-CNN

Faster R-CNN [Ren et al. 2015] est une version optimisée du réseau Fast R-CNN. Contrairement aux méthodes expliquées précédemment, cet algorithme élimine la recherche sélective et intègre le processus de sé-lection des régions d’intérêt à l’intérieur du réseau. Cette stratégie auto-matise la tâche de sélection des régions d’intérêt et accélère le temps de traitement.

Premièrement, Faster R-CNN passe l’image en entrée aux couches de convolution pour générer en sortie des cartes de caractéristiques. Ensuite, Region proposal network (RPN) génère les cadres de sélection des régions d’intérêt à partir de ces cartes de caractéristiques (Figure 2.39). Les régions proposées par RPN sont redimensionnées ensuite par la couche de RoI-pooling. Enfin, les vecteurs en sortie sont passés aux couches entièrement connectées pour classifier l’objet et optimiser les cadres de sélection.

Figure 2.39 – le processus d’un Region Proposal Network (RPN) [Ren et al. 2015].

YOLO

You Only Look Once (YOLO) [Redmon et al. 2016] est un réseau de neurones convolutif conçu pour la détection des objets. Contrairement aux méthodes expliquées précédemment, cette architecture traite le problème de détection des objets comme un problème de régression pour prédire en parallèle les classes et les cadres de sélection des objets.

Le processus d’apprentissage et de prédiction à partir de l’image en-tière permet au réseau d’encoder l’information contextuelle, et donc ré-duire le taux des faux positifs. En plus, l’utilisation d’un seul réseau pour la détection a accéléré 1000 fois le traitement par rapport à R-CNN et 100 fois par rapport à Fast R-CNN, où il permet de traiter 25 cadres par se-cond.

La figure 2.40 illustre le processus de détection effectué par YOLO. Premièrement, ce réseau divise l’image en entrée en S×S grilles. Chaque grille prédis B cadres de sélection et les probabilités d’appartenance de l’objet aux différentes classes C. Un cadre de sélection est caractérisé par 5 paramètres : 4 cordonnées (x, y, h, w) et un score de confiance P. Ce

score représente la probabilité d’appartenance d’un objet à ce cadre et sa précision. Pour résumer, chaque image en entrée est associée à une prédiction encodée sous forme d’un tenseur 3D de taille S×S× (5B+C).

Figure 2.40 – Le processus de détection des objets par YOLO [Redmon et al. 2016].

L’architecture de YOLO est inspirée du réseau Inception [Szegedy et al. 2015]. Cette architecture est composée de 24 couches de convolution et 2 couches entièrement connectées. En apprentissage, les 20 premières couches sont initialisées par un prétraitement sur la base d’ap-prentissage ImageNet, tandis que les couches restantes sont initialisées aléatoirement.

Malgré l’efficacité de YOLO et son traitement accéléré par rapport aux systèmes introduits précédemment, ce réseau a quelques inconvénients liés à des contraintes spatiales comme : le nombre des cadres de sélection dans une grille. Cela limite la capacité de YOLO dans la détection des petits objets organisés en groupes. En plus, ce réseau a une erreur de loca-lisation élevée par rapport aux autres systèmes basés sur les régions d’in-térêts. Afin de résoudre ces problèmes, d’autres versions de YOLO ont été proposées : YOLOv2, YOLOv3 [Redmon & Farhadi 2018], et YOLO9000 [Redmon & Farhadi 2017].

Comparison et discussion

Les structures détaillées précédemment ont été évaluées sur les bench-marks de détection d’objets : PASCAL VOC 2007 [Everingham et al. ] et PASCAL VOC 2012. La base d’apprentissage PASCAL Visual Object Clas-sification (PASCAL VOC) est composée de 20 classes, y compris les hu-mains, animaux, véhicules et les objets d’intérieur. Cette base d’apprentis-sage contient environ 10 000 images pour l’apprentisd’apprentis-sage et la validation, et elle a été exploitée dans 8 défis dans la période 2005-2012, où chaque défi avait ses propres spécificités.

Architecture PASCAL VOC 2007 PASCAL VOC 2012

R-CNN 58.5% 53.3%

Fast R-CNN 70% 66%

Faster R-CNN 73.2% 70.4%

YOLO 63.4% 57.9%

Table 2.2 – Comparaison entre les résultats des benchmarks VOC 2007 et VOC 2012 en terme de MAP.

Le tableau 2.2 présente les résultats obtenus sur les benchmarks VOC 2007 et VOC 2012 en terme de AAP. Ces résultats valident l’efficacité de Faster R-CNN par rapport à Fast R-CNN, R-CNN, et YOLO. Tandis que la structure YOLO est la plus adaptée aux applications en temps réel grâce à son traitement rapide par rapport aux autres structures.