Як створити реалістичну графіку Grand Theft Auto 5 за допомогою глибокого навчання

Цей проект є продовженням моєї попередньої статті. У ньому я пояснив, як ми можемо використовувати CycleGAN для передачі стилю зображення, і застосувати його для перетворення графіки Fortnite і зробити її схожою на PUBG.

CycleGAN - це тип генеративної змагальної мережі, здатний імітувати візуальний стиль одного зображення та переносити його на інший. Ми можемо використовувати його, щоб графіка гри виглядала як гра іншої гри чи реального світу.

У цій статті я хотів поділитися ще кількома результатами, використовуючи той самий алгоритм CycleGAN, який я описав у своїй попередній роботі. По-перше, я спробую вдосконалити графіку GTA 5, пристосувавши її до реального світу. Далі я розповім про те, як ми можемо досягти тих самих фотореалістичних результатів, без першочергової графічної обробки GTA.

Для першого завдання я взяв скріншоти гри як наш вихідний домен, який ми хочемо перетворити на щось фотореалістичне. Цільовий домен походить із набору даних міських пейзажів, який представляє реальний світ (на який ми прагнемо зробити нашу гру схожою).

Результати CycleGAN

На основі приблизно трьох днів навчання протягом приблизно 100 епох, модель Cyclegan, здається, робить дуже гарну роботу з адаптації GTA до реального домену. Мені дуже подобається, як менші деталі не втрачаються в цьому перекладі, а зображення зберігає свою чіткість навіть при такій низькій роздільній здатності.

Головний мінус полягає в тому, що ця нейронна мережа виявилася досить матеріалістичною: вона скрізь галюцинує логотип Mercedes, руйнуючи майже ідеальне перетворення з GTA в реальний світ. (Це тому, що набір даних міських пейзажів зібрав власник Mercedes.)

Як досягти тієї ж фотореалістичної графіки з меншими зусиллями

Хоча такий підхід може здатися дуже перспективним для вдосконалення ігрової графіки, я не думаю, що справжній потенціал полягає у дотриманні цього конвеєру. Під цим я маю на увазі, що здаватися недоцільним представляти настільки деталізоване зображення, а потім перетворювати його на щось інше.

Чи не краще було б синтезувати подібне якісне зображення, але з набагато меншими витратами часу та зусиль на розробку гри? Я думаю, що справжній потенціал полягає у візуалізації об’єктів з низькою деталізацією та дозволі нейронній мережі синтезувати остаточне зображення з цього візуалізації.

Отже, на основі семантичних міток, доступних у наборі даних міських пейзажів, я сегментував об’єкти на скріншоті GTA, даючи нам зображення низької деталізації графіки. Вважайте це ігровим рендерінгом лише кількох об’єктів, таких як дорога, машина, будинки, небо тощо, не розробляючи їх детально. Це буде вхідним матеріалом для нашої моделі передачі стилю зображення, а не дуже детальний знімок екрана з гри.

Давайте подивимось, яку якість кінцевих зображень можна сформувати із таких семантичних карт із низькою деталізацією за допомогою CycleGAN.

Результати синтезу зображень із семантичних карт

Ось кілька прикладів того, як це виглядає, коли ми відтворюємо графіку GTA із семантичних карт. Зверніть увагу, що я не створював ці карти вручну. Це здавалося справді нудним, тому я просто дозволив зробити це іншій моделі CycleGAN (вона навчена виконувати сегментацію зображень за допомогою набору даних cityscapes).

Це здається хорошим перетворенням здалеку, але придивившись цілком очевидно, що зображення є фальшивим і не має жодних деталей.

Зараз ці результати - 256p і були створені на графічному процесорі з 8 ГБ пам’яті. Однак автори оригінальної статті показали, що можна створити набагато більш детальне зображення розміром 2048 x 1024p, використовуючи графічний процесор з об'ємом пам'яті понад 24 Гб. Він використовує контрольовану навчальну версію CycleGAN, яка називається pix2pixHD, яка навчена виконувати те саме завдання. І хлопчик, чи справді фальшивий образ виглядає досить по-переконливому!

Висновок

GAN мають великий потенціал змінити спосіб розвитку індустрії розваг у майбутньому. Вони здатні дати набагато кращі результати, ніж люди, і за набагато менше часу.

Те саме стосується і ігрової індустрії. Я впевнений, що через кілька років це зробить революцію у створенні ігрової графіки. Набагато легше просто імітувати реальний світ, ніж відтворювати все з нуля.

Як тільки ми цього досягнемо, розгортання нових ігор також стане набагато швидшим. Цікаві часи вперед із цими досягненнями в Deep Learning!

Більше результатів у відеоформаті

Усі вищезазначені результати та багато іншого можна знайти на моєму каналі YouTube та у вбудованому нижче відео. Якщо вам сподобалось, сміливо підписуйтесь на мій канал, щоб стежити за моїми роботами.

Дякую за читання! Якщо вам сподобалась ця стаття, підпишіться на мене на Medium, GitHub або підпишіться на мій канал YouTube.