Stable Diffusion est capable de générer plus que de simples images fixes. Avec certains outils intégrés et une extension spéciale, vous pouvez obtenir des vidéos AI très cool sans trop d’efforts. Voici comment générer des images pour un GIF animé ou un fichier vidéo réel avec Stable Diffusion.
La diffusion stable peut-elle générer de la vidéo ?
Bien que les films générés par l’IA n’en soient qu’à leurs débuts, il est techniquement possible de créer des animations simples avec la diffusion stable, que ce soit sous forme de GIF ou de fichier vidéo. Il y a cependant des limites.
Comme img2img permet de générer facilement des variations d’une image particulière, la diffusion stable se prête bien à la création rapide d’un ensemble d’images pour des animations, cycliques en particulier. Pensez aux flammes qui s’élèvent d’un feu, aux roues qui tournent sur une voiture ou à l’eau qui éclabousse une fontaine. Une utilisation pratique pourrait consister à donner une ambiance réaliste à une illustration de jeu de rôle :
Diffusion stable
Vous pouvez même réaliser des vidéos à partir d’images réelles plutôt que synthétiques. Ici, j’ai pris la photo d’une plante que l’on arrose et, en quelques clics, j’ai animé le jet d’eau :
Si vous voulez animer un objet pour qu’il se déplace d’un point A à un point B, c’est une tâche difficile pour la diffusion stable (du moins pour l’instant). Vous passerez probablement beaucoup de temps à modifier les invites et les paramètres, puis à examiner une tonne de résultats pour trouver les meilleures images et les placer dans le bon ordre. À ce stade, vous pouvez tout aussi bien sortir Adobe Illustrator et commencer à animer à la main.
Malgré cela, vous pouvez réaliser des animations simples et sympas avec une configuration de diffusion stable de base et un autre outil de votre choix pour assembler les images dans une animation. Il existe également un projet appelé Deforum qui utilise la diffusion stable pour créer des animations « morphing » très intéressantes. Il produit une vidéo MP4, ce qui ne nécessite aucun outil externe, et vous permet même d’ajouter du son. Nous allons vous montrer les bases de ces deux méthodes.
Animer une image avec Inpaint
À l’aide de l’outil img2img Inpaint, vous pouvez mettre en évidence la partie d’une image que vous souhaitez animer et en générer plusieurs variations. Vous les déposerez ensuite dans un générateur de GIF ou de vidéo et enregistrerez les images sous forme d’animation.
Comment exécuter la diffusion stable localement
Étape 1 : obtenir une image et son invite
Commencez par déposer l’image que vous souhaitez animer dans l’onglet Inpaint de l’outil img2img. Si vous n’en avez pas déjà généré une, prenez le temps d’écrire une bonne invite afin d’obtenir une bonne photo de départ. Vous pouvez également importer une image que vous avez photographiée ou dessinée vous-même.
Si vous importez une image que vous n’avez pas générée avec la Diffusion Stable, vous aurez quand même besoin d’une invite appropriée pour générer des variations, alors cliquez sur « Interroger le CLIP » en haut de la page Img2Img. Cela générera une invite de départ basée sur ce que Stable Diffusion pense que votre image contient. Complétez l’invite en ajoutant tout autre détail important.
Pour notre guide, nous avons généré une image 512×512 d’un robot sous un ciel nocturne que nous voulons animer comme une sorte de time-lapse, avec des étoiles filantes et des galaxies qui passent.
Diffusion stable
Si vous voulez suivre avec précision, vous pouvez le recréer avec l’invite que nous avons utilisée :
un robot se tient dans un champ et regarde le ciel nocturne pendant une pluie de météorites, étoiles filantes, galaxies, cosmos, voie lactée, ultra réaliste, très détaillé, 4k uhd.
Et voici les paramètres que nous avons utilisés :
Checkpoint : Diffusion stable 2.0
Méthode d’échantillonnage : DPM++ SDE
Pas d’échantillonnage : 20
Échelle CFG : 5
Semence : 4177542269
Étape 2 : Masquer les parties à animer avec InPaint
Une fois l’image et l’invite en place, dans l’outil Inpaint, utilisez le pinceau pour masquer (couvrir) chaque partie de l’image que vous souhaitez animer. Laissez à découvert tout ce que vous voulez rendre statique.
Dans notre exemple, nous couvrons la majeure partie du ciel. Nous avons laissé un peu de marge autour du robot car, lors de nos tests, si nous nous approchions trop près, la diffusion stable ajoutait parfois des antennes et d’autres appendices au robot.
Utilisez le pinceau Inpaint pour couvrir chaque partie de l’image que vous souhaitez voir animée.
Étape 3 : générez vos images
Maintenant que vous avez masqué toutes les parties de votre image que vous souhaitez voir bouger, il est temps de générer les images de notre animation. Mais d’abord, vous devez vous assurer que img2img a les bons paramètres. Ces paramètres peuvent prêter à confusion, c’est pourquoi nous allons vous expliquer ce que certains d’entre eux signifient et pourquoi vous pouvez ou non les modifier :
- Mode Masque : Inpaint Masked – Cela permet de s’assurer que tout ce qui est couvert est modifié et non l’inverse. Si, pour une raison quelconque, vous souhaitez modifier la partie non masquée, passez à « Inpaint Not Masked ».
- Contenu masqué : Original – Cela garantit que Stable Diffusion verra et prendra en compte l’image existante lorsqu’elle générera des variations. Sinon, elle considérera le contenu masqué comme une toile vierge ou aléatoire.
- Zone à peindre : Toute l’image – Cela oblige Stable Diffusion à générer une toute nouvelle image pour chaque cadre avant de l’intégrer à l’image originale. Passer à « Only Masked » peut accélérer la génération mais peut aussi donner de moins bons résultats.
- Méthode d’échantillonnage : DPM++ SDE – Il s’agit de la même méthode d’échantillonnage que celle que nous avons utilisée pour générer notre image originale, et nous la conservons pour garantir un aspect cohérent. Si vous ne savez pas quoi utiliser, « Euler a » est un bon choix.
- Nombre de lots : 60 – Il s’agit du nombre d’images que vous souhaitez générer. Vous pouvez en avoir besoin de plus ou de moins selon la vitesse et la longueur de votre séquence d’animation.
- CFG Scale : 5 – L’échelle CFG, dans un sens, détermine la liberté de création de la Diffusion Stable. Plus le chiffre est élevé, plus la Diffusion Stable essaiera de suivre strictement votre demande. Pour l’augmenter et obtenir de bons résultats, il faut avoir une très bonne invite.
- Intensité du débruitage : 0.3 – Probablement le paramètre le plus important pour ce projet, l’échelle de débruitage détermine dans quelle mesure la Diffusion Stable modifiera l’image originale. Vous voulez probablement le garder autour de 0.2 ou 0.3, car trop de changement d’image à image peut ruiner l’animation.
- Seed : -1 – Ceci indique à Stable Diffusion de commencer avec une graine aléatoire. Nous ne recommandons pas de réutiliser la graine de votre image originale, car cela réduit la quantité de variation que vous obtiendrez (si elle existe).
Une fois tous les paramètres en place, cliquez sur « Générer » et laissez Stable Diffusion dessiner vos cadres d’animation pour vous. Vous les trouverez dans le dossier /outputs/img2img-images de votre répertoire Stable Diffusion. Si vous n’aimez pas les résultats, modifiez les paramètres (en commençant probablement par la force du débruitage et les étapes d’échantillonnage) et réessayez.
Comment enregistrer des GIF sur l’iPhone
Étape 4 : Augmentez l’échelle de vos images par lots (facultatif)
Si vous prévoyez de créer une vidéo haute définition, n’oubliez pas de mettre à l’échelle toutes les images nouvellement générées à la résolution que vous souhaitez. Cliquez sur « Send to Extras » pour commencer.
Dans Extras, passez à l’onglet « Batch Process ».
Ajustez l’échelle » Redimensionner » au nombre de fois que vous voulez qu’elle soit redimensionnée (le réglage sur 2 transformera les images 512×512 en images 1024×1024). Vous pouvez également passer de « Scale by » à « Scale to » et définir une résolution spécifique. Réglez également « Upscaler 1 » sur l’upscaler de votre choix. Nous avons obtenu d’assez bons résultats avec R-ESRGAN 4x+, mais n’hésitez pas à expérimenter pour voir lequel gère le mieux vos images.
Cliquez ensuite sur « Generate » et Stable Diffusion vous donnera une version haute résolution de chaque image, enregistrée dans votre dossier /outputs/extras.
Étape 5 : Animer les images dans un GIF ou un créateur de vidéo
Maintenant que vous avez vos images, il est temps de les assembler et de créer votre animation finale. Il existe de nombreux outils pour ce faire, notamment des sites Web gratuits comme Ezgif et flixier, qui sont faciles à utiliser et offrent de nombreuses possibilités de réglage. Cependant, n’oubliez pas que ces sites Web peuvent voir tout ce que vous téléchargez, alors ne leur donnez rien que vous n’aimeriez pas que le monde entier sache.
Bien que ces sites Web soient assez explicites, nous allons vous montrer comment utiliser un outil de retouche photo hors ligne gratuit, GIMP, pour créer un GIF. Si vous souhaitez obtenir un fichier vidéo, utilisez Kdenlive ou un éditeur vidéo similaire. Veillez simplement à modifier les paramètres pour que toutes vos images soient importées sous forme de clips d’une seconde ou moins, en fonction du nombre d’images par seconde souhaité.
Pour commencer, téléchargez GIMP et installez-le sur votre ordinateur si ce n’est pas déjà fait. Lancez-le, puis allez dans Fichier > Ouvrir en tant que calques.
Trouvez où se trouvent les images que vous avez générées et sélectionnez-les toutes en même temps avant de cliquer sur « Ouvrir ». (Maintenez la touche Majuscule enfoncée pour sélectionner rapidement plusieurs fichiers.) GIMP importera toutes vos images comme un calque distinct sur une seule toile. C’est ce que nous voulons car la génération de GIF de GIMP fonctionne en parcourant chaque calque de bas en haut, en traitant chaque calque consécutif comme l’image suivante de l’animation.
C’est maintenant la partie amusante. Pour voir un aperçu de votre GIF, allez dans Filtres > Animation > Lecture.
Appuyez sur la barre d’espacement pour lire et mettre en pause le GIF. Si les images passent trop vite ou trop lentement, ajustez le nombre d’images par seconde en bas de la boîte de dialogue de lecture et cliquez sur le bouton d’actualisation en haut pour recharger l’aperçu avec la nouvelle fréquence d’images.
Lorsque l’animation vous semble satisfaisante, il est temps de générer le fichier GIF. Fermez l’aperçu et cliquez sur Fichier > Exporter sous. Lorsque vous saisissez le nom d’enregistrement du fichier, ajoutez l’extension .gif à la fin pour que GIMP sache que vous voulez un GIF.
Ajoutez » .gif » au nom du fichier lorsque vous l’exportez dans GIMP.
Dans la boîte de dialogue d’exportation GIF qui apparaît, assurez-vous que la case « En tant qu’animation » est cochée. Ajustez également le nombre de millisecondes entre les images si vous souhaitez une fréquence d’images différente. Il y a 1000 millisecondes dans une seconde, donc 100 vous donnera environ 10 FPS. Enfin, cliquez sur « Exporter ».
Boom, vous avez votre GIF animé complet.
Comment envoyer des GIFs sur Messenger ?
Générer une vidéo à l’aide de Deforum
Si vous voulez créer des animations plus intéressantes avec Stable Diffusion, et faire en sorte qu’elle produise des fichiers vidéo au lieu d’un simple paquet d’images avec lesquelles vous pouvez travailler, utilisez Deforum. C’est un projet de synthèse d’image avec une extension disponible pour l’interface web de Stable Diffusion qui vous permet de diriger et de générer des fichiers vidéo MP4, même avec de l’audio. C’est un outil très puissant et complexe avec de nombreux paramètres à expérimenter, y compris les panoramiques et les zooms de la caméra, les invites multiples et l’importation de vidéos.
Pour nos besoins, nous allons simplement vous présenter les bases de la création d’une animation assez simple mais intéressante.
Étape 1 : Installer l’extension Deforum
Pour obtenir l’extension Deforum, ouvrez une invite de commande et changez de répertoire pour atteindre votre dossier stable-diffusion-web-ui. Ensuite, utilisez cette commande git clone pour installer Deforum dans votre dossier extensions.
git clone https://github.com/deforum-art/deforum-for-automatic1111-webui extensions/deforum
Lancez Stable Diffusion web UI comme d’habitude, et ouvrez l’onglet Deforum qui est maintenant dans votre interface.
Astuce : L'extension Deforum est livrée prête avec des valeurs par défaut, vous pouvez donc immédiatement appuyer sur le bouton "Générer" pour créer une vidéo d'un lapin se transformant en chat, puis en noix de coco, puis en durian. Plutôt cool !
Étape 2 : Rédigez vos messages-guides
Vous avez peut-être l’habitude d’écrire des invites individuelles avec Stable Diffusion, mais Deforum vous permet d’écrire plusieurs invites qui sont » planifiées « , ce qui signifie qu’à n’importe quel moment de l’animation que vous choisissez, il passera à la génération d’images en fonction de l’invite suivante dans la planification.
Cliquez sur l’onglet » Prompts » et modifiez les invites existantes comme vous le souhaitez, en conservant la structure des crochets et des onglets. Pour notre exemple, nous allons utiliser cet ensemble d’invites :
{
« 0 » : « un robot se tient sous le ciel nocturne pendant une pluie de météorites, étoiles filantes, galaxies, le cosmos, voie lactée, ultra réaliste, hautement détaillé, 4k uhd »,
« 40 » : « une station spatiale vole dans l’espace pendant une pluie de météorites, ultra réaliste, très détaillé »,
« 80 » : « une supernova explose, couleurs vibrantes, ultra réaliste, très détaillé »
}
Que signifient ces chiffres ? Par défaut, Deforum génère 120 images pour votre animation, et nous divisons cet ensemble d’images en trois parties. 0 signifie la première image, donc elle et toutes les images après elle seront des variations im2img de la première invite. Ensuite, à l’image 40, la Diffusion Stable commencera à faire des variations basées sur notre seconde invite. A la 80ème, elle passe à la troisième. Vous pouvez ajouter autant de changements d’invite que vous le souhaitez et ajuster la limite maximale d’images dans l’onglet Keyframes si nécessaire.
Comment enregistrer un GIF à partir de Twitter ?
Étape 3 : Ajustez les paramètres du déforum
Vous avez probablement déjà remarqué qu’il y a une tonne de paramètres impliqués dans Deforum, mais nous allons en parcourir quelques-uns pour vous aider à démarrer. Tout d’abord, dans l’onglet » Run » (Exécuter), vous trouverez un grand nombre des paramètres habituels de la diffusion stable. Renommez le lot, entrez la graine avec laquelle vous voulez commencer (nous réutilisons celle de notre robot), et changez l’échantillonneur pour celui que vous voulez.
Dans l’onglet « Run », modifiez l’échantillonneur, la graine et le nom du lot selon vos préférences.
Dans l’onglet « Keyframes », vous pouvez ajuster le mouvement de la « caméra » pour l’animation. Elle est réglée par défaut pour zoomer à intervalles, mais nous voulons ajouter un mouvement vertical de « pan », donc nous allons ajouter 0 :(-2), 100 :(4)à l’image « Translation Y ». Cela indique à Deforum de traiter la première image comme étant au pixel -2 sur l’axe Y, puis à l’image 100 de se déplacer au pixel 4. Cela nous donnera un léger panoramique vers le haut à mesure que l’animation progresse.
Entrez des valeurs dans le champ « Translation Y » si vous souhaitez que la vue de l’animation change verticalement.
Dans l’onglet Output, nous allons cocher la case « Make GIF » qui nous donnera un fichier GIF en plus du fichier vidéo MPEG. C’est également ici que vous ajouterez de l’audio avec les paramètres « Add Soundtrack » et « Soundtrack Path », si vous en avez.
Dans l’onglet Output, cochez la case « Make GIF » si vous voulez un fichier GIF.
Étape 4 : générez votre vidéo
Enfin, appuyez sur le gros bouton » Générer « . Comme Deforum crée et assemble de nombreuses images, cela prendra du temps, alors prenez un café en attendant. Une fois le processus terminé, vous trouverez le fichier MPEG, la version GIF, ainsi que chaque image individuelle et une lecture des paramètres que vous avez utilisés sous le nom du lot dans votre répertoire /outputs/img2img-images.
Voici ce que nous avons obtenu :
Ce n’est pas une superproduction d’été, mais c’est quand même assez fascinant ! Consultez le guide de démarrage rapide officiel de Deforum pour découvrir tous les autres boutons et cadrans que vous pouvez régler.
Si vous êtes à la recherche d’autres projets d’IA, apprenez à générer des packs de textures pour Minecraft avec Stable Diffusion ou lancez-vous dans ChatGPT, ainsi que les choses surprenantes que vous pouvez faire avec ChatGPT.