Na AI-systemen die tekst kunnen genereren, hebben we sinds kort ook AI-systemen die plaatjes kunnen genereren op basis van een omschrijving. Met OpenAI’s DALL-E 2 of de opensource-alternatieven Stable Diffusion en Craiyon hoef je maar te beschrijven wat je wilt zien, en je krijgt het resultaat getoond.
Koen Vervloesem
Het Amerikaanse onderzoekslaboratorium OpenAI demonstreerde in 2020 een neuraal netwerk dat tekst kon schrijven die bijna menselijk lijkt: GPT-3. In 2021 kwam het laboratorium met een variant die plaatjes genereert: DALL-E. En in 2022 kwam al een opvolger, DALL-E 2, dat realistischere plaatjes in hogere resoluties creëert. De resultaten zijn vaak verrassend bruikbaar.
Hoe werkt DALL-E? Het is een neuraal netwerk gebaseerd op GPT-3, dat getraind is op paren van plaatjes en hun bijbehorende beschrijving op internet. Als je dan een beschrijving aan het getrainde model voert, zal het op basis van gelijkaardige beschrijvingen die het kent gelijkaardige plaatjes creëren.
Een omschrijving van een plaatje komt meestal niet overeen met maar één exact plaatje. Eén omschrijving kan op talloze manieren visueel ingevuld worden. En dat doet DALL-E dan ook: het geeft meerdere resultaten in allerlei stijlen, vanuit allerlei gezichtspunten en soms ook met heel verschillende veronderstellingen.
Een ‘photorealistic painting of a girl with red hair and blue eyes’ volgens DALL-E 2 |
Zelf uitproberen
DALL-E 2 was eerst in bètafase waarvoor je je op een wachtlijst moest zetten, maar sinds september 2022 werd het voor iedereen geopend. Je maakt een gratis account aan op https://labs.openai.com/auth/signup maar je bent verplicht om een e-mailadres en telefoonnummer op te geven om je account te verifiëren.
Je krijgt 50 gratis credits tijdens de eerste maand, en daarna krijg je elke maand weer 15 gratis credits. Elke keer dat je een aanvraag voor een afbeelding doet, wordt een credit gebruikt en krijg je vier plaatjes. Als je een plaatje uploadt en daarvan een aanpassing of variatie vraagt, krijg je drie resultaten voor een credit.
Je kunt ook credits bijkopen, voor 0,016 US-dollar per afbeelding van 256 bij 256 pixels tot 0,020 US-dollar per afbeelding van 1024 bij 1024 pixels. Je kunt op deze manier ook plaatjes genereren in je eigen software (Python of Node.js) met gebruik van de API (https://beta.openai.com/docs/guides/images/introduction).
Opensource-alternatieven
Al snel ontstonden er ook opensource-alternatieven voor DALL-E 2, omdat OpenAI de data en code voor zijn model niet vrijgaf. Zo kwam er DALL-E Mini, dat na een klacht van OpenAI om de misleidende naam hernoemd werd naar Craiyon (https://www.craiyon.com). Je kunt op de website gratis plaatjes genereren, maar dit kan wel tot twee minuten duren. Craiyon is getraind op ongefilterde data van internet. Het is ook mogelijk om Craiyon op je eigen computer te draaien: de broncode vind je op https://github.com/borisdayma/dalle-mini.
Een ander opensource-alternatief is Stable Diffusion (https://stablediffusionweb.com), dat ook op de website gratis te proberen is. Het genereren gebeurt vrij snel, doorgaans in minder dan tien seconden. Stable Diffusion is getraind op twee miljard paren van omschrijvingen en plaatjes uit de open-dataset LAION 5B (https://laion.ai/blog/laion-5b/). Je kunt de software ook op je eigen computer draaien: de broncode vind je op https://github.com/CompVis/stable-diffusion. Je hebt wel 10 GB opslag nodig en een grafische kaart met 10 GB VRAM. Er is ook een gebruiksvriendelijkere versie van Stable Diffusion om op je eigen computer te draaien, Invoke AI (https://github.com/invoke-ai/InvokeAI).
‘The Terminator in van Gogh style’, |
Algemene tips
Hoe algemener de omschrijving die je geeft, hoe meer vrijheid het AI-systeem heeft om plaatjes te genereren, maar dan krijg je misschien niet de resultaten die je verwacht. De resultaten zijn meestal dan ook beter als je je omschrijving zo specifiek mogelijk maakt.
Stable Diffusion creëert in enkele seconden een ‘beautiful sunset |
Vaak helpt het ook om een specifieke stijl of type afbeelding te vragen, zoals ‘illustration’, ‘photorealistic’, ‘high definition’, ‘in Picasso’s style’ enzovoort. Ook eigenschappen zoals ‘studio light’ toevoegen, maken het resultaat vaak mooier.
Deze ‘line drawing of a dragonfly’ van Stable Diffusion is niet slecht, |
Plaatjes aanpassen of variëren
DALL-E 2 heeft nog een ander trucje. Je kunt een bestaande afbeelding uploaden of een door DALL E-2 gegenereerde afbeelding openen en vragen om het te bewerken. Wis dan een stuk in de afbeelding en beschrijf hoe je dit stuk wil wijzigen. Wis bijvoorbeeld een deel van de neus van een portret en beschrijf iets als ‘nose piercing’.
DALL-E 2 creëert met één klik variaties van gelijk welke foto |
Bij gezichten zijn de resultaten vaak niet zo mooi, maar een voorwerp in een scène toevoegen lukt meestal wel goed. Upload bijvoorbeeld een foto van een bos, wis een stukje uit de foto en beschrijf ‘Pikachu eating some tree leaves’ om een wezen toe te voegen. Overigens voegde DALL-E bij ons niet Pikachu toe, maar ondefinieerbare dieren. Iets anders dat je kunt doen met geüploade of gegenereerde plaatjes is om variaties te genereren. Zo kregen we na het uploaden van een foto van een bos vier andere foto’s, die zo uit hetzelfde bos zouden kunnen komen.
De personen in deze ‘party full of happy people dancing, |
Beperkingen
Als je wat met DALL-E 2, Craiyon of Stable Diffusion hebt gespeeld, zul je een aantal problemen telkens zien terugkomen. Het belangrijkste manco zijn de gezichten, en dan vooral de ogen. Geen van deze systemen kan consequent realistische ogen genereren. In het beste geval zijn de ogen niet symmetrisch, en in het slechtste geval zijn ze echt vervormd tot iets wat anatomisch onmogelijk is. Dit probleem is zo hardnekkig dat er zelfs speciale software bestaat om de ogen in AI-gegenereerde plaatjes te fixen, zoals CodeFormer (https://github.com/sczhou/CodeFormer) of Hotpots AI Face Enhancer (https://hotpot.ai/enhance-face).
Personen kijken ook vaak vreemd of hebben vervormde gezichten. Ook andere vervormde lichaamsdelen zie je vaak terugkomen. De AI heeft geen gegrond idee van wat een normaal lichaam is, en genereert dus vaak extra vingers, volledige extra lichaamsdelen of vreemde extra hompen vlees. Ook tekst komt er vreemd uit trouwens. De tekst in een tekstballon, op een verkeersbord of uitstalraam van een winkel is meestal een onleesbaar gekriebel van fantasietekens.
Vreemde interpretaties
Sommige beschrijvingen worden ook wel heel letterlijk geïnterpreteerd. Vraag je aan Stable Diffusion om een meisje met blauwe ogen, dan zijn de ogen echt wel felblauw, helemaal geen natuurlijke kleur. Bovendien is vaak de hele oogbol blauw in plaats van alleen de iris, en soms gaat hetzelfde blauw zelfs verder naast de ogen als make-up. Een enkele keer is Stable Diffusion in de war en plakt het plots een heel stuk blauwe stof op een oog of geeft het de persoon blauw haar. DALL-E 2 doet het overigens veel beter, zo toont de openingsafbeelding van dit artikel.
Een subtieler interpretatieprobleem is dat de modellen vaak stereotypische voorstellingen maken. Ze zijn nu eenmaal getraind op data van internet, waarin sowieso allerlei stereotypes voorkomen. DALL-E 2 probeert wel expliciet diversiteit te creëren in de gegenereerde plaatjes. Op het Twitter-account @weirddalle vind je een boel geslaagde en minder geslaagde voorbeelden van DALL-E’s mogelijkheden.
Stable Diffusion interpreteert ‘photorealistic painting of a girl |
Wat met auteursrechten?
De plaatjes die deze AI-systemen genereren zijn in principe uniek. Als je met DALL-E 2 plaatjes creëert, heb je daarop de volledige rechten om ze te verspreiden of te verkopen. Stable Diffusion zegt dat de ermee gegenereerde plaatjes expliciet in het publieke domein vallen. Je kunt er dan ook mee doen wat je wilt, ook voor commerciële doeleinden. Wel moet je je aan de gebruiksvoorwaarden houden, die misbruik moeten voorkomen.
Bij Craiyon zijn de gegenereerde plaatjes gratis voor persoonlijk gebruik, maar de website vraagt wel om te verwijzen naar craiyon.com als je ze deelt. Je dient je ook te houden aan de gebruiksvoorwaarden, die het voorstellen van een aantal soorten plaatjes verbieden. Voor commercieel gebruik dien je een licentie aan te kopen.
Maar wat de makers van de AI-systemen zelf ook beweren, de vraag is altijd of het resultaat wel zo uniek is. Deze systemen kopiëren en plakken stukjes uit bestaande plaatjes en passen deze aan. Wie weet zijn er daardoor wel nog herkenbare stukken uit de originele plaatjes te vinden in het resultaat. Als de maker van die oorspronkelijke beelden dat herkent, kan hij misschien zijn auteursrechten doen gelden.
Misbruik van AI-plaatjes
Als deze AI-systemen fotorealistische plaatjes genereren, zijn ze misschien niet echt van foto’s te onderscheiden. Als daarop dan prominente personen staan, zou dit wel eens voor problemen kunnen zorgen: mensen zouden dan wel eens kunnen denken dat dit echt die persoon is. DALL-E 2 filtert hierop en vermijdt expliciet om fotorealistische plaatjes te genereren van gezichten van bestaande personen.
Ook pogingen om gewelddadige, pornografische of politiek geïnspireerde plaatjes te genereren, worden door DALL-E 2 gefilterd, om misbruik te voorkomen. De meest expliciete voorbeelden uit deze domeinen zijn ook verwijderd uit de trainingsset. Ook Stable Diffusion filtert een boel uit zijn plaatjes. Craiyon lijkt nog het minst te filteren.
Vraag Stable Diffusion om ‘Elon Musk partying with Rihanna’ |
Verwijder je werken uit de dataset
En dan is er nog het feit dat er foto’s in de dataset LAION 5B zitten van personen die daar geen toestemming voor hebben gegeven. Zo vond een vrouw er foto’s in die door haar dokter waren genomen voor een medische behandeling. Op een of andere manier zijn die foto’s publiek geraakt en in de dataset terechtgekomen.
De website Have I Been Trained (https://haveibeentrained.com) wil personen helpen om te weten te komen of hun foto’s gebruikt zijn om AI-systemen te trainen. Je kunt hier een van je afbeeldingen uploaden en de website zoekt dan of de afbeelding is gebruikt om populaire AI-kunstmodellen te trainen. Of je kunt een tekst intypen en dan krijg je te zien welke afbeeldingen in de trainingssets bij die tekst horen. Zo zie je al onmiddellijk waarop de AI-kunst zich baseert.
Zie je een van je eigen werken hier terugkomen en komt die uit de dataset, dan kun je op https://laion.ai/dataset-requests/ vragen om de afbeelding te verwijderen.
Toekomst van AI-kunst
Microsoft (dat OpenAI financiert) zal DALL-E als onderdeel van zijn zoekmachine Bing (https://www.bing.com/create) opnemen, zodat je zelf plaatjes kunt aanmaken als een zoektocht je er geen oplevert. Microsofts nieuwe ontwerptoepassing Designer (https://designer.microsoft.com) heeft ook DALL-E geïntegreerd om op basis van een beschrijving ansichtkaarten, uitnodigingen enzovoort te ontwerpen.
Stockafbeeldingenwebsite Shutterstock heeft ook al aangekondigd dat het DALL-E in zijn platform zal opnemen. Concurrent Getty Images was minder blij met AI-gegenereerde plaatjes en heeft ze officieel verbannen van het platform. De online kunstcommunity DeviantArt probeert de gulden middenweg te vinden. Met DreamUp biedt het een op Stable Diffusion gebaseerde AI-kunstgenerator aan, maar traint deze op alle kunst die op de website is geüpload, zonder dat de artiesten hier toestemming voor hebben gegeven. Een opt-out is alleen mogelijk als de artiest een formulier invult.
Is ‘a robot artist creating an oil painting on a canvas, digital art’ |