une des technologies Codia AI Design : modèle de segmentation d'images

DEV - 26/02
1. Préface Les articles Codia AI : Façonner la révolution du design et du code de 2024 et Codia...

1. Préface

Les articles Codia AI : Façonner la révolution du design et du code de 2024 et Codia AI : Façonner la révolution du design et du code de 2024 - Partie 2 ont présenté Codia AI. Cet article se concentrera sur la discussion du modèle de segmentation d'images.

La segmentation d'images est une tâche fondamentale en vision par ordinateur, avec des domaines d'application tels que la compréhension de scènes, l'analyse d'images médicales, la perception robotique, la vidéosurveillance, la réalité augmentée et la compression d'images, entre autres. La segmentation d'image est la technologie et le processus permettant de diviser une image en plusieurs régions spécifiques dotées de propriétés uniques et d'extraire des objets d'intérêt. C’est une étape clé du traitement de l’image à l’analyse de l’image. Par rapport à la classification et à la détection d’images, la segmentation est une tâche plus raffinée, car elle nécessite de classer chaque pixel.

La segmentation d'images peut être représentée comme un problème de classification de pixels avec des étiquettes sémantiques (segmentation sémantique) ou comme un problème de segmentation d'objets individuels (segmentation d'instance). La segmentation sémantique implique l'étiquetage au niveau des pixels d'un ensemble de catégories d'objets (telles que les personnes, les voitures, les arbres, le ciel) dans tous les pixels de l'image, en classant simplement chaque pixel de l'image. La segmentation d'instance étend encore la portée de la segmentation sémantique, nécessitant la détection et la délimitation de chaque objet d'intérêt dans l'image (par exemple, la segmentation individuelle), c'est-à-dire la distinction de différents objets. Dans un sens, la segmentation des instances peut être considérée comme une segmentation sémantique plus une détection.

Cet article se concentre sur les techniques d'apprentissage en profondeur, détaillant 19 modèles classiques qui ont atteint SOTA sur les tâches de segmentation d'images, y compris les modèles de segmentation sémantique et de segmentation d'instance.

2. FCN

Le réseau entièrement convolutif (FCN) est une architecture d'apprentissage en profondeur spécialement conçue pour la segmentation d'images. Il a été proposé pour la première fois en 2015 par les chercheurs Jonathan Long, Evan Shelhamer et Trevor Darrell de l'Université de Californie à Berkeley. Contrairement aux réseaux de neurones convolutifs (CNN) traditionnels, les FCN sont conçus pour gérer des images d'entrée de n'importe quelle taille et des cartes de segmentation de sortie de tailles correspondantes, chaque pixel étant classé dans une catégorie.

Les principales caractéristiques des FCN incluent leur composition entièrement de couches convolutives, sans aucune couche entièrement connectée, ce qui leur permet d'accepter des images d'entrée de n'importe quelle taille. Dans les CNN traditionnels, les couches entièrement connectées nécessitent des images d'entrée de taille fixe, car les paramètres des couches entièrement connectées sont liés à la taille d'entrée. Dans les FCN, les couches entièrement connectées sont converties en couches convolutives, permettant des entrées de taille arbitraire et des cartes de caractéristiques de sortie de taille correspondante.

L'architecture de FCN peut être divisée en les parties suivantes :

  1. Couches de convolution et de pooling : FCN utilise une série de couches de convolution et de pooling pour extraire les caractéristiques de l'image. Ces couches peuvent être transférées à partir de réseaux pré-entraînés (tels que VGG16, ResNet, etc.) ou entraînées à partir de zéro.

  2. Conversion de couches entièrement connectées en couches convolutives : les couches entièrement connectées utilisées pour la classification dans les CNN traditionnels sont converties en couches convolutives dans les FCN. Par exemple, les couches entièrement connectées de VGG16 peuvent être converties en couches convolutives avec le même nombre de filtres, permettant ainsi des cartes de caractéristiques de taille arbitraire.

  3. Suréchantillonnage : étant donné que les opérations de convolution et de regroupement réduisent la taille des cartes de caractéristiques, les FCN utilisent le suréchantillonnage (tel que la convolution transposée, également connue sous le nom de déconvolution) pour agrandir les cartes de caractéristiques, les restaurant progressivement à la même résolution que l'image d'entrée.

  4. Ignorer les connexions : pour conserver plus de détails lors du suréchantillonnage, les FCN introduisent des connexions ignorées. Ces connexions combinent des cartes de caractéristiques de différents niveaux (c'est-à-dire des cartes de caractéristiques de différentes résolutions) pour conserver plus de détails dans la carte de segmentation de sortie.

  5. Formation de bout en bout : les FCN peuvent être formés de bout en bout, c'est-à-dire directement à partir des images d'entrée vers les cartes de segmentation de sortie. Cela permet d'optimiser tous les paramètres du réseau grâce à l'algorithme de rétropropagation.

La figure suivante montre un diagramme schématique de la structure FCN utilisée pour la segmentation sémantique :

3. ReSeg

ReSeg est un modèle de segmentation d'images basé sur des réseaux de neurones récurrents (RNN), développés à partir du réseau entièrement convolutif (FCN). La principale caractéristique de ReSeg est l'utilisation de la capacité de traitement de séquence de RNN pour capturer les dépendances à longue portée dans les images, améliorant ainsi la précision de la segmentation.

L'architecture du modèle ReSeg comprend généralement les éléments clés suivants :

  1. Couches convolutives de prétraitement : ces couches sont généralement transférées à partir de modèles CNN pré-entraînés (tels que VGG ou ResNet) pour extraire les caractéristiques de l'image de bas niveau. Cette partie est équivalente aux couches convolutionnelles et de pooling dans FCN.

  2. Couches ReNet : La couche ReNet est le cœur de ReSeg, composé d'une série d'unités RNN. Ces unités RNN traitent les caractéristiques de chaque ligne ou colonne de l'image dans un certain ordre (par exemple, de gauche à droite, de haut en bas). De cette manière, la couche ReNet peut capturer les dépendances spatiales dans l'image. Les couches ReNet utilisent généralement des réseaux d'unités récurrentes fermées (GRU) ou de mémoire à long terme et à court terme (LSTM) comme unités RNN de base.

  3. Suréchantillonnage et saut de connexions : Semblable à FCN, ReSeg utilise également le suréchantillonnage (tel que la convolution transposée) pour restaurer la résolution des cartes de fonctionnalités et combine des fonctionnalités de différents niveaux via des connexions sautées pour conserver plus de détails.

  4. Couche de classification : Enfin, ReSeg utilise une ou plusieurs couches convolutives pour classer les cartes de caractéristiques suréchantillonnées, en attribuant une étiquette de catégorie à chaque pixel.

L'avantage du modèle ReSeg est sa capacité à traiter efficacement les informations contextuelles dans les images, ce qui est très important pour comprendre les objets et leurs relations dans les images. Grâce au mécanisme de traitement récurrent du RNN, ReSeg peut prendre en compte les relations spatiales entre les pixels, ce qui est particulièrement essentiel dans la gestion de tâches complexes de segmentation d'images de scènes.

ReSeg a montré de bonnes performances sur plusieurs ensembles de données de segmentation d'images, en particulier dans les tâches nécessitant la capture de dépendances à longue portée. Cependant, en raison de la nature du traitement séquentiel des RNN, ReSeg peut être confronté à des problèmes d'efficacité informatique lorsqu'il traite des images de grande taille. De plus, la formation des RNN est généralement plus complexe que celle des réseaux convolutifs et nécessite davantage de réglages.

Dans l’ensemble, ReSeg constitue une contribution importante au domaine de la segmentation d’images, démontrant le potentiel des RNN dans le traitement des dépendances spatiales des images. Malgré certains défis, ReSeg a fourni de nouvelles perspectives et méthodes pour des recherches ultérieures. La structure ReSeg est illustrée dans la figure :

4. U-Net

U-Net est un réseau d'apprentissage profond pour la segmentation d'images, proposé par Olaf Ronneberger, Philipp Fischer et Thomas Brox en 2015. Il a été conçu à l'origine pour résoudre les problèmes de segmentation d'images médicales, mais sa structure et ses performances l'ont rendu très populaire dans divers domaines. tâches de segmentation. La conception d'U-Net est particulièrement adaptée à la gestion de cas comportant un nombre limité d'échantillons d'apprentissage.

L'architecture d'U-Net a une forme de « U », composée de deux parties principales : le chemin contractuel et le chemin expansif.

  1. Chemin de contraction : également connu sous ...
    [Courte citation de 8% de l'article original]

Loading...