Voor het AI Songfestival maakten we een AI-Song: Abbus. Bij een AI-song hoort natuurlijk ook een videoclip. Zou AI die ook kunnen maken? En hoe zou dat eruit zien? Om dat te verkennen organiseerden we in februari 2020 een 2-daagse hackathon in het gloednieuwe Forum Groningen. Vijf multidisciplinaire teams van ontwerpers, filmmakers en coders kregen de opdracht om een prototype te maken van een AI-videoclip bij ons AI Songfestival-nummer.

Team Untapped Potential

Het AI-nummer was tijdens de hackathon nog lang niet af, dus we gaven de teams gegenereerde sample-muziek van ons algoritme om tijdens de hackathon mee te werken. Na twee dagen keihard samenwerken met allerlei AI-tools als Runway, Processing and PoseNet presenteerden de teams hun concepten en prototypes aan de jury. Team Untapped Potential werd uitgeroepen tot winnaar.

Performer, performance en podium

Hun concept combineerde een AI-performer getraind op TikTok-dansjes, met een AI-podium op basis van gecrowdsourcete beelden van Nederland. In de twee maanden volgend op de hackathon ontwikkelden we de videoclip samen met het team. 

We concentreerden ons op de vraag welke elementen je nodig hebt voor een toffe AI-clip in Eurovisie-stijl, en hoe AI die elementen voor ons zou kunnen creëren. 

We kwamen uit op 3 elementen: 

  1. Een top-kandidaat

  2. Een prachtig podium 

  3. Goede dance-moves

Het verhaal van de clip zou gaan over AI die steeds meer leert van mensen en data, en gedurende de clip evolueert. 

1. De top kandidaat: Super Willie

Onze perfecte kandidaat was natuurlijk artiest Willie Wartaal. Maar we hadden hem niet fysiek nodig, maar alleen een 3D-scan van hem die we vrijelijk konden manipuleren. Dus op een zonnige vrijdagochtend werden er in een studio in Zoetermeer twee 3D-scans van Willie gemaakt - een keer met een neutraal gezicht en een keer met een lachend gezicht. 

Gezicht 

Om virtuele Willie zo veelzijdig mogelijk te maken en meerdere uitdrukkingen te kunnen geven gingen we online op zoek naar bestaand beeld van de echte Willie. Met deze beelden trainden we een styleGAN, in de hoop dat dit iets bruikbaars zou opleveren.

StyleGAN

We verzamelden in totaal zo’n 500 foto’s van Willie online, maar dit bleek bij lange na niet genoeg materiaal om de styleGAN te trainen. Het leverde wel wat visueel interessante resultaten op, maar niet iets dat op Willie leek (of op enig ander mens).

Toen probeerden we een andere aanpak. We trainden een nieuw model met meer consistente beelden (5000 still frames uit een interview met Willie Wartaal). Dit werkte wat beter: de output leek deze keer wel op Willie, maar was weinig gevarieerd en visueel niet zo interessant.

Zingend gezicht

Daarom bleven we doortrainen en experimenteerden we met variatie in de training cycles en met het mengen van diverse beelden als input. Uiteindelijk kwamen we uit op een output die consistent was, en tof om te gebruiken.

De beelden die door dit model werden gemaakt gebruikten we als textuur voor het gezicht van het 3D-model. Ook manipuleerden we de output op diverse manieren om het genereerde gezicht te laten zingen en reageren.

Om Willie’s GAN-gezicht te laten zingen zongen we zelf voor een camera en gebruikten we een gezichtsherkenningsmodel (Runway: first-order-motion model) om deze bewegingen te tracken. De zangbewegingen werden gemapt naar Willie en zorgden ervoor dat hij een belangrijke regel uit Abbus kon zingen: “Telling the world that I was living, living, living”..

2. Een prachtig podium

Tijdens het Eurovisie Songfestival hoor je natuurlijk je land te vertegenwoordigen. Dus dit moest ook in onze videoclip gebeuren. We wilden ons mooie Nederland gebruiken als podium voor 3D-Willie. Om te bepalen wat de mooiste plekken van ons land zijn vroegen we kennissen in andere landen om hun top 10 Google Images-resultaten voor ‘Nederland’ met ons te delen. De resultaten bleken (surprise surprise) vooral kleurige beelden van Amsterdam en tulpenvelden. Deze gingen we dus inzetten voor onze virtuele omgeving.

Dit keer was de beschikbaarheid van grote aantallen foto’s bepaald geen probleem. Een Google search op ‘Amsterdam’ geeft miljoenen van dit soort beelden, dus we konden snel een set samenstellen van circa 5000 foto’s om mee te trainen. We speelden met diverse settings en dit leverde interessante styleGANs op.

3D-wereld voor Willie 

Omdat ons model van Willie een 3D-model was leek het passend om ook zijn wereld driedimensionaal te maken. Met een debugging tool van de graphics processor extraheerden we 3D-geometrie uit Google Maps. Zo kregen we schaalmodellen van daadwerkelijke locaties in Amsterdam.

Het verhaal van de videoclip gaat over AI die continue leert en evolueert. We wilden hetzelfde doen met deze stadsomgeving: visualiseren dat een AI leert hoe een wereld eruit ziet. We kozen voor een point cloud als visuele metafoor omdat veel bestaande AI-toepassingen (bijv. zelfrijdende auto’s) een point cloud-wereld gebruiken om te navigeren. 

De overgang scenes van point-cloud naar fotorealistische stad maakten we in Unity. Hier hebben we diverse lagen geanimeerd en in elkaar laten overgaan.

Kleur in Willie's wereld

Nu hadden we een wereld voor onze digitale Willie, maar hij was nog grijzig en niet zo aantrekkelijk als de foto’s van Amsterdam die we verzameld hadden. Deze grijze wereld ‘verfden’ we met de styleGAN die we eerder hadden gegenereerd. Zo kwam er kleur in Willie’s wereld.

3. Goede dance-moves

Om ons 3D-model te leren dansen, hadden we natuurlijk goede dance-moves nodig. En waar  vind je die tegenwoordig? Op TikTok. We verdeelden Abbus in vijf delen en vroegen mensen om op het nummer te dansen. Van deze bewegingen maakten we een choreografie. Vervolgens trackten we de bewegingen met PoseNet, een model dat de houding van een persoon kan inschatten op basis van de ijkpunten van de bewegende gewrichten in hun lichaam op een tweedimensionaal vlak.

Pose-lifting

Hoewel het gebruik van de locaties van gewrichten logisch lijkt zegt de inschatting in 2D weinig over de positie van de gewrichten in 3D.  Het toepassen van de ijkpunten op de 3D-versie van Willie leverde extreem vreemde houdingen op, dus dat werkte niet. 

Om dit op te lossen moesten we de houdingen zien te vertalen van 2D naar 3D. Gelukkig is dit een probleem waar meer mensen tegenaan lopen, dus er is veel research beschikbaar over dit zogenaamde ‘pose lifting’. Toepassing hiervan op een stokfiguurtje resulteerde in vrij goed passende inschattingen van de houding in 3D.

Tof effect 

Nu we een dansend poppetje hadden was de volgende stap om deze bewegingen te koppelen aan het 3D-model van Willie. Dit was makkelijker gezegd dan gedaan. Het genereren van het stokpoppetje is gebaseerd op de positie van de ijkpunten. Maar ons 3D-model van Willie wordt los gegenereerd en de ijkpunten moeten zijn lichaam volgen. Uiteindelijk kwamen we tot het volgende resultaat, door de natuurlijke rotaties van gewrichten losjes te simuleren vanuit de posities van de ijkpunten. Misschien zijn er slimmere manieren om de ingeschatte houdingen weer te geven, maar deze manier leverde ons gekke, schokkende, bibberende bewegingen van Willie op, die eigenlijk wel een tof effect gaven. Dus we hebben deze methode omarmd.   

Menselijke hand 

Toen alle losse bouwblokken af waren, combineerden we ze tot de uiteindelijke videoclip. Net als bij het maken van het AI-nummer kon deze laatste stap in het proces eigenlijk alleen goed door mensen vervuld worden. Een storyboard maken, context en tempo bepalen, betekenisvol kiezen en redigeren uit gegenereerde beelden - we moeten de eerste AI nog tegenkomen die hier echt goed en creatief in is. 

Wat hebben we geleerd?

Als je vraagt: kan AI een Eurovisie Songfestival-nummer schrijven?
Dan is ons antwoord, op basis van dit project: NEE, nog niet.
(Al geeft de recente release van OpenAI Jukebox alweer nieuwe mogelijkeden. Deze tool heeft echter nog geen Songfestival-genre beschikbaar ;)).

Er waren bloed, zweet en tranen van slimme, creatieve mensen nodig om de AI’s te trainen, en om alle gegeneerde elementen tot combineren tot een lekker klinkend nummer en een toffe videoclip. 

Maar, als je vraagt: kan AI inspirerend, onverwacht materiaal creëren waar kunstenaars mee kunnen werken, dat nieuwe ideeën kan triggeren, dat je buiten de gebaande paden laat nadenken? Dan is het antwoord zeer zeker: Ja. Kan het samenwerken met AI je uitdagen en fris laten nadenken over je creatieve proces en misschien zelfs wel over wat jou uniek maakt als creatieve mens? Absoluut.  

Met de snelheid waarin AI-tools zich ontwikkelen is het zeker de moeite om deze vragen met regelmaat opnieuw te stellen. Dat gaan wij bij VPRO Medialab in ieder geval doen. 

Credits

Teamleden Untapped Potential

Hannes Arvid Andersson: audio-visual artist, 3D animator en electronic music producer (“othernode”). http://hannes.world 

Chantalla Pleiter: media artist, VR en interactive installations en immersive theatrical experiences. www.chantallapleiter.nl

Taeckele Soepboer: creative programmer http://teackelesoepboer.nl/

Vincent Bockstael: producer / musician / mathematician

Ties Gijzel:  journalist / economist

VPRO Medialab
Eindredacteur: Annelies Termeer
Producer: Rens Mevissen
Stagiaire: Viviënne de Wolff