Dans le domaine de la création d’images par IA, nous avons déjà dit ici tout le bien qu’il fallait penser de l’application DrawThings pour MacOS. Comme nous l’avons vu, il existe aussi une appli iOS de DrawThings, disponible sur l’Apple Store ! En clair : de quoi générer des images sur son téléphone en local, sans aucune connexion internet.
Bien sûr, avec une connexion WiFi ou 5G, je n’avais pas attendu DrawThings pour réaliser des images « en mobilité » à partir de mon téléphone : il suffit de se connecter au site Replicate par exemple. Toutes les images ci-dessous ont ainsi été générées « en chemin ».
- Plat du jour.
- L’homme S !
- Nems P3.
Mais, encore une fois, nous parlons ici de génération en local, sans aucune liaison Internet. Magie ? Sans doute ! Et puis j’ai réalisé qu’en fait, en lieu et place d’un banal téléphone, j’avais dans la poche un véritable ordinateur 100 000 fois plus puissant que celui qui avait permis l’alunissage d’Apollo 11 en 1969 ! On trouvera à la fin de l’article la comparaison des puissances considérées.
Publier sur WordPress
Je me suis alors pris au jeu et j’ai décidé de composer cette publication entièrement en « mobile » !
Tout l’enjeu consiste à rédiger et publier un nouveau post sur mon blog WordPress en utilisant uniquement mon téléphone et sa connexion 5G. Soit, comme les d’jeuns, en tapant frénétiquement avec les deux pouces en s’aidant des suggestions de mots automatiques, soit en dictant tout simplement le texte grâce au micro et à l’IA embarquée. Premier usage de l’IA !
- L’interface d’administration du blog depuis n’importe quel navigateur web.
- Nouvel article !
- Micro !
- La voix de son maître…
Quoi choisir comme thème de ce nouvel article ? Pourquoi pas les fonctions « Image to Image » (déjà abordées ici) et les nouveaux « Control Net » Moodboarding pour générer de nouvelles images sur mon téléphone à coup de précautionneux « pic pic » ?
Copier l’écran
Afin que vous y compreniez quelque-chose, il est nécessaire que je vous partage l’écran de mon iPhone au cours des processus. Rien de plus simple ! 🙂
Pour faire des copies d’écran, sur iPhone, il suffit d’appuyer simultanément sur le bouton de mise en route (droite) et le bouton du volume « up » (gauche) : on récupère alors dans l’appli « photo » une copie de l’écran. Sur les autres modèles de téléphones, appuyez en plus avec le nez sur le bouton reset (2eme feu à droite) tout en sautant sur un pied… (RTFM – Read The Fucking Manual de votre téléphone 🙂 )
Quant à l’appli « photo », en standard sur les iPhones, elle se comporte comme un outil à tout faire, quand on cherche un peu, à la manière « de « Aperçu » sur MacOS : il est possible de recadrer les images, d’y ajouter du texte, du surlignage, des cadres colorés et toutes sortes de bizarreries. Au prix de patinage sur l’écran avec les doigts (enfin LE doigt, tremblant). Avec tout çà on peut donc tout faire comme le démontre ce billet.
Notons que les photos sont également stockées sur le cloud Apple « iCloud » et disponibles partout sur un ordinateur « de bureau » via l’application photo, justement…
- Recadrage des images.
- Accès au différents menus (crayon en haut puis « + » en bas)…
- Mise en évidence des commandes grâce à des surlignages de toutes sortes…
Traiter les images
Faire des copies d’écran et des photos, c’est bien ; pouvoir les travailler et les améliorer après la prise de vue, c’est mieux ! Heureusement, j’ai dans la poche, comme je l’avais passé en revue dans ces posts précédents, tout ce qu’il faut pour traiter les images. J’ai nommé Photo Toaster et Title FX.
De quoi recadrer, filtrer, ajuster les couleurs, le contraste et quantité de paramètres usuels sans oublier l’indispensable insertion de la signature !
- Photo Toaster et Title FX.
- Corrections diverses et variées.
- Préréglages basés sur les précédents.
- Couplé avec Title FX pour placer un copyright.
Réussir ses « image to image »
Il est temps de passer à la génération d’images, sujet ce cet article, avec DrawThings, toujours. Deuxième usage de l’IA dans cet exemple. Au passage, l’icône de l’appli est ignoble : il faut faire quelque chose ! 🙂
Dans un premier temps il faut charger les différents modèles nécessaires dans l’application. Attention : c’est très lourd (plusieurs Go) et il faut que votre iPhone soit pourvu de suffisamment de mémoire. On génère en local, ne l’oubliez pas. Notons que la nouvelle version de DrawThings permet d’utiliser les tous derniers moteurs libres « Flux 1 » et « Stable Diffusion 3.5« …
Mais pour l’instant nous allons travailler avec les premières versions de Stable Diffusion (v.1) que les utilisateurs ont pourvues de nombreuses customisations, en l’occurence le moteur « SDXL Base v1.0« . En LoRA nous installons également « Hyper SDXL 8-step » ce qui permet d’accélérer grandement le processus en seulement 8 étapes.
- Choix du moteur d’IA que nous allons utiliser.
- Le téléchargement prend du temps et de la place. > 1 Go.
- Choix du Lora.
- Trifouillage des « petits réglages » : Taille de l’image, nombre d’étapes de calcul, fidélité au texte du prompt, choix de l’échantillonneur (ici Euler A Trailing).
- Choix de l’image de référence et du « prompt ».
- Réglage clé : la proportion d’influence de la photo de référence avec le texte du prompt ! Ici, image à 90 %.
On notera le « prompt » avec un parti pris « lineart » qui permettra d’obtenir des figures dessinées dans un style « bande dessinée »… Un grand merci au passage à Jennifer qui ne m’en voudra pas trop j’espère d’avoir trituré son portrait en long et en large pour ces essais 😉
Je ne saurais trop vous conseiller de sauvegarder vos réglages. Tout est prévu dans DrawThings pour cela et vous permettre de les réutiliser ultérieurement. Ce qui donne, dans le toujours poétique langage informatique :
a portrait of a nice girl with long dark brown hair lineartSteps: 8, Sampler: Euler A Trailing, Guidance Scale: 1.2, Seed: 385678939, Size: 1024×1024, Model: sd_xl_base_1.0_q6p_q8p.ckpt, Strength: 0.3, Seed Mode: Scale Alike, Target Size: 1024×1024, Crop: (0, 0), Original Size: 1024×1024, Negative Original Size: 512×512, Aesthetic Score: 6,0, Negative Aesthetic Score: 2,5, Zero Negative Prompt: false, Tiled Decoding Enabled: 640×640 [128], LoRA Model: hyper_sdxl_8_step_lora_f16.ckpt, LoRA Weight: 1.42
Voici ci-dessous quelques rendus obtenus avec ce procédé, en faisant varier la proportion d’influence entre la photo d’origine et le texte du « prompt » : de moins en moins photo et de plus en plus « dessin »…
En changeant l’intitulé du prompt on peut bien sûr obtenir toutes sortes d’images ressemblant plus ou moins à l’image d’origine. Avec, toujours, beaucoup trop de doigts ! 🙂
Découvrir le mode Moodboard
Encore plus fort : il est possible d’utiliser plusieurs images de référence !
- Charger les photos sur le moodboard et régler leurs influences respectives…
- Régler au mieux les interactions des différents visuels.
On peut ajouter le nombre d’images que l’on veut et régler leur degré de morphing. On obtient de cette façon une chimère, un hybride de plus ou moins bon goût entre ces différentes images ! Encore pardon aux modèles pour ce que je leur ai fait subir…
- Image obtenue précédement.
- Portrait de mon frère Eric, qui n’avait rien demandé !
- Les hybrides, chimères…
- Et autres golmons…
Montée en puissance !
Pour terminer ce billet, je voulais publier une mise en perspective de la puissance de l’iPhone avec celle des premiers ordinateurs. S’imposait un petit détour par Perplexity (troisième usage de l’IA) qui remplace avantageusement Goggle, étant capable de me fournir des photos et des morceaux de textes déjà rédigés…
Considérons les premiers ordinateurs « portables » donc, et pourquoi pas ceux mis au point pour le programme spatial américain ? Celui de l’historique mission d’Apollo 11, connu sous le nom d’Apollo Guidance Computer (AGC)… Il avait une puissance de traitement de 0,043 MHz pour 64 Ko de mémoire (!).
En comparaison, l’iPhone 13 Pro dispose aujourd’hui d’un processeur A15 Bionic avec une vitesse de 3,23 GHz et jusqu’à 1 To de stockage. Cela signifie que mon iPhone 13 Pro est environ 100 000 fois plus puissant en termes de traitement et possède une capacité de stockage des millions de fois supérieure à celle de l’AGC !
L’Apollo Guidance Computer (AGC) n’avait pas de système d’exploitation tel que nous le connaissons aujourd’hui, mais il utilisait un ensemble de programmes intégrés dans une mémoire morte appelée « core rope memory » pour exécuter des tâches spécifiques de navigation et de contrôle. Ces programmes étaient développés au MIT (Mets tes chaussettes Institute of Technology) et permettaient aux astronautes d’interagir avec l’AGC via une interface clavier-écran appelée DSKY.
Les programmes de l’Apollo Guidance Computer (AGC) étaient écrits en langage assembleur (c’est coton, croyez-moi : du pur langage machine…) spécifique à l’AGC. Ce langage était conçu pour s’exécuter sur l’architecture unique de cet ordinateur, qui diffère considérablement, rappelons- le des architectures modernes.
Les principaux développeurs du logiciel incluaient Margaret Hamilton, qui a dirigé la division de l’ingénierie logicielle au MIT Instrumentation Laboratory. Elle était responsable du développement du logiciel de vol embarqué pour le programme Apollo.
Margaret Hamilton est une pionnière de l’informatique qui a joué un rôle crucial dans le développement du logiciel de guidage pour le programme Apollo. Son travail a été essentiel pour le succès de la mission Apollo 11, notamment grâce à son système de priorisation des tâches qui a permis de gérer les urgences pendant l’alunissage. Le logiciel était conçu en utilisant des exécutions asynchrones de telle manière que les tâches ayant la plus haute priorité (essentielles à l’alunissage) puissent interrompre des tâches moins prioritaires.
On se souvient tous de la défaillance de cet ordinateur au moment clé de l’alunissage ! L’analyse de l’incident effectuée après la mission l’avait attribué à une erreur de l’équipage qui aurait laissé le radar fonctionner dans cette phase de vol saturant les capacités de calcul limitées de l’AGC. Une nouvelle analyse réalisée en 2005 a conclu qu’il s’agissait en fait d’une erreur dans la conception matérielle du radar. Celui-ci continuait à envoyer des informations à l’ordinateur alors qu’il avait été mis en veille par l’équipage.
« Suite à une erreur dans le manuel décrivant la checklist, le bouton d’arrêt du radar de rendez-vous a été placé dans la mauvaise position. Ce qui a provoqué l’envoi de mauvais signaux à l’ordinateur. Il était ainsi demandé à l’ordinateur de réaliser toutes les tâches liées à l’atterrissage tout en recevant une charge supplémentaire qui utilisait plus de 15 % du temps de traitement. L’ordinateur (ou plutôt son logiciel) a été assez intelligent pour reconnaître qu’on lui demandait d’effectuer plus de tâches qu’il ne devait en accomplir. Il a lancé une alarme qui indiquait aux astronautes « J’ai trop de tâches à effectuer par rapport à ce que je suis en mesure de réaliser et je vais continuer en n’effectuant que les tâches les plus importantes », c’est-à-dire celles associées à l’alunissage. En fait, l’ordinateur était programmé pour faire mieux que simplement identifier une situation d’erreur. Des programmes de récupération avaient été incorporés dans le logiciel qui permettaient d’éliminer les tâches ayant les priorités plus faibles et d’exécuter les plus importantes. Si l’ordinateur n’avait pas reconnu le problème et entrepris ces actions de récupérations, je doute qu’Apollo 11 aurait réussi sa mission comme il l’a fait. »
Margaret Hamilton, 1 mars 1971
Notons que ce fameux software pour l’AGC est toujours disponible aujourd’hui en tant que logiciel libre sur le site de la NASA. Preuve de plus de la véracité des faits : ces millions de lignes de codes seraient un peu lourdes pour un simple alunissage en studio… 😉







































0 commentaires