Connect with us

Kunstig intelligens

Bekjempelse av ‘dårlige hårdager’ i syntese av menneskebilder

mm

Siden den gylne alderen for romersk statuer, har avbildning av menneskehår vært en tornete utfordring. Det gjennomsnittlige menneskehode inneholder 100 000 hårstrå, har varierende brytningsindekser etter farge, og, utenfor en viss lengde, vil bevege seg og omforme seg på måter som bare kan simuleres ved komplekse fysikkmodeller – til dags dato, bare gjennom ‘tradisjonelle’ CGI-metodologier.

Fra 2017-forskning av Disney, forsøker en fysikkbasert modell å applicere realistisk bevegelse til en flytende hårstil i en CGI-arbeidsflyt. Kilde: https://www.youtube.com/watch?v=-6iF3mufDW0

Fra 2017-forskning av Disney, forsøker en fysikkbasert modell å applicere realistisk bevegelse til en flytende hårstil i en CGI-arbeidsflyt. Kilde: https://www.youtube.com/watch?v=-6iF3mufDW0

Problemet er dårlig håndtert av moderne populære deepfakes-metoder. I noen år har den ledende pakken DeepFaceLab hatt en ‘fullt hode’-modell som bare kan fange stive utgaver av korte (vanligvis mannlige) hårstyler; og nylig har DFL-stableten FaceSwap (begge pakker er avledet fra den kontroversielle 2017 DeepFakes-kilden) tilbudt en implementering av BiseNet semantisk segmenteringsmodell, som tillater en bruker å inkludere ører og hår i deepfake-utdata.

Selv når det gjelder å avbilde svært korte hårstyler, tenderer resultater til å være svært begrenset i kvalitet, med fullt hode som ser ut til å være lagt over fotografiene, snarere enn integrert i dem.

Hår med GAN

De to store konkurranse-tilnærmingene til menneskesimulering er Neural Radiance Fields (NeRF), som kan fange en scene fra flere synsvinkler og innkapsle en 3D-representasjon av disse synsvinklene i en utforskbart neuralt nettverk; og Generative Adversarial Networks (GANs), som er mer avanserte i forhold til menneskesynthese (ikke minst fordi NeRF bare oppstod i 2020).

NeRFs antatte forståelse av 3D-geometri gjør det mulig å replikere en scene med stor trofasthet og konsistens, selv om det for øyeblikket har liten eller ingen mulighet for å påføre fysikkmodeller – og, i virkeligheten, relativt begrenset mulighet for noen type transformasjon på de samlede dataene som ikke har å gjøre med å endre kameraets synsvinkel. For øyeblikket har NeRF svært begrensede muligheter i forhold til å gjenskape menneskehårsbevegelse.

GAN-baserte ekvivalenter til NeRF starter med en nesten fatal ulempe, siden, i motsetning til NeRF, latentrommet til en GAN ikke naturlig inkorporerer en forståelse av 3D-informasjon. Derfor er 3D-bevisst GAN-ansiktssynthese blitt et varmt forsøk i bildegenereringsforskning i de siste årene, med 2019s InterFaceGAN en av de ledende gjennombruddene.

Men, selv InterFaceGANs viste og cherry-picked resultater demonstrerer at neural hårkonsistens forblir en tøff utfordring i forhold til temporal konsistens, for potensielle VFX-arbeidsflyter:

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

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

Ettersom det blir mer tydelig at konsistent visning via manipulering av latentrommet alene kan være en alkeymi-lignende forfølgelse, kommer en økende mengde papirer som inkorporerer CGI-basert 3D-informasjon i en GAN-arbeidsflyt som en stabiliserende og normaliserende begrensning.

CGI-elementet kan være representert av mellomliggende 3D-primitiver som en Skinned Multi-Person Linear Model (SMPL), eller ved å adoptere 3D-inferensteknikker på en måte som ligner NeRF, der geometrien evalueres fra kildebildene eller videoen.

En ny arbeid langs disse linjene, utgitt denne uken, er Multi-View Consistent Generative Adversarial Networks for 3D-aware Image Synthesis (MVCGAN), et samarbeid mellom ReLER, AAII, University of Technology Sydney, DAMO-akademiet ved Alibaba Group og Zhejiang University.

Troverdige og robuste nye ansiktsposer generert av MVCGAN på bilder avledet fra CELEBA-HQ-datasettet. Kilde: https://arxiv.org/pdf/2204.06307.pdf

Troverdige og robuste nye ansiktsposer generert av MVCGAN på bilder avledet fra CELEBA-HQ-datasettet. Kilde: https://arxiv.org/pdf/2204.06307.pdf

MVCGAN inkorporerer en generativ radiance field network (GRAF) som kan gi geometriske begrensninger i en Generative Adversarial Network, og kan hevdes å oppnå noen av de mest autentiske poseringsmulighetene for noen lignende GAN-basert tilnærming.

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

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

Men, supplementær materiale for MVCGAN avslører at å oppnå hår-volum, disposisjon, plassering og atferdskonsistens er et problem som ikke lett kan håndteres gjennom begrensninger basert på eksternt påført 3D-geometri.

Fra supplementær materiale som ikke er offentliggjort på skrivetidspunktet, ser vi at mens ansiktsposeringssyntese fra MVCGAN representerer en merkbart fremgang på den nåværende tilstanden av kunsten, forblir temporal hårkonsistens et problem.

Fra supplementær materiale som ikke er offentliggjort på skrivetidspunktet, ser vi at mens ansiktsposeringssyntese fra MVCGAN representerer en merkbart fremgang på den nåværende tilstanden av kunsten, forblir temporal hårkonsistens et problem.

Ettersom ‘enkle’ CGI-arbeidsflyter fortsatt finner temporal hår-rekonstruksjon en så stor utfordring, er det ingen grunn til å tro at konvensjonelle geometri-baserte tilnærminger av denne naturen vil bringe konsistent hår-syntese til latentrommet noen gang snart.

Stabilisering av hår med Convolutional Neural Networks

Men, en kommende papir fra tre forskere ved Chalmers Institute of Technology i Sverige kan tilby en ytterligere fremgang i neural hår-simulering.

Til venstre, CNN-stabilisert hår-representasjon, til høyre, grunn-sannheten. Se video innlemmet i slutten av artikkelen for bedre oppløsning og eksempler. Kilde: https://www.youtube.com/watch?v=AvnJkwCmsT4

Til venstre, CNN-stabilisert hår-representasjon, til høyre, grunn-sannheten. Se video innlemmet i slutten av artikkelen for bedre oppløsning og eksempler. Kilde: https://www.youtube.com/watch?v=AvnJkwCmsT4

Systemet består av et autoencoder-basert nettverk som kan evaluere hår-oppløsning, inkludert selv-skygging og tar hensyn til hår-tykkelse, i sanntid, basert på et begrenset antall stokastiske prøver seedet av OpenGL-geometri.

Tilnærmingen renderer et begrenset antall prøver med stokastisk transparens og deretter trener en U-net for å rekonstruere den opprinnelige bildet.

Under MVCGAN, filterer en CNN stokastisk sampet fargefaktorer, høydepunkter, tangenter, dybde og alfa, samler de syntetiserte resultater i en kompositt-bilde.

Under MVCGAN, filterer en CNN stokastisk sampet fargefaktorer, høydepunkter, tangenter, dybde og alfa, samler de syntetiserte resultater i en kompositt-bilde.

Nettverket er trent på PyTorch, konvergerer over en periode på seks til tolv timer, avhengig av nettverksvolum og antall innputt-egenskaper. De trente parameterne (vektene) brukes deretter i sanntidsimplementeringen av systemet.

Treningdata genereres ved å rendre flere hundre bilder for rette og bølgete hårstyler, ved å bruke tilfeldige avstander og poser, samt diverse lysforhold.

Forskjellige eksempler på trening-inndata.

Forskjellige eksempler på trening-inndata.

Hårgjennomsiktighet over prøvene er gjennomsnittlig fra bilder rendret med stokastisk transparens i supersamplet oppløsning. De opprinnelige høyoppløselige dataene er nedsamplet for å tilpasse nettverks- og maskinvarebegrensninger, og deretter oppsamplet, i en typisk autoencoder-arbeidsflyt.

Sanntids-inferens-applikasjonen (den ‘levende’ programvaren som utnytter algoritmen avledet fra den trente modellen) bruker en blanding av NVIDIA CUDA med cuDNN og OpenGL. De opprinnelige innputt-egenskapene dumpes inn i OpenGL multisamplede fargebuffer, og resultatet skytes til cuDNN-tenorer før prosessering i CNN. Disse tenorene kopieres deretter tilbake til en ‘levende’ OpenGL-tekstur for å påføres det endelige bildet.

Sanntidssystemet opererer på en NVIDIA RTX 2080, produserer en oppløsning på 1024×1024 piksler.

Ettersom hår-fargeverdier er fullstendig avkoblet i de endelige verdiene som er oppnådd av nettverket, er å endre hår-fargen en enkel oppgave, selv om effekter som graderinger og streker forblir en fremtidig utfordring.

Forfatterne har utgitt koden som er brukt i papirets evalueringer på GitLab. Se på supplement-videoen for MVCGAN nedenfor.

Konklusjon

Navigering av latentrommet til en autoencoder eller GAN er fortsatt mer likt seiling enn presisjonskjøring. Først i denne meget nyeste perioden begynner vi å se troverdige resultater for poseringssyntese av ‘enklere’ geometri som ansikter, i tilnærminger som NeRF, GANs og ikke-deepfake (2017) autoencoder-rammeverk.

Den betydelige arkitektoniske kompleksiteten til menneskehår, kombinert med behovet for å inkorporere fysikkmodeller og andre egenskaper som nåværende bilde-syntese-tilnærminger ikke har noen bestemmelse for, indikerer at hår-syntese er usannsynlig å forbli en integrert komponent i generell ansikts-syntese, men vil kreve dedikerte og separate nettverk av en viss sofistikering – selv om slike nettverk kan bli inkorporert i videre og mer komplekse ansikts-syntese-rammeverk.

 

Først publisert 15. april 2022.

Forfatter på maskinlæring, domeneekspert på menneskesynthese. Tidligere leder for forskningsinnhold på Metaphysic.ai.