ID.nl logo
Zelf een deepfake-video maken met DeepFaceLab
© Reshift Digital
Zekerheid & gemak

Zelf een deepfake-video maken met DeepFaceLab

Op internet is kant-en-klare software te vinden waarmee je zelf een deepfake-video maken kunt. Die software heet DeepFaceLab maar is nu niet bepaald gebruiksvriendelijk te noemen. Daarom helpen we je hier ermee op weg.

Het programma DeepFaceLab vereist Windows 10 en een recente Nvidia-kaart. De software oogt wat rudimentair en gebruikt batchbestanden voor het uitvoeren van acties. In de toekomst wil de maker een gebruikersvriendelijke interface maken waarbij je in principe alleen nog maar twee video’s hoeft te selecteren en op een knop hoeft te drukken.

Lees ook: Wat is deepfake en hoe herken je nepvideo's?

In de workspace-map staan drie mappen en twee videobestanden genaamd data_dst en data_src (doel en bron). Het laatste bestand bevat het gezicht dat je wilt gebruiken en moet worden verwerkt in het doelbestand. Voordat je begint, moet je dat materiaal dus bij elkaar zoeken, maar je kunt ook het meegeleverde bronmateriaal gebruiken. Dat bestaat uit een video van het personage Tony Stark uit Ironman, en de doelvideo is iemand die voor een greenscreen staat. Als je andere bestanden wilt gebruiken, moet je deze de eerdergenoemde namen geven.

Stappenplan deepfake-video

1. Voor de eerste stap moeten er losse frames uit de bronvideo worden gehaald; dat worden dan foto’s in png-formaat. Start batchbestand nummer 2. Je krijgt dan de vraag hoeveel frames per seconde je wilt gebruiken. Hoe meer fps, des te langer het renderen duurt. De eerste keer kun je het best voor de standaardopties kiezen door op de Enter-toets te drukken.

2. Start batchbestand 3.2. Deze doet hetzelfde met het doelbestand en haalt er losse frames uit. Bij optie 3.2 wordt elk individueel frame gebruikt en in een aparte map ondergebracht. Dat kan even duren, mede afhankelijk van de lengte van de video, de resolutie en hoe krachtig je computer is.

3. Vervolgens moeten de gezichtskenmerken worden opgenomen in een dataset. Daarvoor worden de eerste opslagen frames uit het bronbestand geanalyseerd. Kies voor optie 4: all gpu. De frames worden nu opgeslagen in data_src.

©PXimport

4. Doe vervolgens hetzelfde met de doelbestanden via batchbestand 5. Deze analyseert de gezichtskenmerken van het doelbestand op basis van de png-frames. De optie DLIB all GPU leidt tot minder fouten (false-postives) en MT all GPU leidt tot betere detectie en een realistischer algemeen resultaat, maar meer mogelijke fouten.

5. Controleer vervolgens de map aligned en verwijder hier afwijkende foto’s, bijvoorbeeld waar iets voor het gezicht zit. Deze verstoren namelijk het eindresultaat omdat de software anders denkt dat zoiets onderdeel uitmaakt van het gezicht.

6. Vervolgens moet de software worden getraind. Dat kan in verschillende kwaliteitsgradaties, maar de eerste keer is het handig om bij batchbestand 6 voor een lage waarde te kiezen, zoals H64. Dat levert een lagere kwaliteit op, maar wel sneller resultaat. De vragen slaan we voor nu over. Je kunt de training een tijd door laten lopen, eventueel uren als er veel bronmateriaal is. Druk op de Enter-toets om het trainen te beëindigen.

©PXimport

7. Daarna kunnen we de transformatie starten met batchbestand 7. Ook hier zijn weer verschillende gradaties beschikbaar en kiezen we eerst (omwille van de snelheid) voor H64. Opnieuw zijn er weer veel instellingsopties beschikbaar. Het kan per scène verschillen welke je hier het best kunt kiezen. Je kunt het altijd opnieuw uitvoeren.

8. De twee frames zijn nu samengevoegd, waarbij het brongezicht op dat van het lichaam van het doelbestand is geprojecteerd. Van deze losse foto’s moet nu weer een video worden gemaakt. Dat kan door de foto’s in een videobewerkingsprogramma te slepen, maar je kunt ook batchbestand 8 gebruiken, die de beelden omzet naar een mp4-bestand.

Grotere dataset geeft beter resultaat

Het resultaat is indrukwekkend, maar niet perfect. Om tot een beter resultaat te komen is het aan te raden om de dataset uit te breiden, bijvoorbeeld door meerdere bronvideo’s te gebruiken waarbij het gezicht in verschillende omstandigheden en vanuit diverse hoeken te zien is. Het is ook afhankelijk van het doelbestand. Draait de persoon zich daar bijvoorbeeld naar de zijkant, dan heb je ook bronmateriaal nodig waarbij dat gebeurt. De resolutie van het bronmateriaal is eveneens belangrijk, anders blijven details vaag.

Tekst: Jeroen Horlings

▼ Volgende artikel
Waarom je tv-beeld onnatuurlijk oogt (en hoe je dat oplost)
© DC Studio
Huis

Waarom je tv-beeld onnatuurlijk oogt (en hoe je dat oplost)

Je hebt net een klein fortuin uitgegeven aan een gloednieuwe 4K- of zelfs 8K-televisie. Je installeert hem, start je favoriete filmklassieker en zakt onderuit op de bank. Maar in plaats van een bioscoopervaring bekruipt je het gevoel dat je naar een goedkope soapserie of een homevideo zit te kijken. De acteurs bewegen vreemd soepel, de actiescènes lijken versneld en de magie is ver te zoeken. Geen zorgen, je televisie is niet stuk. Hij doet eigenlijk iets te goed zijn best.

Dit fenomeen is zo wijdverspreid dat er een officiële term voor is: het 'soap opera effect'. In technische kringen wordt dit ook wel bewegingsinterpolatie of 'motion smoothing' genoemd. Hoewel fabrikanten deze functie met de beste bedoelingen in hun televisies bouwen, is het voor filmfanaten vaak een doorn in het oog. Gelukkig is het eenvoudig op te lossen... als je tenminste weet waar je moet zoeken.

Nooit meer te veel betalen? Check
Kieskeurig.nl/prijsdalers!

Wat is het 'soap opera effect' precies?

Om te begrijpen wat er misgaat, moeten we kijken naar hoe films worden gemaakt. De meeste bioscoopfilms en veel dramaseries worden opgenomen met 24 beelden per seconde. Die snelheid geeft films hun karakteristieke, dromerige uitstraling. Een beetje bewegingsonscherpte hoort daarbij; dat is wat onze hersenen associëren met 'cinema'. Moderne televisies verversen hun beeld echter veel vaker: meestal 60 of zelfs 120 keer per seconde.

Om dat verschil te overbruggen, verzint je slimme televisie er zelf beelden bij. De software kijkt naar beeld A en beeld B, en berekent vervolgens hoe een tussenliggend beeld eruit zou moeten zien. Dit voegt de tv toe aan de stroom. Het resultaat is een supervloeiend beeld waarin elke hapering is gladgestreken.

Voor een voetbalwedstrijd of een live-uitzending is dat geweldig, omdat je de bal en spelers scherper kunt volgen. Maar bij een film zorgt die kunstmatige soepelheid ervoor dat het lijkt alsof je naar een achter de schermen-video zit te kijken, of dus naar een soapserie zoals Goede Tijden, Slechte Tijden, die traditioneel met een hogere beeldsnelheid werd opgenomen. De filmische illusie wordt hierdoor verbroken.

©ER | ID.nl

De winkelmodus is ook een boosdoener

Naast beweging is er nog een reden waarom het beeld er thuis soms onnatuurlijk uitziet: de beeldinstellingen staan nog op standje zonnebank. Veel televisies staan standaard in een modus die 'Levendig' of 'Dynamisch' heet. Deze stand is ontworpen om in een felverlichte winkel de aandacht te trekken met knallende, bijna neon-achtige kleuren en een extreem hoge helderheid. Bovendien is de kleurtemperatuur vaak nogal koel en blauw, omdat dat witter en frisser oogt onder tl-licht. In je sfeervol verlichte woonkamer zorgt dat echter voor een onrustig beeld waarbij huidtinten er onnatuurlijk uitzien en details in felle vlakken verloren gaan.

Hoe krijg je de magie terug?

Het goede nieuws is dat je deze 'verbeteringen' gewoon kunt uitzetten. De snelste manier om van het soap opera effect en de neonkleuren af te komen, is door in het menu van je televisie de beeldmodus te wijzigen. Zoek naar een instelling die Film, Movie, Cinema of Bioscoop heet. In deze modus worden de meeste kunstmatige bewerkingen, zoals bewegingsinterpolatie en overdreven kleurversterking, direct uitgeschakeld of geminimaliseerd. Het beeld wordt misschien iets donkerder en warmer van kleur, maar dat is veel dichter bij wat de regisseur voor ogen had.

Sinds kort hebben veel moderne televisies ook de zogeheten Filmmaker-modus. Dat is de heilige graal voor puristen. Als je deze modus activeert, zet de tv met één druk op de knop alle onnodige nabewerkingen uit en respecteert hij de originele beeldsnelheid, kleuren en beeldverhouding van de film.

Wil je de beeldmodus niet volledig veranderen, maar alleen dat vreemde, soepele effect kwijt? Dan moet je in de geavanceerde instellingen duiken. Elke fabrikant geeft het beestje een andere naam. Bij Samsung zoek je naar Auto Motion Plus of Picture Clarity, bij LG-televisies ga je naar TruMotion, bij Sony naar Motionflow en bij Philips naar Perfect Natural Motion. Door deze functies uit te schakelen of op de laagste stand te zetten, verdwijnt het goedkope video-effect en krijgt je film zijn bioscoopwaardige uitstraling weer terug.

▼ Volgende artikel
Chrome Remote Desktop: ideaal voor ondersteuning op afstand
© ER | ID.nl
Huis

Chrome Remote Desktop: ideaal voor ondersteuning op afstand

Een apparaat op afstand bedienen hoeft geen geld te kosten en is verrassend eenvoudig. Of je nu bestanden wilt openen, technische problemen wilt oplossen of meerdere toestellen wilt beheren: met Chrome Remote Desktop kan het allemaal, gratis en zonder gedoe.

De helper begint

Een groot voordeel van Chrome Remote Desktop is de brede compatibiliteit: het werkt met Windows, macOS, Linux en ChromeOS. Bovendien is het veilig – verbindingen worden versleuteld – en je hebt alleen een Chrome-browser nodig. We beginnen aan de kant van degene die op afstand toegang wilt tot een andere computer, degene die ondersteuning biedt vanaf computer A. Op computer A opent de gebruiker Chrome en surft naar https://remotedesktop.google.com. Daar verschijnen twee opties: Dit scherm delen en Verbinding maken met een andere computer. Omdat computer A support wil geven aan een extern apparaat, kiest de gebruiker voor de tweede optie. In dat scherm verschijnt een veld om een toegangscode in te geven, de code volgt zo meteen.

Degene die support geeft, gebruikt het onderste vak.

Acties voor de hulpvrager

Op computer B, de computer die toegang zal verlenen, moet de gebruiker ook in Chrome surfen naar dezelfde website. Daar kiest hij voor de optie Dit scherm delen. Voordat dat mogelijk is, moet Chrome Remote Desktop eerst worden gedownload en geïnstalleerd. De gebruiker klikt daarvoor op de ronde blauwe knop met het witte downloadpijltje. Hiermee wordt een Chrome-extensie geïnstalleerd. Na de installatie verschijnt in het vak Dit scherm delen een blauwe knop met de tekst Code genereren. Wanneer de gebruiker daarop klikt, wordt een toegangscode van 12 cijfers aangemaakt. Die code geeft hij of zij door aan gebruiker A.

Wie support krijgt, moet de code via een berichtje of telefoontje doorgeven.

Scherm delen

Op computer A geeft de gebruiker de code op in Chrome Remote Desktop. Vervolgens wacht hij tot gebruiker B bevestigt dat A toegang mag krijgen tot zijn scherm. Zodra dat is gebeurd, verschijnt het volledige bureaublad van computer B in een nieuw Chrome-venster op computer A. Door dit venster schermvullend weer te geven, kan A probleemloos handelingen uitvoeren op de pc van B. Voor de veiligheid beschikken beide gebruikers over een knop om de sessie op elk moment te beëindigen. Uiteraard is een stabiele internetverbinding noodzakelijk. Daarnaast krijgen beide partijen de melding dat ze klembordsynchronisatie kunnen inschakelen. Hiermee wordt het mogelijk om eenvoudig tekst of bestanden te kopiëren en te plakken tussen beide apparaten.

Gebruiker A krijgt het volledige scherm van B in een Chrome-venster te zien.