Andersons vinkel

Bekæmpelse af ‘dårlige hår-dage’ i menneskesynssyntese

mm
Føj Unite.AI til dine foretrukne kilder på Google

Siden den gyldne tidsalder for romersk statuer, har afbildning af menneskehår været en tornet udfordring. Den gennemsnitlige menneskehoved indeholder 100.000 strå, har varierende refraktive indekser efter dets farve, og, ud over en vis længde, vil bevæge sig og omforme sig på måder, der kun kan simuleres ved komplekse fysikmodeller – indtil videre kun gældende gennem ‘traditionelle’ CGI-metoder.

Fra 2017-forskning af Disney, forsøger en fysikbaseret model at anvende realistisk bevægelse på en flydende hårstil i en CGI-arbejdsgang. Kilde: https://www.youtube.com/watch?v=-6iF3mufDW0

Fra 2017-forskning af Disney, forsøger en fysikbaseret model at anvende realistisk bevægelse på en flydende hårstil i en CGI-arbejdsgang. Kilde: https://www.youtube.com/watch?v=-6iF3mufDW0

Problemet er dårligt håndteret af moderne populære deepfakes-metoder. I flere år har den førende pakke DeepFaceLab haft en ‘fuld hoved’-model, der kun kan fange rigide udgaver af korte (som regel mandlige) hårstyler; og for nylig har DFL-stablemate FaceSwap (begge pakker er afledt fra den kontroversielle 2017 DeepFakes-kildekode) tilbudt en implementering af BiseNet semantisk segmenteringsmodel, der tillader en bruger at inkludere ører og hår i deepfake-udgang.

Selv når det gælder meget korte hårstyler, tenderer resultaterne til at være meget begrænsede i kvalitet, med fulde hoveder, der ser ud til at være lagt oven på optagelser, snarere end integreret i dem.

GAN Hår

De to største konkurrerende tilgange til menneskesyntese er Neural Radiance Fields (NeRF), der kan fange en scene fra multiple synsvinkler og inkapsle en 3D-repræsentation af disse synsvinkler i en gennemgående neural netværk; og Generative Adversarial Networks (GANs), der er bemærkelsesværdigt mere avancerede i forhold til menneskesynssyntese (ikke mindst fordi NeRF kun opstod i 2020).

NeRF’s antagede forståelse af 3D-geometri giver det mulighed for at replikere en scene med stor trofasthed og konsistens, selvom det i øjeblikket har lidt eller ingen mulighed for påføring af fysikmodeller – og faktisk relativt begrænsede muligheder for enhver form for transformation på de indsamlede data, der ikke relaterer til ændring af kameraets synsvinkel. I øjeblikket har NeRF meget begrænsede muligheder i forhold til at genskabe menneskehårbewægelse.

GAN-baserede ekvivalenter til NeRF starter med en næsten fatal ulempe, da, i modsætning til NeRF, latent rummet af en GAN ikke naturligt inkorporerer en forståelse af 3D-information. Derfor er 3D-bevidst GAN-ansigtssyntese blevet et varmt forfølgende i billedgenereringsforskning i de seneste år, med 2019’s InterFaceGAN en af de førende gennembrud.

Men selv InterFaceGAN’s viste og udvalgte resultater demonstrerer, at neural hårkonsistens stadig er en hård udfordring i forhold til temporal konsistens, for potentielle VFX-arbejdsgange:

'Sizzlende' hår i en posetransformation fra InterFaceGAN. Kilde: https://www.youtube.com/watch?v=uoftpl3Bj6w

‘Sizzlende’ hår i en posetransformation fra InterFaceGAN. Kilde: https://www.youtube.com/watch?v=uoftpl3Bj6w

Som det bliver mere tydeligt, at konsistent visningsgenerering via manipulation af latent rummet alene kan være en alkimilignende forfølgelse, er der en stigende mængde af artikler, der inkorporerer CGI-baseret 3D-information i en GAN-arbejdsgang som en stabiliserende og normaliserende begrænsning.

CGI-elementet kan være repræsenteret af intermediate 3D-primitiver såsom en Skinned Multi-Person Linear Model (SMPL), eller ved at antage 3D-inferens-teknikker på en måde, der ligner NeRF, hvor geometrien vurderes fra kildebillederne eller videoen.

En ny artikel langs disse linjer, udgivet denne uge, er Multi-View Consistent Generative Adversarial Networks for 3D-aware Image Synthesis (MVCGAN), et samarbejde mellem ReLER, AAII, University of Technology Sydney, DAMO Academy ved Alibaba Group og Zhejiang University.

Plausibel og robust nyt ansigtspose genereret af MVCGAN på billeder afledt fra CELEBA-HQ-datasættet. Kilde: https://arxiv.org/pdf/2204.06307.pdf

Plausibel og robust nyt ansigtspose genereret af MVCGAN på billeder afledt fra CELEBA-HQ-datasættet. Kilde: https://arxiv.org/pdf/2204.06307.pdf

MVCGAN inkorporerer en generativ radiance field network (GRAF) i stand til at give geometriske begrænsninger i en Generative Adversarial Network, som kan siges at opnå nogle af de mest autentiske poseringsmuligheder for en lignende GAN-baseret tilgang.

Sammenligning mellem MVCGAN og tidligere metoder GRAF, GIRAFFE og pi-GAN.

Sammenligning mellem MVCGAN og tidligere metoder GRAF, GIRAFFE og pi-GAN.

Men supplerende materiale for MVCGAN afslører, at opnåelse af hårvolume, disposition, placering og adfærdskonsistens er et problem, der ikke let kan håndteres gennem begrænsninger baseret på eksternt påført 3D-geometri.

Fra supplerende materiale, der ikke er offentliggjort på skrivets tidspunkt, ser vi, at mens ansigtspose-syntese fra MVCGAN repræsenterer et bemærkelsesværdigt fremskridt i forhold til den nuværende tilstand af kunsten, forbliver temporal hårkonsistens et problem.

Fra supplerende materiale, der ikke er offentliggjort på skrivets tidspunkt, ser vi, at mens ansigtspose-syntese fra MVCGAN repræsenterer et bemærkelsesværdigt fremskridt i forhold til den nuværende tilstand af kunsten, forbliver temporal hårkonsistens et problem.

Da ‘direkte’ CGI-arbejdsgange stadig finder temporal hårrekonstruktion så udfordrende, er der ingen grund til at tro, at konventionelle geometribaserede tilgange af denne natur vil bringe konsistent hår-syntese til latent rummet på noget tidspunkt.

Stabilisering af hår med convolutionelle neurale netværk

Men en forestående artikel fra tre forskere ved Chalmers Tekniska Högskola i Sverige kan tilbyde et yderligere fremskridt i neural hår-simulering.

Til venstre, CNN-stabiliseret hårrepræsentation, til højre, grundsandheden. Se video indlejret i slutningen af artiklen for bedre opløsning og yderligere eksempler. Kilde: https://www.youtube.com/watch?v=AvnJkwCmsT4

Til venstre, CNN-stabiliseret hårrepræsentation, til højre, grundsandheden. Se video indlejret i slutningen af artiklen for bedre opløsning og yderligere eksempler. Kilde: https://www.youtube.com/watch?v=AvnJkwCmsT4

Artiklen, med titlen Real-Time Hair Filtering with Convolutional Neural Networks, vil blive offentliggjort til i3D-symposiet i begyndelsen af maj.

Systemet består af et autoencoder-baseret netværk i stand til at evaluere håropløsning, herunder selvskygning og tage hensyn til hårtæthed, i realtid, baseret på et begrænset antal stokastiske prøver seedet af OpenGL-geometri.

Tilgangen renderer et begrænset antal prøver med stokastisk gennemsigtighed og træner derefter en U-net til at genskabe det originale billede.

Under MVCGAN, filtre en CNN stokastisk prøvede farvefaktorer, highlights, tangenter, dybde og alfaer, samler de syntetiserede resultater i et kompositbillede.

Under MVCGAN, filtre en CNN stokastisk prøvede farvefaktorer, highlights, tangenter, dybde og alfaer, samler de syntetiserede resultater i et kompositbillede.

Netværket trænes på PyTorch, konvergerer over en periode på seks til tolv timer, afhængigt af netværksvolume og antallet af inputfunktioner. De trænede parametre (vægte) bruges derefter i den reale implementering af systemet.

Træningsdata genereres ved at rendre flere hundrede billeder for lige og bølgede hårstyler, ved hjælp af tilfældige afstande og poser, samt diverse lysforhold.

Forskellige eksempler på træningsinput.

Forskellige eksempler på træningsinput.

Hårgennemsigtighed over prøverne gennemsnittet fra billeder, der er renderet med stokastisk gennemsigtighed i supersampled opløsning. De originale højopløsningsdata nedsamples til at imødekomme netværks- og hardwaregrænser, og senere opsamples, i en typisk autoencoder-arbejdsgang.

Den reale tidsinference-applikation (den ‘live’-software, der udnytter algoritmen, der er afledt fra den trænede model) anvender en blanding af NVIDIA CUDA med cuDNN og OpenGL. De oprindelige inputfunktioner dumpes ind i OpenGL multisampled farvebuffer, og resultatet flyttes til cuDNN-tensorer før behandling i CNN. Disse tensorer kopieres derefter tilbage til en ‘live’ OpenGL-tekstur til påføring i det endelige billede.

Det reale system opererer på en NVIDIA RTX 2080, producerer en opløsning på 1024×1024 pixel.

Siden hårfarvværdier er helt frakoblet i de endelige værdier, der erhverves af netværket, er det en let opgave at ændre hårfarven, selvom effekter som grader og striber forbliver en fremtidig udfordring.

Forfatterne har udgivet koden, der er brugt i artiklens evalueringer på GitLab. Se det supplerende video til MVCGAN nedenfor.

Konklusion

At navigere i latent rummet af en autoencoder eller GAN er stadig mere lig sailing end præcisionsskørsel. Først i denne meget seneste periode begynder vi at se troværdige resultater for posegenerering af ‘simpel’ geometri såsom ansigter, i tilgange som NeRF, GANs og ikke-deepfake (2017) autoencoder-rammer.

Den betydelige arkitektoniske kompleksitet af menneskehår, kombineret med behovet for at inkorporere fysikmodeller og andre egenskaber, som nuværende billedsyntese-tilgange ikke har nogen bestemmelse for, indikerer, at hår-syntese er usandsynligt at forblive en integreret komponent i almindelig ansigtssyntese, men vil kræve dedikeret og separate netværk af en vis kompleksitet – selvom sådanne netværk måske en dag kan inkorporeres i bredere og mere komplekse ansigtssyntese-rammer.

 

Offentliggjort første gang den 15. april 2022.

Forfatter til maskinlæringsartikler, domæneekspert i menneskesynssyntese. Tidligere leder af forskningsindhold på Metaphysic.ai, indtil opløsningen i DNEG's Brahma.ai.
Portfolio site: martinanderson.ai
Kontakt: martin@martinanderson.ai