• Aucun résultat trouvé

Il est essentiel de disposer d’une large base de données avec des situations différentes pour la performance du modèle d’apprentissage et pour éviter le surapprentissage (over fit-ting). La technique d’augmentation des données (Data augmentation) est souvent utilisée pour améliorer les capacités de généralisation des modèles. Les modifications appliquées sur les données réelles sont aléatoires mais doivent rester réalistes, comme par exemple la rotation, l’ajout d’un bruit gaussien, la suppression de petites régions, l’effet miroir ou le zoom. Nous avons effectué ces modifications sur notre base d’apprentissage. La Figure 7.4 illustre un exemple de ces modifications.

L’idée de cette étape est d’appliquer de 1 à 3 modifications sur la même image. Le nombre et le choix de types de modification est aléatoire afin de diversifier les données existantes et ne pas avoir les mêmes modifications sur toute la base.

7. 2. Méthode SSD

Figure 7.4 – Exemple d’augmentation de données sur l’image d’origine (a) : zoom (b), rotation (c), bruit gaussien (d), effet miroir (e) et suppression de régions (f).

7. 2 Méthode SSD

Les réseaux d’apprentissage profond sont de plus en plus performants pour la classi-fication des images. Ils peuvent même dépasser les capacités humaines dans certains cas complexes [158]. SSD est un algorithme de classification des images et de détection des objets.

SSD, comme le montre la Figure 7.5, est construit autour de deux composants. Le pre-mier composant, appelé réseau de base, est pré-entrainé pour extraire des caractéristiques de classification des images. Deux types de réseau convolutif sont généralement utilisés dans le SSD pour cette classification : le VGG16 [176] ou le ResNet [177]. Dans notre projet, nous avons choisi d’utiliser le VGG16, jusqu’à la couche conv-5. Le deuxième composant est utilisé pour détecter et localiser les objets sur chaque image. Ensuite, une couche de prédiction fusionne des cartes de caractéristiques multi-échelles issues des couches convolutives pour générer des boîtes englobantes associées à des probabilités contenant les objets d’intérêt. Par la suite, une étape de suppression des non-maxima est utilisée pour garder les détections potentiellement correctes.

Nous allons détailler un peu le principe de la détection d’objet. Elle consiste à identifier et à localiser l’objet par une boîte englobante. Trois notions sont utilisées pour détecter cet objet : les cellules, les boîtes englobantes et le rapport hauteur/largeur.

Partie III, Chapitre 7 – Classification de postures des personnes par des méthodes de Deep

Learning

Figure 7.5 – L’architecture globale du réseau SSD.

Figure 7.6 – Carte de référence à faible résolution (à droite), divisée en 4× 4 cellules et carte de référence à moyenne résolution (à gauche), divisée en 8× 8 cellules. Des boîtes englobantes sont ensuite associées à ces cellules (en bleu).

Cellule, appelée également localisation (Cell). Au lieu d’utiliser une fenêtre cou-lissante, SSD divise l’image en utilisant une grille et fait en sorte que chaque cellule de la grille soit responsable de la détection des objets dans cette région de l’image. La taille de la grille est importante pour détecter les objets en fonction de leur échelle (Figure 7.6). Par exemple, nous pouvons utiliser une grille (4× 4) pour détecter les objets à grande échelle ou des grilles plus fines (8× 8) pour objets de plus petite échelle. Au final, chaque cellule de la grille est capable de fournir la position et la forme de l’objet qu’elle contient.

Boîtes englobantes (Anchor box). Á chaque cellule de la grille du SSD est associée plusieurs boîtes englobantes. Ces boîtes sont prédéfinies et chacune d’entre elles est définie

7. 2. Méthode SSD

par une taille et une forme uniques dans une cellule de la grille. SSD utilise une phase d’appariement pendant l’entraînement, pour faire correspondre la boîte englobante avec les boîtes de vérité terrain de chaque objet dans une image. La taille et le nombre des boîtes englobantes sont détaillés dans la prochaine section.

Rapport hauteur/largeur (Aspect ratio). Tous les objets ne sont pas de forme

carrée. Certains sont plus longs et d’autres plus larges, à des degrés divers. L’architecture SSD permet de tenir compte de ces différences dans les rapports d’aspect des boîtes englobantes. Le paramètre "ratio" peut être utilisé pour spécifier les différents rapports d’aspect des boîtes englobantes associées à chaque cellule de la grille.

7. 2.1 Approche

La détection d’objets à partir du réseau SSD se compose de 2 traitements :

— Extraire des cartes de caractéristiques. SSD commence à détecter les objets à partir de la couche Conv4-3 du réseau VGG16. Cette couche génère des cartes de caractéristiques 38× 38. Pour chaque cellule, il y a quatre prédictions d’objets. Chaque prédiction se compose d’une boîte englobante de taille unique, comme le montre la Figure 7.7. Ainsi la couche Conv4-3 fait un total de 5776 (38× 38 × 4) prédictions : quatre prédictions par cellule quelque soit la profondeur des cartes de caractéristiques.

— Appliquer des filtres de convolution pour détecter les objets. Contraire-ment aux autres réseaux de classification, le SSD n’utilise pas le principe de deux étages pour localiser et classer les objets (pas de réseau de proposition des régions RPN). Il calcule à la fois les scores de localisation et de classification à partir des filtres de petites tailles. Après l’extraction des cartes de caractéristiques, chaque carte peut produire un ensemble fixe de prédictions en utilisant un ensemble de filtres convolutifs (Figure 7.5). Pour une carte de caractéristiques de taille m× n avec p canaux, des filtres de convolution de taille (3× 3 × p) sont appliqués soit pour générer un score d’appartenance à une classe, soit pour décaler la boîte à l’emplacement de l’objet.