Het trainen van een beeldgenerator
Deze beeldgenerator leert van voorbeelden om typische structuren aan de randen van objecten compact te beschrijven (codeerder) en uit dergelijke data een professioneel masker te maken (decodeerder).
Professioneel vrijstaand maken
Voor een beeldgenerator heb je twee Deep CNN's nodig: een codeerder die het onderwerp reduceert tot zijn karakteristieke kenmerken en een decodeerder die uit dergelijke minimale informatie weer pixelwaarden kan reconstrueren. Een onlangs gepresenteerde toepassing met die architectuur kan professionele fotomontage en retoucheerwerk voor amateurs uitvoeren en professionals productiever maken. Dit Deep Image Matting, van Ning Xu, Thomas Huang en de Adobe Researchonderzoekers Brian Price en Scott Cohen, moet objecten bijna automatisch vrijstaand kunnen maken van hun achtergrond.
Daarbij markeert de gebruiker het overgangsgebied tussen object en ach tergrond alleen grofweg met een dikke stift, zodat er een zogeheten trimap met duidelijk binnendeel, ongedefinieerd grensdeel en duidelijk buitendeel ontstaat. Vervolgens berekent Deep Matting uit die fototrimapparen voor elke pixel de juiste transparantiewaarde en maakt daardoor een masker dat de storende achtergrond verbergt. De resultaten die de onderzoekers laten zien zijn indrukwekkend. Deep Matting scheidt fijnmazige spinnenwebben met regendruppels, wilde leeuwenmanen en glazen voorwerpen van hun omgeving, zelfs als die qua kleur en structuur nauwelijks van het object verschilt.
Tijdens het trainen analyseert de codeerder duizenden fototrimapparen. De trimap zegt welke pixels in ieder geval bij het object of bij de achtergrond behoren – en voor welke dat onduidelijk is. Net als bij de objectherkenning worden van de foto eerst patronen, randen, kleurverlopen et cetera gemaakt. Dan specialiseert het netwerk zich op typische structuren als haren, huid of scherpteonscherpteovergangen die bij de randen van objecten voorkomen. De achterhaalde informatie wordt aan de decodeerder doorgegeven. Die moet op basis van die informatie beslissen welke pixels in het overgangsgebied bij het object horen en welke de achtergrond moeten laten doorschijnen. De berekende transparantiewaarden worden vervolgens vergeleken met een professioneel gemaakt masker, de fouten worden berekend en aan het netwerk teruggegeven om de codeerder en decodeerder bij te stellen voor een andere foto.
Het netwerk was echter niet de enige sleutel tot het succes. De hoogwaardige trainingsverzameling had een even groot aandeel. Die moest bijna vanaf nul opgebouwd worden. Om de inspanningen te beperken, verzamelden de onderzoekers onderwerpen met een eenvoudige of egaal gekleurde achtergrond. Die waren door experts met de gangbare Photoshoptools snel handmatig te maskeren. Elk object werd vervolgens op meerdere realistische achtergronden gemonteerd. Op die manier ontstonden er met relatief weinig moeite van een enkele foto meerdere scènes en een perfect masker. De trainingsdatabase bestond aan het eind al met al uit 49.300 scènes met 493 verschillende objecten en de testdatabase had 1000 foto's met 50 objecten.
Dergelijke supervised methodes kunnen sommige beeldbewerkingsalgoritmes gaan vervangen. Naast het vrijstaand maken van objecten kun je er ook scènespecifieke autocorrectie en fotorealistische stijltransfer zoals Adobes Deep Style Transfer mee doen. Daardoor wordt het mogelijk de stijl van een moeizaam bewerkte of een bijzonder smaakvolle foto over te brengen op eigen werk. Het bijzondere aan Deep Style Transfer is dat het objecten als huizen, zee en hemel gericht zo corrigeert dat ze er met de nieuwe omstandigheden geloofwaardig uitzien. Er wordt onder andere rekening gehouden met reflecties van het omgevingslicht op gebouwen of in gezichten. De techniek is een doorontwikkeling van het neurale stijlfilter waarmee de fotoapp Prisma het afgelopen jaar de appcharts bestormde.
AI begrijpt de werkelijkheid
Het probleem om een neuraal netwerk te construeren dat zelfstandig fotorealistische beelden genereert is uitermate lastig en pas ten dele opgelost. Er zijn oneindig veel correcte mogelijkheden om een fakefoto van een kast, een hond of een gezicht te maken, dus kun je niet met geclassificeerde datasets werken en daarom ook geen exacte fouten berekenen.
Van de universiteit van Edinburgh, de actionpainter Tom White en de laboratoria van Adobe, Google en Facebook komen opmerkelijke demonstraties van dergelijke interactieve technieken. Die zijn allemaal het gevolg van een theorie die probeert het wezen van fotorealisme integraal te beschrijven met een probabilistisch model. Daarop gebaseerde generatieve methoden bevatten en manipuleren motieven en objecten als geheel en maken een compleet nieuwe dimensie mogelijk van retoucheertools.
In dit model wordt het grote aantal aan alle mogelijke 2Dbeelden als een populatie beschouwd. Die populatie bestaat voor een groot deel uit zinloze beelden die alleen ruis bevatten. Als een toevalsgenerator zwartwitfoto's met helderheidswaarden tussen 1 en 100 moeten maken, krijg je in de regel de ruis zoals je die van een oude beeldbuistelevisie kent en slechts extreem zelden een foto of abstracte kunst.
Elke op deze wereld mogelijke foto is een representant van de in verhouding kleine populatie aan fotorealistische beelden. Als je de hele populatie zou kennen, kun je daar met een toevalsgenerator makkelijk voorbeelden uit halen. De verdeling van fotorealistische beelden heeft echter zoveel dimensies en is zo complex, dat een mens die niet expliciet kan formuleren. Dat komt doordat er in een beeld onoverzienbaar veel semantische samenhangen bestaan die ervoor zorgen dat een pixel op een bepaalde plek maar bepaalde waarden kan aannemen en andere in die context geheel uitgesloten zijn.
In het jaar 2014 kreeg de AIonderzoeker Ian Goodfellow het briljante idee van een netwerkcombinatie die kan beoordelen of een kunstmatig gemaakte foto uit dezelfde populatie zou kunnen stammen als de echte trainingsfoto's. De training werd uitgevoerd als wedstrijd tussen twee tegenspelers, een vervalser en een detective. Dergelijke netwerken noemt men Generative Adversarial Networks (GAN's).
Als vervalser dient een neuraal netwerk dat van foto's met kunstmatige ruis echte foto's moet maken. Een ander neuraal netwerk dient als detective die moet beslissen of de foto echt of onecht is. Aan het begin van de training werken zowel de vervalser als de detective redelijk amateuristisch: de ene produceert overduidelijk onrealistische representaties, maar de ander merkt dat niet. Dan probeert de vervalser een paar listen die de ander een tijdje betrouwbaar misleiden – tot de detective ook bijgeleerd heeft. Op die manier ontwikkelen beide netwerken simultaan vaardigheden die ze afzonderlijk nooit geleerd zouden hebben. Aan het eind produceert het vervalsernetwerk
dusdanig goede fakes, dat de detective ze nauwelijks nog van echte foto's kan onderscheiden.
Meestervervalser
Een uitgekiend trainingsplan ligt ten grondslag aan het feit dat de netwerken het juiste leren. De onderzoekers hebben met een speurtocht op internet een groot aantal vergelijkbare foto's gezocht met variaties van hetzelfde onderwerp. Het detectivenetwerk krijgt afwisselend een echte foto en een fakefoto uit het vervalsersnetwerk te zien en moet beslissen of het echt of vervalst is. Na het classificeren herhaalt die procedure zich met de volgende trainingsfoto. Omdat door de trainingsopzet bekend is of een foto van de originele stapel komt of van de vervalser, kan net als bij het supervised trainen het succes van beide netwerken berekend worden en als feedback worden teruggegeven. Bij de codeerder worden synapsen die voor het maken van fotorealistische beelddetails verantwoordelijk zijn dan belangrijker. Het decodeernetwerk leert tegelijkertijd om kunstmatige foto's op grond van details als typische patronen, kleurverlopen en randen te ontmaskeren, maar ook op basis van globale samenhangen als lichtverhoudingen of niet passende mimiek.
De GAN's waren een doorbraak omdat ze in staat waren relatief scherpe en hoogwaardige beelden te maken. In eerste instantie lukte het echter niet om ze op commando wat specifieks als bijvoorbeeld een afbeelding met een gestreepte kat of een donkerharig mens te laten componeren. Het afgelopen jaar stond in het teken van doorontwikkelingen om het doelgericht genereren en retoucheren van objecten respectievelijk delen daarvan mogelijk te maken.
In de herfst van vorig jaar heeft Adobe een GAN geïntroduceerd die foto's van schoenen en handtasjes in verschillende vormen produceert en van een paar grove penseelstreken natuurmotieven kan maken. Een blauwe golflijn wordt dan een zee, een grijze hoop een berg en een witte kleur bovenaan kan alleen sneeuw zijn. De Neural Photo Editor van de universiteit van Edinburgh is bijzonder interessant. Het is een universele tool voor het retoucheren van portretten. Je hoeft alleen een kleur te kiezen en het gewenste beelddeel te overschilderen, dan zorgt de techniek automatisch voor plausibele correcties. Schilder je met een rode kleur over de haren, dan worden ze roodachtig. Gebruik je een haarkleur op het voorhoofd, dan wordt de pony langer. Een donkere kleur op het gezicht wordt baard en wit rondom de mond zorgt voor een stralende lach. Het zal echter nog wel een paar jaar duren voordat technieken als in de Neural Photo Editor en Adobesties kunnen maken.
Bijeffecten
Het is vaak niet helemaal duidelijk wat een neuraal netwerk doet, maar ze leren alleen van wat je ze voorzet – en niet wat je denkt dat je ze voorzet. Googles objectherkenning had in eerste instantie niet genoeg voorbeelden gezien van mensen met verschillende huidskleuren – waardoor de foto van een gekleurd echtpaar als 'Gorilla's' werd bestempeld. Microsoft had het ietwat naïeve idee een bot bij wijze van experiment op internet te zetten om te zien wat hij daar leerde. Binnen de kortste tijd kwamen daar nazileuzen uit.
Automatisch verzamelde trainingsfoto's en unsupervised leren versterken het risico dat de data ongemerkt stereotypen bevatten. De actionpainter Tom White ervoer dat met zijn indrukwekkende Twitterbot die onvermoeibaar portretten van internet haalde, ernstige gezichten aan het glimlachen kreeg en vrolijke gezichten somberder maakte. Hij had zijn generatieve netwerk van tevoren aan de hand van talloze foto's geleerd hoe mimiek werkt – en hoe bij het lachen alle gezichtsspieren meewerken. Zijn trainingsmateriaal bestond uit foto's van mannelijke en vrouwelijke prominenten met verschillende mimiek. Bij het testen viel op dat personen vrouwelijker leken als het neurale netwerk ze liet lachen en mannelijker als een ernstige uitdrukking werd toegepast. De reden: omdat vrouwen op foto's meer lachen en mannen serieuzer kijken, had het netwerk lachen gekoppeld aan vrouwelijke kenmerken en dit versterkt.
Het automatisch vrijstaand maken, scènespecifieke autocorrectie, stijltransfer, kwalitatief hoogwaardig schalen en het verbeteren van beelddelen zullen de beeldbewerking sterk automatiseren. Beeldgeneratoren met een universeel begrip van het wezen van foto's zijn daarentegen nog toekomstmuziek. Goed beïnvloedbare GANvarianten halen nog niet de gewenste kwaliteit. Als je een hogere resolutie wilt, wordt de interactie lastiger. Bij Adobe gaat men er wel vanuit dat die technieken de komende jaren productief gebruikt kunnen gaan worden. (nkr)