Погляд Anderson
Розробка ‘поганих днів волосся’ у синтезі людського зображення

Від золотої доби римської статуї зображення людського волосся було колючим викликом. Середній людський голова містить 100 000 волосин, має різний показник заломлення згідно з його кольором і, понад певну довжину, рухається і реформується способами, які можуть бути змодельовані тільки за допомогою складних фізичних моделей – на даний момент тільки застосовуються через ‘традиційні’ методи CGI.

Від дослідження 2017 року компанії Disney, фізично-орієнтована модель намагається застосувати реалістичний рух до рідинного стилю волосся у робочому процесі CGI. Джерело: https://www.youtube.com/watch?v=-6iF3mufDW0
Проблема погано вирішується сучасними популярними методами deepfakes._already кілька років провідний пакет DeepFaceLab мав ‘повну голову’ модель, яка могла тільки захопити жорсткі втілення коротких (зазвичай чоловічих) стилів волосся; і недавно DFL-стабільний FaceSwap (обидва пакети походять від суперечливого джерела коду DeepFakes 2017 року) запропонував реалізацію моделі семантичної сегментації BiseNet, що дозволяє користувачеві включити виховання та волосся у вивід deepfakes.
Навіть при зображенні дуже коротких стилів волосся результати схильні бути дуже обмеженими за якістю, з повними головами, що з’являються надкладеними на відеозапис, а не інтегрованими в нього.
GAN Волосся
Два основних конкуруючих підходи до людської симуляції – це Нейронні поля радіанції (NeRF), які можуть захопити сцену з декількох точок зору і закодувати тривимірне представлення цих точок зору в досліджувальну нейронну мережу; і Генеративно-конкурентні мережі (GANs), які відзначаються більш високим рівнем людської синтезії зображення (не в останню чергу тому, що NeRF з’явилася тільки у 2020 році).
Виведена NeRF розуміння 3D-геометрії дозволяє їй реплікувати сцену з великою точністю і послідовністю, навіть якщо зараз вона має мало або жодної можливості для впровадження фізичних моделей – і, фактично, відносно обмежену можливість для будь-якого роду трансформації над зібраними даними, які не стосуються зміни точки зору камери. На даний момент NeRF має дуже обмежені можливості щодо відтворення руху людського волосся.
GAN-еквіваленти NeRF починаються з майже фатальної невигоди, оскільки, на відміну від NeRF, латентний простір GAN не містить у собі розуміння 3D-інформації. Тому 3D-орієнтована GAN-фасадна синтезія зображення стала гарячою погонією в дослідженні генерації зображень за останні роки, з 2019 року InterFaceGAN одним з провідних проривів.
Однак, навіть результати InterFaceGAN демонструють, що нейронна узгодженість волосся залишається складним викликом щодо тимчасової узгодженості для потенційних робочих процесів VFX:

‘Сизий’ ефект волосся при зміні пози в InterFaceGAN. Джерело: https://www.youtube.com/watch?v=uoftpl3Bj6w
Як стає більш очевидним, що послідовна генерація виду через маніпуляцію латентним простором сама по собі може бути подібною до алхімії, все більше число робіт з’являється, які включають у GAN-робочий процес CGI-орієнтовану 3D-інформацію як стабілізуючу і нормалізуючу обмеження.
CGI-елемент може бути представлений проміжними 3D-примітивами, такими як Skinned Multi-Person Linear Model (SMPL), або шляхом прийняття 3D-інферентних технік у спосіб, подібний до NeRF, де геометрія оцінюється з вихідних зображень або відео.
Одна нова робота в цьому напрямку, опублікована на цій тижні, – це Багатогранна узгоджена Генеративно-конкурентна мережа для 3D-орієнтованої синтезії зображення (MVCGAN), спільна робота між ReLER, AAII, Університетом технологій Сіднея, академією DAMO в Alibaba Group і Зєджянським університетом.

Плавусні і міцні нові пози обличчя, згенеровані MVCGAN на зображеннях, отриманих з набору даних CELEBA-HQ. Джерело: https://arxiv.org/pdf/2204.06307.pdf
MVCGAN включає генеративну мережу радіанції (GRAF), здатну забезпечувати геометричну обмеження в Генеративно-конкурентній мережі, аргументно досягаючи деяких з найбільш автентичних можливостей позування серед подібних GAN-орієнтованих підходів.
Однак, додатковий матеріал для MVCGAN показує, що отримання об’єму волосся, розташування, положення і поведінки узгодженості є проблемою, яку не легко вирішити через обмеження, засновані на зовнішньо-встановленій 3D-геометрії.

З додаткового матеріалу, який не був публічно випущений на момент написання, ми бачимо, що хоча синтез пози обличчя з MVCGAN представляє собою помітний прогрес щодо сучасного стану справ, тимчасова узгодженість волосся залишається проблемою.
Оскільки ‘прямі’ робочі процеси CGI все ще вважають тимчасову реконструкцію волосся таким самим складним викликом, немає жодної причини вважати, що традиційні геометрично-орієнтовані підходи цього типу приведуть до узгодженої синтезії волосся у латентному просторі в найближчому майбутньому.
Стабілізація Волосся з Конвольюційними Нейронними Мережами
Однак, майбутня робота трьох дослідників з Інституту технологій Чалмерса у Швеції може пропонувати додатковий прогрес у нейронній симуляції волосся.

Зліва, стабілізоване волосся CNN, справа, оригінальне зображення. Джерело: https://www.youtube.com/watch?v=AvnJkwCmsT4
Назва цієї роботи – Фільтрація Волосся в Реальному Часі з Конвольюційними Нейронними Мережами, і вона буде опублікована на симвозіумі i3D у початку травня.
Система складається з автокодувальній мережі, здатної оцінювати роздільність волосся, включаючи самозатінення і врахування товщини волосся, в реальному часі, на основі обмеженої кількості стохастичних зразків, засіяних геометрією OpenGL.
Підхід відтворює обмежену кількість зразків з стохастичною прозорістю і потім тренує U-net, щоб реконструювати оригінальне зображення.

Під MVCGAN, CNN фільтрує стохастично вибрані кольорові фактори, блиски, тангенти, глибину і альфи, збираючи синтезовані результати в композитне зображення.
Мережа тренується на PyTorch, сходячись за період від шести до дванадцяти годин, залежно від об’єму мережі і кількості вхідних функцій. Навчені параметри (ваги) потім використовуються у реальному застосуванні системи.
Тренувальні дані генеруються шляхом відтворення декількох сотень зображень для прямих і хвилястих стилів волосся, з випадковими відстанями і позами, а також різними умовами освітлення.

Різні приклади вхідних даних.
Прозорість волосся серед зразків усереднюється з зображень, відтворених зі стохастичною прозорістю на суперсемплованій роздільності. Оригінальні високоякісні дані спочатку зменшуються до розмірів, що відповідають обмеженням мережі та апаратури, а потім збільшуються у типовому робочому процесі автокодувальника.
Реальний застосунок (програмне забезпечення, яке використовує алгоритм, отриманий з тренованої моделі) використовує поєднання NVIDIA CUDA з cuDNN і OpenGL. Початкові вхідні функції скидаються у буфери кольорів OpenGL, а результат перекидається у тензори cuDNN перед обробкою у CNN. Ці тензори потім копіюються назад у ‘живий’ текстуру OpenGL для накладання у фінальне зображення.
Реальна система працює на NVIDIA RTX 2080, виробляючи роздільність 1024×1024 пікселів.
Оскільки кольори волосся повністю роз’єднані у кінцевих значеннях, отриманих мережею, зміна кольору волосся є тривіальною задачею, хоча ефекти, такі як градієнти та смуги, залишаються майбутнім викликом.

Автори випустили код, використаний у оцінках цієї роботи, на GitLab. Перегляньте додаткове відео для MVCGAN нижче.
Висновок
Перехід через латентний простір автокодувальника або GAN все ще більше схожий на плавання, ніж на точну їзду. Лише у цьому дуже недавньому періоді ми починаємо бачити достовірні результати для генерації пози ‘простішої’ геометрії, таких як обличчя, у підходах, таких як NeRF, GAN і не-дипфейкові (2017) автокодувальні мережі.
Значна архітектурна складність людського волосся, у поєднанні з необхідністю включення фізичних моделей і інших ознак, для яких сучасні підходи синтезу зображення не мають жодної можливості, вказує на те, що синтез волосся навряд чи залишиться інтегрованою складовою у загальній синтезії обличчя, а буде вимагати присвячених і окремих мереж певної складності – навіть якщо такі мережі можуть бути згодом включені у ширші і більш складні рамки синтезії обличчя.
Перше опубліковане 15 квітня 2022 року.













