Vision par ordinateurIA générativeVision par ordinateurIA générative
Vision par ordinateur10 min de lecture

Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

L’IA fait de la magie avec des U-Nets, la diffusion et des vêtements ! C’est aussi parfaitement correct si vous n’aimez pas les balados et voulez seulement comprendre le fonctionnement de TryOnDiffusion.

Mis à jour le 24 juin 2023
Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA
Sommaire

Regardez la vidéo !

Avez-vous déjà rêvé d’essayer des vêtements même lorsque vous magasinez sur Amazon ?

Cela peut sembler magique, mais l’IA rend cette possibilité de plus en plus réelle. Comme ChatGPT, Midjourney et de nombreux autres outils propulsés par l’IA qui donnent l’impression d’être magiques et réellement intelligents, certaines IA sont entraînées à prendre une photo de vous et à y ajouter n’importe quel vêtement. Il y a quelques années, j’ai présenté VOGUE, une excellente approche de recherche qui était la première à réaliser cette tâche d’essayage virtuel. VOGUE produisait de très bons résultats, mais était loin d’être parfait et fonctionnait surtout avec des vêtements et des personnes vus dans ses données d’entraînement. Il n’était donc pas vraiment utilisable commercialement, puisque vous voulez permettre à n’importe qui de téléverser une photo et de voir comment un t-shirt lui va. Heureusement, de nombreuses entreprises et équipes de recherche, comme Luyang Zhu et ses collaborateurs chez Google Research, continuent de travailler sur cette tâche. Elle est maintenant plus performante que jamais grâce à une nouvelle approche appelée TryOnDiffusion, tout juste publiée à la conférence CVPR 2023.

Exemple visuel tiré de Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

Exemples de résultats de TryOnDiffusion. Image tirée du site Web du projet.

L’essayage virtuel est peut-être l’utilisation commerciale de l’IA générative que nous comprenons le plus facilement, mais il s’agit aussi de l’un des cas d’utilisation les plus difficiles. Il faut comprendre presque parfaitement les lois de la physique et respecter la forme du corps de la personne ainsi que la texture et les caractéristiques du vêtement pour l’afficher avec précision et éviter un remboursement ou un client insatisfait. À quoi sert une telle IA si vous devez tout de même retourner le chandail parce qu’il ne vous va pas et qu’il semblait différent sur le site ? Le résultat doit être presque parfait. TryOnDiffusion n’a pas encore atteint cette perfection, mais c’est l’IA la plus proche d’un essayage virtuel réaliste à ce jour. Comme vous le voyez depuis le début de la vidéo, les résultats sont fantastiques, mais son fonctionnement est encore plus intéressant…

Mais d’abord, si vous aimez le contenu sur l’IA et souhaitez obtenir un peu d’aide pour vous endormir le soir ou avoir quelque chose à écouter pendant vos déplacements, j’aimerais vous recommander mon balado What’s AI avec Louis-François Bouchard. Vous le trouverez sur toutes les plateformes de diffusion, comme Spotify ou Apple Podcasts, et même ici sur YouTube en vous abonnant à la chaîne. Je publie chaque semaine un nouvel épisode avec une personne experte du domaine pour plonger dans sa passion et partager beaucoup de réflexions fascinantes sur l’IA, mais aussi souvent applicables à votre vie et à n’importe quelle industrie. Par exemple, la semaine dernière, j’ai eu la chance de parler à Luis Serrano, mon éducateur en IA préféré sur Internet. Il a partagé des conseils incroyables pour améliorer vos compétences en communication et en enseignement.

C’est aussi parfaitement correct si vous n’aimez pas les balados et voulez seulement comprendre le fonctionnement du modèle TryOnDiffusion. Plongeons dans l’approche !

Exemple visuel tiré de Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

Entrées et première partie de la vue d’ensemble du modèle TryOnDiffusion. Image tirée de la page du projet.

Nous devons d’abord savoir ce que nous avons et ce que nous voulons pour ce problème. Nous avons une photo de nous et un vêtement que nous voulons essayer virtuellement. Nous souhaitons obtenir une photo réaliste et de grande qualité de nous avec ce nouveau vêtement, comme celle-ci.

Que faisons-nous ensuite ? Nous devons entraîner un modèle qui comprend les deux images d’entrée et distingue le vêtement de la personne. Dans notre cas, nous voulons isoler le vêtement et l’ajouter avec précision à la première image. Avant toute chose, nous avons donc besoin d’un modèle de segmentation déjà entraîné, comme le Segment Anything Model de Meta. Nous l’exécutons sur les images de la personne et du vêtement, puis extrayons seulement le vêtement souhaité. Nous le retirons complètement de l’image de la personne pour indiquer ce qui doit être généré, une image dite indépendante du vêtement, et le conservons dans l’image du produit pour la génération, sous la forme d’un vêtement segmenté. Maintenant, comment prendre ce vêtement et l’ajouter à notre nouvelle image qui n’en contient aucun ?

Sans surprise, nous utilisons un modèle U-Net, donc un modèle qui encode une image à une résolution plus faible avant de la reconvertir en une nouvelle image. Ici, il s’agit d’un U-Net basé sur la diffusion, un processus que j’ai présenté dans des vidéos précédentes si vous ne le connaissez pas. En bref, les modèles de diffusion prennent des données et y ajoutent du bruit aléatoire de façon itérative jusqu’à ce qu’elles deviennent extrêmement floues et méconnaissables. Nous entraînons ensuite un modèle à inverser ce processus. Cette méthode est beaucoup plus stable et produit de meilleurs résultats que les GAN, ce qui explique pourquoi vous la voyez partout aujourd’hui. Essentiellement, le modèle prend du bruit, ou des images remplies de pixels aléatoires, et a appris à appliquer davantage de bruit, mais le bon bruit, pour finalement créer une vraie image. Vous pouvez comparer cela à l’apprentissage d’un service au tennis. Vous répétez le mouvement encore et encore, en commençant de façon assez aléatoire jusqu’à ce que la balle atterrisse enfin dans le terrain. Vous continuez ensuite à vous entraîner avec des services qui entrent, tout en ajoutant de la puissance. Le processus semble assez aléatoire, mais repose toujours sur votre essai précédent. Il ne l’est donc pas vraiment à la fin. Ici, le même processus itératif est appliqué aux images. Vous convergeez progressivement vers une image, comme vous convergeriez vers un service parfait à 150 milles à l’heure ! Nous utilisons un U-Net pour encoder l’information dans une représentation plus petite et plus facile à manipuler, où elle peut être combinée avant de reconstruire l’image finale.

Exemple visuel tiré de Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

Vue d’ensemble du Parallel-UNet. Image tirée de la page du projet.

Plus précisément, les chercheurs l’appellent Parallel-UNet, leur principale contribution dans l’article scientifique. C’est ici que la magie se produit. Comme le suggère son nom, il est composé de deux U-Nets. Le premier reçoit à la fois une image initiale bruitée et notre image indépendante du vêtement, puis les encode. Un deuxième U-Net traite seulement le vêtement segmenté. Enfin, nous combinons les deux représentations et ajoutons les poses dans le premier U-Net pour reconstruire l’image finale.

Le modèle prend donc la version encodée de toute l’information sur la personne et le vêtement, puis la combine à l’aide du mécanisme d’attention, que j’ai aussi présenté dans d’autres vidéos. Cette approche apprend à fusionner l’information provenant de plusieurs entrées grâce à un système de pondération intelligent et appris, qui accorde davantage de poids à l’information utile. Elle est particulièrement puissante comparativement à la simple addition ou concaténation des valeurs. Un long processus d’entraînement apprend à l’algorithme à séparer l’information sur la pose de celle sur le vêtement dans chaque image grâce aux quatre versions traitées de nos deux entrées, puis à extraire l’information pertinente et à la combiner de façon réaliste.

Exemple visuel tiré de Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

Vue d’ensemble du modèle TryOnDiffusion. Image tirée de la page du projet.

Mais nous n’avons pas terminé. Même si nous avons obtenu notre résultat final, sa qualité reste plutôt faible en raison de la quantité de calculs nécessaire pour produire une image de meilleure définition. Pour obtenir une belle image finale, nous l’envoyons dans un modèle Parallel-UNet très semblable avec toute l’information traitée déjà fournie au premier modèle, puis recommençons le processus en nous concentrant sur la régénération de la même image avec davantage de pixels. Nous utilisons un modèle semblable, mais lui donnons un autre objectif. Il ne doit pas seulement ajouter des pixels selon le contenu existant, mais aussi extrapoler légèrement à partir des entrées. Il améliore ainsi le résultat comparativement à une simple augmentation de la résolution de notre première tentative d’essayage.

Le résultat est déjà bien meilleur, mais sa qualité reste assez faible. C’est ici que nous utilisons un véritable modèle d’augmentation de résolution, maintenant que notre image de 256 x 256 pixels contient suffisamment de détails. Les chercheurs emploient un autre modèle préentraîné pour produire l’image finale en haute qualité. Il s’agit essentiellement du même type de modèle utilisé par Midjourney, Imagen et les autres IA génératives. J’ai aussi présenté ce genre de modèle de super-résolution par diffusion dans des vidéos précédentes si vous souhaitez comprendre son fonctionnement interne ! Et voilà ! Vous obtenez maintenant une véritable image finale en haute définition avec un nouveau vêtement pour voir s’il vous va bien !

Les résultats ne sont certainement pas parfaits et vous ne devriez pas vous attendre à ce qu’ils fonctionnent chaque fois avec un réalisme impeccable pour chaque vêtement essayé. Ils sont tout de même impressionnants et plus proches de la réalité que toutes les approches précédentes ! Une limite importante vient du fait que, comme nous l’avons vu, l’approche dépend de plusieurs modèles préentraînés, notamment le modèle de segmentation et celui d’augmentation de résolution. Chacun peut considérablement nuire au résultat s’il échoue dans sa propre tâche.

Exemple visuel tiré de Révolutionner le magasinage en ligne : l’essayage virtuel par l’IA

Comparaison qualitative sur des cas difficiles, avec des différences extrêmes de pose et de forme du corps. Image tirée de la page du projet.

Heureusement, comme pour le modèle SAM, ces modèles sont maintenant extrêmement puissants et le fait de les séparer du modèle principal simplifie beaucoup la tâche. Une autre limite vient de l’image indépendante du vêtement générée par l’approche. Elle peut avoir de la difficulté à respecter certaines caractéristiques personnelles de votre corps, comme les tatouages et les muscles, qui pourraient ne pas apparaître correctement et ressembler davantage au corps associé au vêtement. L’ajustement est donc loin d’être parfait, mais les chercheurs ont indiqué qu’ils se concentraient sur la visualisation de l’essayage, qui semble presque parfaite. J’ai vraiment hâte de voir la suite de ces travaux avec un accent sur l’ajustement et les caractéristiques du corps de la personne.

Bien sûr, ce n’était qu’un aperçu de cet excellent nouvel article scientifique. Je vous recommande de le lire pour obtenir plus d’information, mieux comprendre l’approche et voir davantage de résultats. Le lien se trouve dans la description ci-dessous. J’espère que vous avez aimé cette vidéo, et je vous retrouve la prochaine fois avec un autre article scientifique incroyable !


Références

Zhu et al., Google Research, CVPR 2023 : TryOnDiffusion, https://arxiv.org/pdf/2306.08276.pdf

Plus de résultats sur la page du projet et dans la vidéo : https://tryondiffusion.github.io/, https://youtu.be/nMwBVLjRdcc

Discussion

Commentaires

Chargement

Aucun compte requis. Votre nom et votre commentaire seront publics, alors n'incluez pas de renseignements privés. Consultez la page de confidentialité pour les détails.

Continuez à apprendre

Vous voulez le côté pratique de l'IA, sans le brouillard marketing ?

Je partage ce qui est utile sur YouTube, Substack et dans mes guides d'ingénierie IA.

FAQ

Que génère TryOnDiffusion ?

Il crée une image réaliste d’une personne qui porte un vêtement fourni dans une photo de produit distincte.

Que doit comprendre le modèle dans les deux entrées ?

Il doit séparer la personne, la pose, la forme du corps, le vêtement, sa texture et les régions qui doivent rester inchangées.

Pourquoi utiliser la diffusion pour l’essayage virtuel ?

Les modèles de diffusion peuvent synthétiser des textures détaillées tout en conditionnant le résultat sur plusieurs images et contraintes spatiales.

Que doit préserver un bon système d’essayage virtuel ?

Il doit préserver l’identité, la pose, la structure du corps, les détails du vêtement et une interaction plausible entre le tissu et la personne.

L’essayage virtuel peut-il remplacer un véritable essayage ?

Non. Il donne un aperçu de l’apparence, mais ne peut garantir la taille, le confort, la sensation du matériau ou son tombé réel.

Comment le Parallel-UNet combine-t-il les images de la personne et du vêtement ?

Un U-Net encode la personne et l’image sans vêtement, tandis qu’un autre encode le vêtement. L’attention fusionne ensuite l’information utile avant qu’un deuxième passage augmente la résolution.