Beeldupscaling: hoe computers vage foto's scherper maken
Stel je voor: je hebt een oude vakantiefoto van twintig jaar geleden, gemaakt met een simpele camera. Het beeld is klein en een beetje wazig. Beeldupscaling is de techniek waarmee een computer die foto vergroot en tegelijk scherper maakt, alsof je met een betere camera had gefotografeerd. Niet door simpelweg de pixels uit te rekken zoals vroeger, maar door slim te "raden" welke details er waarschijnlijk bij horen.
Die term duikt steeds vaker op: in games die er scherper uitzien zonder dat je videokaart harder hoeft te werken, in gerestaureerde oude films, en in televisies die lage-resolutiebeelden omzetten naar 4K of 8K. Onder de motorkap zit vaak kunstmatige intelligentie (AI) die geleerd heeft hoe scherpe beelden eruitzien, en die kennis gebruikt om vage beelden te verbeteren.
Wat is het precies?
Upscaling betekent letterlijk "opschalen": een afbeelding met weinig pixels (beeldpunten) omzetten in een afbeelding met meer pixels. De oudste methode heet interpolatie: de computer kijkt naar de kleur van naburige pixels en berekent een gemiddelde voor de nieuwe, tussenliggende pixels. Dit werkt, maar het resultaat oogt al snel wazig of blokkerig, omdat er geen echte nieuwe informatie wordt toegevoegd.
Moderne beeldupscaling gebruikt in plaats daarvan een neuraal netwerk, een type computermodel dat losjes geïnspireerd is op hersencellen en dat patronen leert herkennen uit grote hoeveelheden voorbeelden. Zo'n netwerk wordt getraind met miljoenen paren beelden: een scherpe, hoge-resolutieversie en een kunstmatig verkleinde, wazige versie ervan. Het netwerk leert stap voor stap welke details (randen, texturen, patronen zoals haar of bladeren) typisch verloren gaan bij verkleinen, en hoe het die plausibel kan terugbrengen.
Een veelgebruikte aanpak heet GAN, voluit generative adversarial network ("generatief adversarieel netwerk"). Hierbij werken twee netwerken tegen elkaar: het ene probeert een overtuigend scherp beeld te genereren, het andere probeert te ontmaskeren of dat beeld nep is. Door dit gevecht duizenden keren te herhalen, wordt de eerste steeds beter in het maken van realistische details.
Belangrijk om te beseffen: de computer verzint eigenlijk plausibele details bij, ze worden niet uit het niets teruggehaald. Als een gezicht op de originele foto te klein en wazig is om ogen goed te onderscheiden, dan verzint het algoritme ogen die er logisch uitzien, maar dat zijn niet per se de exacte, oorspronkelijke ogen. Dit heet wel eens "hallucineren" van beelddetails.
Wat wil men ermee bereiken?
Het belangrijkste doel is efficiëntie. Een scherm in hoge resolutie vullen kost veel rekenkracht en bandbreedte. Als je in plaats daarvan een kleiner beeld kunt renderen of versturen, en dat pas op het laatste moment slim opschaalt, bespaar je rekenkracht, energie en dataverkeer zonder dat de kijker veel kwaliteitsverlies merkt.
In videogames is dit goud waard: door op lagere resolutie te renderen en daarna te upscalen, halen spelcomputers en videokaarten hogere framerates (het aantal beelden per seconde), wat games vloeiender laat aanvoelen.
Bij streamingdiensten helpt upscaling om video's met minder data te versturen, wat vooral nuttig is bij een trage internetverbinding. Ook in de fotografie en filmrestauratie is er vraag naar: oude foto's, archiefbeelden of vroege digitale camera-opnames kunnen zo geschikt gemaakt worden voor moderne, grote schermen.
Verder speelt de techniek een rol in gespecialiseerde velden zoals medische beeldvorming (scans verduidelijken) en satellietbeelden (details versterken voor kaarten of landbouwmonitoring), al gelden daar strengere eisen omdat verzonnen details in die context misleidend of zelfs gevaarlijk kunnen zijn.
Voorbeelden uit de praktijk
NVIDIA DLSS (Deep Learning Super Sampling), sinds 2018 op de markt, is wellicht het bekendste voorbeeld. Deze techniek laat games op een lagere interne resolutie draaien en schaalt het beeld met AI op naar de volledige schermresolutie, wat de framerate flink verhoogt. Inmiddels is de derde generatie (DLSS 3) beschikbaar, die ook extra tussenbeelden genereert.
AMD FidelityFX Super Resolution (FSR), geïntroduceerd in 2021, is het antwoord van concurrent AMD. De eerste versie gebruikte nog geen AI, maar latere versies (FSR 2 en 3) leunen wel op geavanceerdere, deels lerende technieken en werken op meer soorten videokaarten dan DLSS.
ESRGAN (Enhanced Super-Resolution Generative Adversarial Network), gepubliceerd in 2018 door onderzoekers verbonden aan onder meer de Chinese University of Hong Kong, was een academische doorbraak die liet zien hoe GAN's realistische texturen konden bijmaken. Het model en zijn opvolgers vormen tot op vandaag de basis voor veel opensource-upscalingsoftware.
Topaz Gigapixel AI, van het Amerikaanse bedrijf Topaz Labs, is commerciële software die fotografen en archivarissen gebruiken om oude of lage-resolutiefoto's te vergroten en te verscherpen, onder meer voor grote afdrukken.
Televisiefabrikanten zoals Samsung, LG en Sony bouwen sinds ongeveer 2019-2020 speciale AI-chips in hun 8K-televisies, die lagere-resolutiebeelden (zoals gewone tv-uitzendingen) in real time opschalen, omdat er nog nauwelijks natieve 8K-content bestaat.
Hoe ver is de techniek?
Voor gaming is de techniek inmiddels volwassen: DLSS en FSR worden breed ondersteund door honderden games en worden door veel spelers standaard aangezet. De kwaliteit is de afgelopen jaren sterk verbeterd; vroege versies gaven soms wazige of flikkerende randen, recente versies zijn daarin veel stabieler.
Voor foto- en videorestauratie is de techniek bruikbaar maar niet feilloos. Bij sterk vergrote, extreem lage-resolutiebeelden kan software details verzinnen die niet kloppen, bijvoorbeeld een ander lettertype op een bord of een net iets ander gezicht. Dit is problematisch bij gebruik voor bewijsmateriaal of journalistiek, en experts waarschuwen daar geregeld voor.
Real-time upscaling van livevideo (zoals videobellen of livestreams) staat nog wat minder ver dan game-upscaling, al boeken chipmakers hier snel vooruitgang. Een ander obstakel is dat elk AI-model getraind is op specifieke soorten beelden; een model dat goed is in landschappen presteert vaak minder goed op bijvoorbeeld tekst of medische scans, tenzij het daar apart voor getraind is.
Wie werken eraan?
De grote chipmakers domineren het gamingsegment: NVIDIA met DLSS, AMD met FSR, en Intel met zijn eigen variant XeSS. Deze bedrijven combineren software-onderzoek met speciale hardware-onderdelen (zogeheten tensor cores of AI-accelerators) die de berekeningen versnellen.
Google Research publiceert al sinds midden jaren 2010 invloedrijk werk op dit gebied, waaronder het vroege RAISR-algoritme (2016). Academische groepen, onder meer verbonden aan de Chinese University of Hong Kong en het Chinese bedrijf SenseTime, ontwikkelden met ESRGAN een van de meest geciteerde technieken in het vakgebied.
In de consumentensoftware zijn bedrijven als Topaz Labs en Adobe (met functies in Photoshop en Lightroom) actief. Bij televisies investeren Samsung, LG en Sony in eigen upscaling-chips. Onderzoek naar de technische grondslagen — vooral GAN's en verwante neurale netwerken — gebeurt wereldwijd aan universiteiten, met opvallend actieve onderzoeksgroepen in de Verenigde Staten, China en het Verenigd Koninkrijk.
Verder lezen
- NVIDIA — informatie over DLSS en AI-grafiektechnologie
- AMD — informatie over FidelityFX Super Resolution
- arXiv.org — preprints van wetenschappelijke publicaties, waaronder het ESRGAN-onderzoek
- Google Research — publicaties over beeldverwerking en machine learning
- Topaz Labs — commerciële software voor beeldupscaling en -restauratie