Accéder au contenu principal

Voir comme une machine : guide du débutant sur l’analyse d’images en apprentissage automatique

Découvrez comment les ordinateurs « voient » et interprètent les images, les techniques de manipulation d’images, et comment l’apprentissage automatique a changé la donne.
Actualisé 19 sept. 2026  · 15 min lire

Explorer avec l’IA

ChatGPTClaudePerplexity

Les photos et les vidéos sont partout. En tant qu’humains, nous nous appuyons sur la vision pour une multitude de tâches : conduire, reconnaître nos proches, poser des diagnostics. À mesure que les ordinateurs s’immiscent dans nos activités quotidiennes, il devient crucial qu’ils sachent, eux aussi, exploiter les images. L’analyse d’images est le moyen par lequel les ordinateurs peuvent « voir » et comprendre une image. Lorsque cette analyse est propulsée par l’apprentissage automatique, on parle de vision par ordinateur.

Ce tutoriel vous expliquera comment les ordinateurs « voient » les images, abordera les bases de la manipulation d’images et, enfin, montrera comment l’apprentissage automatique et l’IA générative s’appliquent aux images. Commençons !

Si vous souhaitez en savoir plus sur la classification d’images, découvrez notre code-along sur Image Classification with Hugging Face

Qu’est-ce que la vision par ordinateur ?

La vision par ordinateur est un domaine de l’intelligence artificielle qui permet aux ordinateurs et aux systèmes d’extraire des informations pertinentes à partir d’images, de vidéos et d’autres contenus visuels numériques. C’est la science et la technologie des machines qui savent voir. En tant que discipline scientifique, la vision par ordinateur vise à appliquer ses théories et ses modèles à la conception de systèmes de vision.

Au cœur du sujet, la vision par ordinateur consiste à interpréter des données visuelles. Elle englobe l’acquisition, le traitement, l’analyse et la compréhension d’images numériques afin d’extraire des données de haute dimension du monde réel pour produire des informations numériques ou symboliques exploitables par une machine. Elle mobilise des méthodes et techniques issues de nombreuses disciplines, comme la physique, les mathématiques, le génie électrique et l’informatique.

Introduction à l’analyse d’images

Au niveau le plus bas, les ordinateurs fonctionnent avec des 1 et des 0. Avec les images, c’est pareil. Un ordinateur peut représenter une image comme une matrice de 1 et de 0. Lorsqu’il affiche une image, il affiche une grille de pixels, chacun rempli d’une couleur. Prenons une forme très simple, comme le triangle noir ci-dessous.

Figure 2 : Triangle noir avec chaque pixel délimité.

Figure 1 : Un triangle simple, basse résolution, composé de 28 pixels.

Cette forme est constituée de 28 pixels : 16 pixels noirs et 12 pixels blancs. Vous pouvez voir le contour de chaque pixel sur l’image ci-dessous.

Figure 2 : Triangle noir avec chaque pixel délimité.

Mais cette image n’est que la représentation de la matrice de nombres stockée par l’ordinateur.

Figure 3 : Illustration des 1 et des 0 dans la matrice qui compose l’image du triangle.

Figure 3 : Illustration des 1 et des 0 dans la matrice qui compose l’image du triangle.

C’est assez simple pour des images à deux couleurs seulement : noir et blanc. Si votre image est en niveaux de gris, il faut davantage de nuance. Vous obtiendrez alors des nombres comme 0,015 dans les cases. Ce nombre indique à l’ordinateur quelle luminance attribuer à chaque pixel à l’écran. Il définit une valeur entre le noir (1) et le blanc (0).

Analyser des images en couleur

Mais les images sont rarement aussi ternes. Que font les ordinateurs avec des images colorées ? Passons notre triangle au vert !

Figure 4 : Le même triangle de 28 pixels qu’auparavant, avec une touche de couleur !

Figure 4 : Le même triangle de 28 pixels qu’auparavant, avec une touche de couleur !

Dans ce cas, on ne peut pas décrire cette couleur par un nombre entre zéro et un. Il existe trop de couleurs pour leur attribuer pratiquement un seul nombre de manière intuitive.

À la place, plusieurs systèmes ont été développés pour décomposer les composantes d’une couleur et attribuer des nombres à chacune.

Par exemple, vous avez peut-être entendu parler du RVB (RGB). Ce modèle de couleur décompose chaque teinte en quantités de rouge, de vert et de bleu qui, combinées, produisent la couleur souhaitée.

Le modèle RVB découle de l’usage d’écrans composés de pixels rouges, verts et bleus, comme les téléviseurs. Il permet le mélange additif des couleurs émis par la lumière de ces dispositifs.

Dans ce système, le rouge, le vert et le bleu sont appelés « canaux ». Pour une image sur 8 bits, chaque canal reçoit une valeur entre 0 et 255 (valeur maximale d’un nombre binaire à 8 chiffres).

Voyons ce que cela signifie pour notre simple triangle vert.

Les valeurs RVB de cette nuance de vert sont respectivement 154, 205 et 50. Notez que s’il s’agissait d’un vert pur, les canaux rouge et bleu vaudraient chacun 0. Cette représentation RVB montre qu’il y a pas mal de rouge et un peu de bleu mêlés au vert pour créer cette teinte. Chaque pixel comporte trois canaux de valeurs qui le décrivent. Chaque pixel vert est représenté par 154, 205, 50, et chaque pixel blanc par 0, 0, 0.

Cela signifie que ce simple triangle vert de 28 pixels est représenté par trois matrices de 7 x 4.

Vous pouvez imaginer ces trois matrices empilées les unes sur les autres pour créer cette image.

Figure 5

Figure 5 : Pour ce simple triangle vert, chaque canal de couleur du système RVB contient une matrice de valeurs de pixels représentant l’image. Combinées, ces trois matrices s’empilent pour former cette image !

On voit ainsi comment les images peuvent rapidement occuper beaucoup d’espace mémoire si chaque pixel nécessite trois nombres pour être défini. Prenez un instant pour imaginer combien de nombres composent une image haute résolution, par exemple une image 4K (4 000 pixels).

Le RVB n’est pas le seul système d’attribution des couleurs aux images. Vous avez peut-être entendu parler du CMJN (CYMK), qui utilise quatre nombres pour décrire chaque couleur. Ce modèle s’appuie sur quatre encres : cyan, magenta, jaune et noir. Il est utile lorsqu’un modèle soustractif de la couleur est nécessaire, par exemple en impression.

Chaque système de couleur présente des avantages et des inconvénients, et il peut être pertinent d’en étudier plusieurs si vous rencontrez des problèmes de mémoire lors de l’analyse d’images. Pour ce tutoriel, nous resterons sur le RVB.

Alors, que peut-on faire avec ces matrices de valeurs de pixels ?

Techniques manuelles d’analyse d’images

Isoler des objets avec le seuillage

Comment un ordinateur détermine-t-il quels pixels représentent un visage ou tout autre objet ? Aujourd’hui, une grande partie de cette identification est effectuée par des modèles d’apprentissage automatique. Mais pour les comprendre, il est utile de savoir d’abord comment isoler manuellement une forme dans une image.

Imaginez que vous avez une vidéo de deux lézards sur un fond clair. Par simplicité, vous passez la vidéo en niveaux de gris, de sorte qu’il n’y ait plus qu’un seul canal à considérer. Vous souhaitez suivre le déplacement des lézards dans la vidéo.

Une vidéo n’est qu’une série de photos (ou images) mises bout à bout. La première chose à faire est donc de « dépiler » cette série et de traiter chaque photo séparément. Maintenant que vous avez une image en niveaux de gris, vous devez indiquer à l’ordinateur quelle partie représente un lézard et quelle partie n’en est pas un.

Théoriquement, vous pourriez utiliser votre souris pour pointer chaque pixel constituant le lézard et le marquer « lézard ». Mais compte tenu de la résolution des photos et du nombre d’images composant la vidéo, c’est irréaliste.

À la place, vous pouvez définir une règle qui dit à l’ordinateur ce qui fait partie du lézard et ce qui n’en fait pas. Le moyen le plus simple d’y parvenir est le seuillage.

Figure 6 : Pour simplifier, nous travaillerons avec cette photo en niveaux de gris.

Figure 6 : Pour simplifier, nous travaillerons avec cette photo en niveaux de gris.

Qu’est-ce que le seuillage ?

Le seuillage consiste à segmenter une image en fonction de la valeur numérique attribuée à chaque pixel. Regardez à nouveau l’image en niveaux de gris des lézards. Remarquez que les lézards paraissent plus sombres que le fond. Dans de nombreuses images, il existe une différence de luminance entre l’objet à isoler et son arrière-plan.

Le seuillage vise à trouver le contour de l’objet, ici les lézards, en exploitant cette différence de luminance. Il s’agit de définir une valeur seuil qui sépare les pixels clairs et foncés.

Créer une image binaire

Imaginez la matrice de nombres qui définit cette image en niveaux de gris. Chaque pixel est défini par un nombre entre 0 et 255.

Avec le seuillage, vous pouvez définir une règle selon laquelle tout ce qui est suffisamment sombre est un lézard. Par exemple, vous pourriez dire que tout pixel ayant une valeur de 130 ou plus est un lézard, et que tout ce qui est en dessous de 130 n’en est pas un.

Techniquement, vous mettriez à 255 tout ce qui est égal ou supérieur au seuil, et à 0 tout le reste. On obtient ainsi une image binaire avec des pixels noirs et blancs. Si vous avez choisi une bonne valeur de seuil, les lézards apparaîtront en noir sur un fond blanc.

Figure 7 : Image binaire générée avec un seuil de 130.

Figure 7 : Image binaire générée avec un seuil de 130.

Dans cet exemple, nous avons choisi arbitrairement 130 comme seuil. Toutefois, pour isoler correctement nos lézards, il faudrait sélectionner une valeur qui capture la grande majorité des lézards tout en minimisant les pixels qui n’en font pas partie.

Ce procédé, qui consiste à choisir une valeur de seuil unique pour toute l’image, s’appelle le seuillage global. C’est une méthode rudimentaire et souvent imparfaite. Si vous avez un lézard parfaitement silhouetté sur un fond parfaitement blanc, le seuillage global fonctionnera à merveille. Mais comme vous le voyez ici, les images réelles sont rarement aussi simples. Il vous faudra probablement une méthode de seuillage plus élaborée.

L’une d’elles s’appelle le seuillage local. Elle consiste à choisir des valeurs de seuil différentes selon les zones de l’image. C’est particulièrement utile en présence d’un dégradé de lumière en arrière-plan. Il existe bien d’autres méthodes d’optimisation, plus ou moins complexes, et le choix dépendra de votre contexte.

Il est également possible d’appliquer un seuillage aux images en couleur. C’est bien plus complexe et dépasse le cadre de ce tutoriel.

Analyse morphologique

Si le seuillage permet déjà d’isoler largement ces lézards, ce n’est pas parfait. Vous pouvez encore obtenir des zones de fond identifiées comme des lézards ou des parties manquantes sur les lézards. Il vous faut un autre outil pour affiner l’isolation. Avec le seuillage, vous avez défini une règle basée sur la couleur ou la luminance. Vous allez maintenant définir une règle basée sur la forme, à l’aide d’opérations morphologiques.

Définir une forme avec des éléments structurants

Les opérations morphologiques utilisent des éléments structurants pour déterminer les contours des formes. Un élément structurant est une petite matrice d’une forme donnée, généralement un carré, un cercle ou une croix. On peut aussi en faire varier la taille pour obtenir différents effets.

Lors d’une opération morphologique, chaque pixel est comparé à ses voisins à l’intérieur de cette forme. Deux opérations de base permettent de modeler l’objet visé : la dilatation et l’érosion.

Dilatation

En dilatation, si l’un des pixels voisins à l’intérieur des limites de l’élément structurant est sombre (ici, 1), alors le pixel ciblé devient 1 pour s’y conformer.

Imaginez parcourir une grille de nombres avec une loupe carrée. Vous placez un nombre au centre du carré et regardez les autres nombres à l’intérieur. Si l’un d’eux vaut 1, vous étiquetez le nombre du centre comme 1, quelle que soit sa valeur initiale.

Ainsi, la dilatation peut étendre les contours des objets ou combler des trous.

Érosion

L’érosion fonctionne de la même manière que la dilatation, mais avec l’effet inverse. Avec l’érosion, si l’un des voisins d’un pixel vaut 0, ce pixel est redéfini à 0. Cela permet de séparer des objets, de réduire le bruit et d’affiner les contours.

Figure 8

Figure 8 : Exemple visuel de dilatation et d’érosion avec un élément structurant en forme de croix. Ici, l’opération morphologique n’a été réalisée que sur la deuxième ligne de la matrice. Dans une vraie image, elle s’appliquerait à chaque pixel. Même avec cet exemple simple, on voit que l’érosion amincit les bords de la ligne tandis que la dilatation l’épaissit.

Voyons comment la dilatation et l’érosion modifient l’image binaire des lézards.

Figure 9 : Exemple d’érosion et de dilatation appliquées à la photo des lézards. L’élément structurant utilisé ici était un carré 6 x 6.

Combiner dilatation et érosion

La dilatation et l’érosion peuvent être utilisées de façon itérative ou séquentielle pour faire évoluer le rendu final. Il est courant d’utiliser les deux pour mieux définir l’image isolée.

Quand l’érosion est suivie d’une dilatation, les petites aspérités et le bruit sont supprimés et le contour restant est renforcé. Cette technique s’appelle l’ouverture.

Quand la dilatation est suivie d’une érosion, les petits trous et interstices sont comblés et les bords nettoyés. Cette technique s’appelle la fermeture.

Figure 10 : Démonstration des techniques d’ouverture et de fermeture à l’aide d’un élément structurant carré 6 x 6 sur la photo des lézards.

Figure 10 : Démonstration des techniques d’ouverture et de fermeture à l’aide d’un élément structurant carré 6 x 6 sur la photo des lézards.

On voit qu’aucune de ces images n’isole parfaitement nos lézards du fond. Mais à chaque ajustement et itération, vous vous en rapprochez.

À l’itération suivante, vous pourriez demander à l’ordinateur d’ignorer tout ce qui se situe en dehors d’une certaine plage de tailles. Cela éliminerait la plupart des artefacts tout en conservant les lézards. Apprenez à le faire vous-même dans le cours Image Processing in Python sur DataCamp !

Pour chaque image ou série d’images, vous pouvez définir une suite de règles de ce type pour indiquer à l’ordinateur à quoi ressemble votre cible. L’ordinateur peut ensuite utiliser ces informations pour prendre des décisions.

Ces décisions interviennent dans des domaines aussi variés que l’identification de galaxies ou la détection de tissus malades. Mais créer des règles pour chaque image est long et fastidieux. C’est là que l’apprentissage automatique entre en scène.

Apprentissage automatique supervisé pour l’analyse d’images

Entraîner un modèle supervisé

Comme vous l’avez vu, analyser des images à la main peut être exigeant, tant les variables en jeu sont nombreuses. Heureusement, l’apprentissage automatique (ML) peut automatiser ce processus. Pour un tour d’horizon approfondi, consultez Machine Learning Scientist with Python ou Supervised Machine Learning. Ce tutoriel ne couvrira que brièvement les aspects utiles pour comprendre le traitement d’images.

On distingue deux grandes catégories de ML : le ML supervisé et le ML non supervisé.

Avec le ML supervisé, vous fournissez à l’ordinateur un grand nombre d’images préalablement étiquetées. C’est un peu comme apprendre à un bébé à reconnaître les animaux en les lui montrant en disant : « Ceci est un éléphant. » Au bébé de dégager un motif commun entre ce que nous appelons « éléphants » et ce que nous appelons « poissons ».

En apprentissage supervisé, l’ordinateur fait un travail similaire à ce bébé.

Figure 11

Figure 11 : Image générée par DALL·E d’une mère montrant des animaux en jouet pour apprendre à un bébé à quoi ils ressemblent. L’apprentissage supervisé fonctionne de manière analogue : on fournit des exemples avec la bonne réponse.

Annotation et extraction de caractéristiques

Supposons que vous vouliez entraîner un modèle pour identifier des objets dans une image qu’il n’a jamais vue. La première étape consiste à annoter et étiqueter un ensemble d’images, appelé jeu de données d’entraînement. L’annotation implique d’identifier et de marquer manuellement les régions d’intérêt dans une image.

Par exemple, si nous voulons entraîner un modèle à classer différents types d’animaux, nous annoterons chaque image en délimitant les animaux présents et en leur attribuant l’étiquette de classe correspondante, « vache », « chat », etc. Ce jeu de données annoté devient la base de l’entraînement. Il existe aussi de nombreux jeux de données déjà étiquetés et publics avec lesquels vous pouvez travailler.

Une fois le jeu de données annoté en main, il faut extraire des caractéristiques pertinentes des images. L’extraction de caractéristiques consiste à identifier et capturer des éléments importants ou des motifs qui distinguent une classe d’une autre.

Dans notre exemple, une caractéristique saillante des vaches pourrait être d’avoir quatre pattes et des taches.

Réseaux de neurones convolutifs

Il existe diverses techniques pour l’extraction de caractéristiques en traitement d’images, allant de méthodes simples comme les histogrammes de couleurs et descripteurs de texture à des approches plus avancées comme les réseaux de neurones convolutifs (CNN).

Les CNN sont un algorithme supervisé populaire qui apprend automatiquement, pendant l’entraînement, les caractéristiques et motifs importants à partir d’images annotées. Ils sont composés de couches, chacune réalisant des opérations spécifiques sur les données d’image.

Les couches de convolution appliquent des filtres pour capter des motifs locaux, tandis que les couches de pooling réduisent les dimensions spatiales. Les couches entièrement connectées combinent les informations des couches précédentes. Par ces opérations séquentielles, le réseau extrait et combine des caractéristiques pour produire des prédictions précises sur le contenu de l’image.

Choisir une architecture

L’entraînement d’un modèle supervisé, tel qu’un CNN, comporte plusieurs étapes. D’abord, il faut prétraiter les données pour garantir cohérence et qualité : redimensionner les images, normaliser les valeurs de pixels et augmenter le jeu de données (rotations, symétries, etc.) pour accroître sa diversité.

Ensuite, vous concevez l’architecture du CNN : en pratique, il s’agit du nombre et du type de couches, ainsi que de leur configuration. L’architecture doit trouver un juste équilibre entre complexité et simplicité, afin de capturer l’essentiel sans surapprendre. Il peut être utile de partir d’une architecture éprouvée et de l’ajuster à vos besoins. Vous trouverez une liste d’architectures utiles dans une ressource externe.

Figure 12 : Exemples simples d’architectures de CNN.

Figure 12 : Exemples simples d’architectures de CNN.

Surapprentissage

Le surapprentissage (overfitting) survient lorsque le modèle devient très performant pour étiqueter les images du jeu d’entraînement, mais échoue à bien identifier des images nouvelles.

Cela arrive souvent parce que le modèle a détecté un biais que nous avons introduit par inadvertance dans le jeu d’entraînement et qui ne reflète pas la réalité (par exemple, la plupart des photos de chats avec un arrière-plan bleu). De nombreuses techniques permettent d’éviter que le modèle mémorise les données d’entraînement et, au contraire, l’incitent à apprendre des motifs généralisables.

Entraîner un modèle supervisé

Une fois l’architecture définie, vous initialisez les paramètres du modèle et lancez l’entraînement.

Pendant l’entraînement, le modèle ajuste itérativement ses paramètres via des techniques d’optimisation comme la descente de gradient, afin de minimiser l’écart entre ses prédictions et les étiquettes de référence que vous avez définies.

Ce processus implique le calcul d’une fonction de perte, qui quantifie l’erreur de prédiction du modèle, puis la mise à jour des paramètres en conséquence.

Former un modèle supervisé pour l’analyse d’images est un processus itératif : vous entraînez le modèle sur le jeu annoté, évaluez ses performances sur un jeu de validation et ajustez pour améliorer la précision. Cette boucle se poursuit jusqu’à obtenir des résultats satisfaisants.

Applications des modèles supervisés en analyse d’images

Une fois entraîné sur des images étiquetées, un modèle supervisé peut s’appliquer à de nombreuses tâches d’analyse d’images. Voici quelques applications courantes illustrant leur efficacité.

Classification d’images

La classification d’images consiste à attribuer une étiquette ou une classe à une image en entrée.

Par exemple, un modèle supervisé peut être entraîné à classer des images d’animaux en catégories telles que « poisson », « lézard » ou « coléoptère ».

Figure 13 : Exemple de classification d’image. Cette image a été classée comme « Dîner ».

Figure 13 : Exemple de classification d’image. Cette image a été classée « Dinner ».

En apprenant à partir d’un jeu varié d’exemples étiquetés, le modèle peut généraliser et classer correctement de nouvelles images avec un haut niveau de précision. Cette technique s’applique à l’identification de maladies sur des images médicales, à la reconnaissance d’objets sur des images satellites ou encore à la classification d’émotions à partir d’expressions faciales. Consultez ce webinaire DataCamp pour en savoir plus.

Détection d’objets

La détection d’objets est une autre application clé. Contrairement à la classification, elle vise non seulement à identifier les objets présents dans une image, mais aussi à les localiser en traçant des boîtes englobantes autour d’eux.

Ce procédé permet d’identifier plusieurs objets d’intérêt au sein d’une même image.

Figure 14 : Exemple de détection d’objets. Divers objets dans cette image ont été identifiés.

Figure 14 : Exemple de détection d’objets. Divers objets dans cette image ont été identifiés.

Parmi les applications : la conduite autonome (détection et suivi de piétons, véhicules et panneaux), les systèmes de surveillance pour identifier et suivre des individus ou des objets d’intérêt. Facebook et Instagram utilisent aussi cette méthode pour repérer votre visage sur des photos.

Défis des modèles supervisés

Malgré des capacités impressionnantes, les modèles supervisés présentent des limites et des défis.

Un enjeu majeur est le besoin de grandes quantités de données annotées. Le processus d’annotation et d’étiquetage peut être long et coûteux.

Les modèles supervisés sont sensibles aux biais présents dans les données d’entraînement, ce qui peut conduire à des prédictions biaisées ou inéquitables. Adapter les modèles à de nouveaux domaines ou à des catégories inédites peut nécessiter un entraînement complémentaire ou un affinement.

Enfin, interpréter les représentations apprises et les processus décisionnels de modèles complexes comme les CNN peut être difficile, rendant l’explication d’une prédiction particulière plus ardue.

Malgré ces défis, les modèles supervisés continuent de repousser les limites de l’analyse d’images, permettant des avancées remarquables en santé, agriculture et sécurité.

À mesure que la recherche progresse, lever ces obstacles et affiner les modèles ouvrira la voie à des solutions de traitement d’images toujours plus fiables et précises.

Apprentissage automatique non supervisé pour l’analyse d’images

Recourir à l’apprentissage non supervisé

Une alternative à l’apprentissage supervisé est l’apprentissage automatique non supervisé. Contrairement au supervisé, il ne s’appuie pas sur des données étiquetées, mais cherche à découvrir des motifs, structures ou relations cachés dans les données elles-mêmes.

L’objectif du non supervisé en analyse d’images est de mettre au jour des structures et des informations pertinentes à partir de données non étiquetées. En utilisant ces techniques, vous pouvez extraire des informations utiles et mieux comprendre les caractéristiques sous-jacentes des images.

Le non supervisé peut aider à identifier des grappes d’images similaires, à découvrir des motifs ou textures caractéristiques de certaines classes d’images, et à détecter des anomalies ou valeurs aberrantes dans les données.

En quoi le non supervisé diffère

Si l’apprentissage supervisé revient à dire à un bébé ce qu’est une vache ou un poisson, le non supervisé consiste à donner au bébé un tas d’animaux et à le laisser les trier comme il l’entend. Il peut les classer par taille, nombre de pattes, texture ou couleur.

Le résultat peut ressembler à ce que vous obtiendriez en triant par espèce, ou être très différent ! Mais examiner les caractéristiques des groupes obtenus peut malgré tout fournir des informations utiles.

Figure 15 : Image générée par DALL·E d’un bébé triant des jouets animaux dans un contexte d’apprentissage non supervisé.

Figure 15 : Image générée par DALL·E d’un bébé triant des jouets animaux dans un contexte d’apprentissage non supervisé.

Analyse d’images avec des modèles non supervisés

Les modèles non supervisés offrent des possibilités intéressantes en permettant de regrouper des images en catégories sans étiquettes.

Imaginez disposer d’une vaste collection d’images et vouloir les organiser en groupes pertinents. Les modèles non supervisés peuvent analyser les caractéristiques visuelles et les regrouper selon des traits partagés, comme la couleur ou la forme. Cela apporte des insights précieux et simplifie les tâches d’analyse.

Algorithmes de clustering

Les algorithmes de clustering rassemblent des images similaires d’après leurs caractéristiques communes. Un algorithme largement utilisé est le k-means clustering, qui partitionne les données en un nombre prédéterminé de groupes en minimisant itérativement la distance mathématique entre les éléments.

Le clustering hiérarchique est une autre approche qui crée une structure en fusionnant ou scindant récursivement des ensembles selon leur similarité. Ces algorithmes permettent de découvrir des regroupements naturels dans des collections d’images non étiquetées, offrant une vision de la similarité et de la diversité des images.

Segmentation d’images

Le non supervisé est particulièrement utile pour la segmentation d’images, qui consiste à partitionner une image en régions ou objets pertinents.

En appliquant des techniques de clustering ou d’autres méthodes non supervisées, vous pouvez séparer une image en régions distinctes en fonction de la couleur, de la texture ou d’autres caractéristiques.

Cette technique s’avère utile en imagerie médicale pour détecter des tumeurs, en imagerie satellite pour la classification d’occupation des sols, ou en infographie pour extraire avant-plan et arrière-plan.

Reconnaissance de motifs

La reconnaissance de motifs est un autre domaine où le non supervisé excelle.

Les algorithmes non supervisés peuvent apprendre des représentations ou caractéristiques qui capturent les structures sous-jacentes présentes dans les données. En extrayant ces caractéristiques, on peut classer ou regrouper les images selon leurs motifs partagés ou similarités visuelles. Cela rend possibles des tâches comme la recherche d’images ou la synthèse d’images.

Détection d’anomalies

Le non supervisé sert aussi à détecter des anomalies. En apprenant les motifs « normaux » d’un jeu de données, ces algorithmes repèrent des images ou régions qui s’en écartent. C’est particulièrement utile en surveillance, où la détection d’activités inhabituelles ou suspectes aide au monitoring de sécurité.

Défis des modèles non supervisés

L’apprentissage non supervisé a ses propres défis. Le principal est l’interprétation des résultats, faute de vérité terrain ou d’étiquettes pour comparer.

Pour reprendre l’exemple du tri d’animaux, vous pourriez obtenir une catégorie contenant un cheval, un coléoptère et une pieuvre tous bruns, tandis qu’une autre regrouperait un cheval blanc, un lapin et une fleur. Comme vous n’avez pas imposé de critère, vous pouvez aboutir à des groupes peu pertinents.

Il peut être difficile d’évaluer la qualité et la pertinence des clusters ou motifs découverts par le modèle non supervisé.

Atouts des modèles non supervisés

Les modèles non supervisés présentent plusieurs avantages en traitement d’images. Surtout, ils évitent un étiquetage manuel massif, ce qui facilite et réduit le coût du travail sur de grands jeux d’images.

Imaginez trier et étiqueter manuellement chaque image sur Instagram. Les modèles non supervisés éliminent une grande partie de cet effort titanesque.

Ils peuvent également révéler des motifs et structures cachés dans les données, permettant de dégager des insights inédits et de découvrir des relations visuelles qui ne sautent pas aux yeux.

Cette dimension exploratoire ouvre de nouvelles voies d’analyse d’images et peut mener à des avancées dans des domaines comme l’exploration spatiale, la robotique ou la médecine.

 

ML supervisé

ML non supervisé

Tâches

  • Classification d’images
  • Détection d’objets
  • Reconnaissance de motifs
  • Détection d’anomalies

Avantages

  • Résultats plus prévisibles et pertinents
  • Peut fonctionner avec de plus petits jeux de données
  • Moins d’efforts manuels
  • Révèle des motifs cachés et des insights nouveaux

Inconvénients

  • Plus laborieux
  • Sensible aux biais des données d’entraînement
  • Groupes obtenus parfois moins pertinents
  • Résultats susceptibles d’être inattendus

Figure 16 : Comparaison du machine learning supervisé et non supervisé en traitement d’images.

Générer de nouvelles images avec l’IA générative

Une fois qu’un modèle a déterminé quelles caractéristiques définissent différents objets dans les images, il peut utiliser ces informations pour créer de nouvelles images.

DALL·E et Midjourney sont des exemples notables de modèles non supervisés qui s’appuient sur la modélisation générative pour produire des images inédites. En s’entraînant sur des jeux massifs, ces modèles ont appris les composants nécessaires pour créer des images correspondant à certains descripteurs.

Ainsi, si vous demandez à DALL·E de créer l’image d’un panda robot, le modèle fait appel à sa définition interne de ce qui caractérise les robots et les pandas, puis assemble ces éléments pour générer l’image demandée.

Par exemple, il peut déterminer que les robots sont métalliques et contiennent des engrenages, tandis que les pandas sont noirs et blancs. Il utilisera ces informations pour produire un panda robot noir et blanc en métal, avec des engrenages.

Figure 17 : Image générée par DALL·E avec l’invite 'Panda Robot'.

Figure 17 : Image générée par DALL·E avec l’invite "Panda Robot".

Conclusion

Ce tutoriel propose une exploration à haut niveau de l’analyse d’images, pour mieux comprendre son rôle en apprentissage automatique. Vous devriez désormais mieux appréhender la façon dont les ordinateurs « voient » et manipulent les images et avoir une compréhension de base de concepts clés comme le prétraitement, l’extraction de caractéristiques et les algorithmes de classification.

Le traitement d’images occupe une place majeure dans nos vies, des réseaux sociaux à l’imagerie médicale, en passant par l’exploration spatiale et la surveillance. Si vous souhaitez approfondir ce sujet fascinant, consultez Image Processing with Python , Image Processing with Keras in Python, et Deep Learning for Images with PyTorch sur DataCamp.


Amberle McKee's photo
Author
Amberle McKee
LinkedIn

Je suis titulaire d'un doctorat et j'ai 13 ans d'expérience dans le traitement des données dans un environnement de recherche biologique. Je crée des logiciels dans plusieurs langages de programmation, notamment Python, MATLAB et R. Je suis passionné par le partage de mon amour de l'apprentissage avec le monde.

Sujets
Apprentissage automatique