Lag Deepfakes enkelt: Guide til Faceswap og AI-basert videoskaping

En komplett innføring i deepfakes og hvordan du enkelt kan lage dem med Faceswap.

Kunstig intelligens er ikke lenger så «kunstig». Den har nådd et punkt der den er svært nær oss mennesker.

Den kan foreslå, skrive, skape kunst, og nå ser den ut og snakker som levende vesener.

Dette er en av de nyeste utviklingene på dette feltet som vi bør dra nytte av. Samtidig er det også noe vi må være forsiktige med.

Hva er egentlig Deepfakes?

Ordet Deepfake er en sammensetning av dyp læring og falsk. Enkelt sagt kan man se på dette som manipulerte eller dypt falske medier.

Ifølge Wikipedia er dette også kjent som syntetiske medier der et eksisterende bilde, lyd eller video endres for å representere noe helt annet.

Deepfakes får ofte kjente personer til å fremstå som om de sier noe de aldri ville gjort i virkeligheten.

Avhengig av hvor dyktig skaperen er, kan det være utrolig vanskelig å avgjøre om noe er ekte eller falskt.

Hvordan fungerer Deepfakes?

I bunn og grunn erstattes en del av den originale videoen (for eksempel et ansikt) med en falsk versjon. Dette kan også kalles et ansiktsbytte, som i denne «Obama»-videoen.

Teknologien er imidlertid ikke begrenset til bare video. Vi har også deepfake-bilder og lyd (og kanskje deepfake VR-avatarer i nær fremtid).

Kilde: Disney

Metodikken bak slike manipulasjoner avhenger først og fremst av applikasjonen og den underliggende algoritmen.

Ifølge denne forskningsartikkelen fra Disney finnes det ulike teknikker, inkludert kodere-dekodere, Generative Adversarial Networks (GANs) og geometribaserte deepfakes.

De følgende punktene er imidlertid sterkt påvirket av hvordan det fungerer med Facewap. Dette er en gratis og åpen kildekode deepfake-programvare som tillater bruk av flere algoritmer for å oppnå ønsket resultat.

Det er tre hovedprosesser for å generere deepfakes: utvinning, trening og konvertering.

#1. Utvinning

Dette handler om å identifisere og isolere det relevante området fra medieeksemplene, både originalen og det som skal byttes.

Avhengig av maskinvarens kapasitet kan man velge mellom mange algoritmer for effektiv deteksjon.

Faceswap tilbyr for eksempel ulike alternativer for utvinning, justering og maskering basert på CPU- eller GPU-ytelse.

Utvinning identifiserer ganske enkelt ansiktet i videoen. Justeringsfunksjonen lokaliserer viktige ansiktstrekk (øyne, nese, hake osv.). Og til slutt blokkerer maskeringen alt annet enn det relevante området i bildet.

Den totale tiden det tar å generere output er viktig ved valg av algoritme, siden ressurskrevende algoritmer på middelmådig maskinvare kan føre til feil eller lang behandlingstid for å oppnå akseptable resultater.

I tillegg til maskinvaren avhenger valget også av parametere som ansiktshindringer i inndatavideoen, som håndbevegelser eller briller.

Til slutt er det nødvendig å rense utdataene (forklart senere), da utvinningene vil inneholde noen falske positiver.

Utvinningen gjentas for både den originale videoen og den som skal brukes til bytte.

#2. Opplæring

Dette er kjernen i å skape deepfakes.

Opplæringen omhandler det nevrale nettverket, som består av kodere og dekodere. Her mates algoritmene med de ekstraherte dataene for å lage en modell for den senere konverteringen.

Koderen konverterer input til en vektorrepresentasjon for å trene algoritmen til å gjenskape ansiktene fra vektorer, som gjøres av dekoderen.

Deretter evaluerer det nevrale nettverket sine iterasjoner og sammenligner dem med originalen ved å gi en tapsverdi. Denne tapsverdien synker over tid ettersom algoritmen fortsetter å iterere, og man stopper når forhåndsvisningene er akseptable.

Opplæring er en tidkrevende prosess, og resultatene forbedres generelt basert på antall iterasjoner og kvaliteten på inndataene.

Faceswap anbefaler for eksempel minimum 500 bilder hver, både originaler og for bytte. I tillegg bør bildene variere betydelig og dekke alle mulige vinkler i unik belysning for best mulig resultat.

På grunn av opplæringens lengde tillater noen applikasjoner (som Faceswap) at man stopper treningen midtveis eller fortsetter senere.

Fotorealismen i utdataene avhenger spesielt av algoritmens effektivitet og input. Man er også begrenset av maskinvarens kapasitet.

#3. Konvertering

Dette er siste fase i deepfake-prosessen. Konverteringsalgoritmene trenger kildevideoen, den trente modellen og kildejusteringsfilen.

Deretter kan man endre ulike alternativer knyttet til fargekorrigering, masketype, ønsket utdataformat osv.

Etter å ha konfigurert disse alternativene, venter man bare på den endelige gjengivelsen.

Faceswap fungerer som nevnt med mange algoritmer, og man kan prøve ulike kombinasjoner for å oppnå et akseptabelt ansiktsbytte.

Er det alt?

Nei!

Dette var bare ansiktsbytte, en underkategori av deepfake-teknologi. Ansiktsbytte, som navnet antyder, erstatter bare en del av ansiktet for å gi en svak indikasjon på hva deepfakes kan gjøre.

For et troverdig bytte kan det også være nødvendig å etterligne lyden (stemmekloning) og hele kroppen, inkludert alt som er i rammen, som vist her:

Hva skjer her egentlig?

Deepfake-skaperen kan ha filmet videoen selv (som antydet i de siste sekundene), leppesynkronisert dialogen med Morgan Freemans syntetiske stemme og byttet ut hodet.

Konklusjonen er at det ikke bare handler om ansiktsbytte, men om hele rammen, inkludert lyden.

Du finner massevis av deepfakes på YouTube, og det kan bli skremmende å tenke på hva man skal stole på. Alt som trengs er en kraftig datamaskin med et effektivt grafikkort for å komme i gang.

Det er imidlertid vanskelig å oppnå perfeksjon, spesielt med deepfakes.

En overbevisende deepfake som kan villede eller imponere krever dyktighet og noen dager til uker med bearbeiding for et minutt eller to med video.

Det er interessant hvor dyktige disse algoritmene er nå. Men hva fremtiden bringer, inkludert hvor effektive disse applikasjonene kan bli på enklere maskinvare, har gjort hele regjeringer nervøse.

Vi vil imidlertid ikke gå inn på de fremtidige konsekvensene. La oss heller se på hvordan du kan gjøre det selv for litt moro.

Opprette (enkle) Deepfake-videoer

Du kan finne mange applikasjoner i denne listen over deepfake-apper for å lage memes.

En av dem er Faceswap, som vi skal bruke.

Det er et par ting vi må sørge for før vi fortsetter. Først må vi ha en video av god kvalitet av målet som viser ulike følelser. Deretter trenger vi en kildevideo for å bytte til målet.

I tillegg bør du lukke alle grafikkortintensive applikasjoner som nettlesere eller spill før du fortsetter med Faceswap. Dette gjelder spesielt hvis du har mindre enn 2 GB VRAM (video-RAM).

Trinn 1: Trekk ut ansikter

Det første trinnet i denne prosessen er å trekke ut ansiktene fra videoen. For dette må vi velge målvideoen i Input Dir og angi en Output Dir for uttrekket.

I tillegg finnes det noen alternativer, inkludert detektor, aligner, masker osv. Forklaringene for hver av dem finnes i Faceswaps FAQ, og det ville være bortkastet å gjenta informasjonen her.

Kilde: Faceswap FAQ

Det er generelt lurt å se gjennom dokumentasjonen for å få en bedre forståelse og et godt resultat. Faceswap har også nyttige hjelpetekster som vises når du holder musepekeren over et spesifikt alternativ.

Enkelt sagt finnes det ingen universell metode, og man bør begynne med de beste algoritmene og jobbe seg nedover for å skape en overbevisende deepfake.

For ordens skyld brukte jeg Mtcnn (detektor), Fan (aligner) og Bisenet-Fp (masker) mens jeg beholdt alle de andre alternativene som de var.

Jeg prøvde opprinnelig med S3Fd (beste detektor) og noen få andre maskekombinasjoner. Men min 2 GB Nvidia GeForce GTX 750Ti klarte ikke belastningen, og prosessen mislyktes gjentatte ganger.

Til slutt justerte jeg forventningene mine og innstillingene for å få det til.

I tillegg til å velge riktig detektor, masker osv. finnes det flere alternativer under Innstillinger > Konfigurer innstillinger som hjelper til med å finjustere individuelle innstillinger ytterligere for å hjelpe maskinvaren.

Enkelt sagt bør du velge lavest mulig Batch-Size, Input Size og Output Size, og krysse av for LowMem osv. Disse alternativene er ikke tilgjengelige overalt, og de er basert på en spesifikk seksjon. Hjelpetekstene bidrar også til å velge de beste alternativene.

Selv om dette verktøyet gjør en utmerket jobb med å trekke ut ansikter, kan utdatarammene inneholde mye mer enn nødvendig for å trene modellen (diskutert senere). Den vil for eksempel inneholde alle ansiktene (hvis videoen har mer enn ett) og noen feilaktige gjenkjenninger som ikke inneholder målfacet i det hele tatt.

Dette fører til rensing av datasettet. Enten kan man sjekke utdatamappen og slette selv, eller bruke Faceswaps sorteringsverktøy for litt hjelp.

Ved hjelp av dette verktøyet kan du ordne ulike ansikter i rekkefølge, og deretter slå de nødvendige sammen i en enkelt mappe og slette resten.

Som en påminnelse må du også gjenta utvinningen for den hentede videoen.

Trinn 2: Trening av modellen

Dette er den lengste prosessen ved å lage en deepfake. Her refererer input A til målfacet, og input B er kildemålet. Model Dir er der treningsfilene vil bli lagret.

Her er Trainer det viktigste alternativet. Det finnes mange alternativer med individuelle skaleringsmuligheter. Det som fungerte for min maskinvare var Dfl-H128 og lette trenere med de laveste konfigurasjonsinnstillingene.

Neste er batchstørrelsen. En høyere batchstørrelse reduserer den totale treningstiden, men bruker mer VRAM. Iterasjoner har ingen fast innvirkning på output, og du bør sette en høy nok verdi og stoppe treningen når forhåndsvisningene er akseptable.

Det finnes noen flere innstillinger, inkludert å lage en timelapse med forhåndsinnstilte intervaller. Jeg trente imidlertid modellen med et minimum av innstillinger.

Trinn 3: Bytt til original

Dette er siste steg i deepfake-prosessen.

Dette tar vanligvis ikke så lang tid, og du kan eksperimentere med ulike alternativer for å oppnå ønsket resultat raskt.

Som vist i bildet ovenfor, må du velge noen få alternativer for å starte konverteringen.

De fleste alternativene er allerede diskutert, for eksempel input- og output-katalogen, modellkatalogen osv. Alignments er viktig, da den refererer til justeringsfilen (.fsa) til målvideoen. Den opprettes i Input Directory under utvinningen.

Justeringsfeltet kan stå tomt hvis den spesifikke filen ikke er flyttet. Ellers kan du velge filen og gå videre til andre alternativer. Husk imidlertid å rense justeringsfilen hvis du har renset uttrekket tidligere.

Dette lille verktøyet finner du under Verktøy > Justeringer.

Start med å velge Fjern-ansikter i Job-delen, velg den originale justeringsfilen og de rensede målflatene, og klikk på Justeringer nederst til høyre.

Dette vil opprette en modifisert justeringsfil som samsvarer med den optimaliserte ansiktsmappen. Husk at vi trenger dette for målvideoen som vi ønsker å bytte inn i.

Andre innstillinger omfatter fargejustering og masketype. Fargejustering påvirker maskeblandingen, og du kan prøve noen alternativer, se forhåndsvisningen og velge det optimale alternativet.

Masketype er viktigere. Dette avhenger igjen av dine forventninger og tilgjengelig maskinvare. Vanligvis må du også vurdere inndatavideoens egenskaper. Vgg-Clear fungerer for eksempel godt med frontale ansikter uten hindringer, mens Vgg-Obstructed også fungerer med hindringer som håndbevegelser, briller osv.

Writer gir noen valg basert på ønsket output. Velg for eksempel Ffmpeg for en videogjengivelse.

Generelt er nøkkelen til en vellykket deepfake å forhåndsvise noen output og optimalisere i henhold til tilgjengeligheten og maskinvarens styrke.

Bruksområder for Deepfakes

Det finnes gode, dårlige og farlige bruksområder for deepfakes.

De gode omfatter å gjenskape historietimer med de som faktisk var der for å øke engasjementet.

I tillegg brukes de av nettbaserte læringsplattformer for å generere videoer fra tekster.

Men en av de største fordelene vil være i filmindustrien. Her kan man enkelt se for seg hovedpersonen utføre stunts, selv når det er stuntmannen som risikerer livet. I tillegg blir det enklere enn noensinne å lage flerspråklige filmer.

Når det gjelder de dårlige bruksområdene, finnes det dessverre mange. Den største bruken av deepfakes til dags dato er faktisk i pornoindustrien der 96 % (ifølge denne Deeptrace-rapporten) brukes til å bytte kjendisansikter med pornoskuespillere.

I tillegg blir deepfakes også brukt mot «vanlige» kvinner som ikke er kjendiser. Vanligvis har disse ofrene fotografier eller videoer av høy kvalitet på sine sosiale medieprofiler som brukes til å lage deepfakes.

Et annet skremmende bruksområde er vishing, også kalt stemmefisking. I et slikt tilfelle overførte administrerende direktør for et britisk selskap 243 000 dollar etter ordre fra «administrerende direktør» i det tyske morselskapet, bare for å finne ut at det faktisk var en falsk telefonsamtale.

Men det som er enda farligere er deepfakes som provoserer kriger eller ber om overgivelse. I et nylig tilfelle ble en video av den ukrainske presidenten, Volodymyr Zelenskyj, som ba sine styrker og folk om å overgi seg i den pågående krigen, publisert. Denne gangen ble imidlertid sannheten avslørt av den dårlige videokvaliteten.

Konklusjonen er at det finnes mange bruksområder for deepfakes, og vi har bare så vidt sett begynnelsen.

Dette leder oss til spørsmålet til en million dollar…

Er Deepfakes lovlig?

Dette avhenger i stor grad av den lokale jurisdiksjonen. Det er ennå ikke vedtatt lover som klart definerer hva som er tillatt og hva som ikke er det.

Det som er klart er at det avhenger av hva du bruker deepfakes til – hensikten. Det er neppe noe galt i å underholde eller utdanne noen uten å forstyrre målet for byttet.

På den andre siden bør ondsinnet bruk være straffbart, uavhengig av jurisdiksjon. En annen gråsone er brudd på opphavsrett som må vurderes grundig.

Men for å gjenta, bør du sjekke med dine lokale myndigheter om lovlig bruk av deepfakes.

Vær på vakt!

Deepfakes utnytter kunstig intelligens for å få noen til å si ting.

Ikke stol på alt du ser på internett, er det første rådet vi bør følge. Det finnes utallige feilinformasjoner, og effekten av disse øker bare.

Siden det stadig blir enklere å lage dem, er det på tide at vi lærer å oppdage deepfakes.