В этом году на конференции SIGGRAPH компания представила новые наработки по DeepFocus, системе рендеринга, которая использует искусственный интеллект для создания ультра-реалистичных изображений.
Рендеринг в реальном времени в VR представляет собой уникальный набор задач, главными из которых являются необходимость поддержки фотореалистичных эффектов, достижения более высоких разрешений и более высокого fps. Чтобы решить эту проблему, исследователи из Facebook Reality Labs разработали DeepFocus, систему рендеринга, которая использует искусственный интеллект для создания ультра-реалистичных изображений.
На SIGGRAPH в докладе «Neural Supersampling for Real-time Rendering» был представлен подход машинного обучения, который преобразует входные изображения с низким разрешением в выходные с высоким для рендеринга в реальном времени. Апскейл использует нейронные сети.
Подход достигает значительного 16-кратного суперсэмплинга визуализированного контента с высокой пространственной и временной точностью, превосходя результаты предыдущей работы с большим отрывом.
В чём суть
Чтобы уменьшить стоимость рендеринга для дисплеев с высоким разрешением, метод работает с входным изображением, которое имеет в 16 раз меньше пикселей, чем желаемый результат. Например, если разрешение целевого дисплея составляет 3840×2160, то в сеть на вход поступает изображения 960×540, отрисованное игровыми движками, и увеличивает его до целевого разрешения дисплея в качестве постобработки в режиме реального времени.
Несмотря на то, что было проведено огромное количество исследований по изучению апскейла для фотографических изображений, ни одно из них не говорит непосредственно об уникальных потребностях в рендеринге контента, такого как изображения, создаваемые движками видеоигр. Это связано с принципиальными различиями в формировании изображений между отрендеренными и фотографическими. При рендеринге в реальном времени каждый сэмпл является точкой как в пространстве, так и во времени. Вот почему у такого контента заметен алиасинг, неровные линии и другие артефакты, которые можно увидеть в примерах с низким разрешением на входе. Это делает апскейлинг контента одновременно проблемой сглаживания и интерполяции, в отличие от проблем денойза и деблюринга, которые хорошо изучены в существующих исследованиях. Тот факт, что входные изображения имеют большой алиасинг, и что информация в пикселях, которые должны быть интерполированы, полностью отсутствует, создаёт значительные проблемы для высокоточного рендеринга контента.
С другой стороны, при рендеринге в реальном времени мы можем получить больше, чем просто цветные изображения, создаваемые камерой. Cовременные движки также предоставляют вспомогательную информацию, такую как значения глубины. Наблюдения показали, что для нейросуперсэмплинга дополнительная вспомогательная информация, предоставляемая моушен векторами, оказалась особенно эффективной. Моушен векторы определяют геометрические соответствия между пикселями в последовательных кадрах. Другими словами, каждый вектор указывает на субпиксельное местоположение, где точка поверхности, видимая в одном кадре, могла появиться в предыдущем кадре. Эти значения обычно оцениваются методами компьютерного зрения для фотографических изображений, но такие алгоритмы оценки подвержены ошибкам. В отличие от этого, механизм рендеринга может непосредственно генерировать плотные моушен векторы, тем самым обеспечивая надежную, полноценную информацию на вход нейросуперсэмплинга, применяемого к контенту.
Метод основан на вышеупомянутых наблюдениях и объединяет дополнительную вспомогательную информацию с новым пространственно-временным дизайном нейронной сети, который нацелен на максимизацию качества изображения и видео, обеспечивая при этом производительность в реальном времени.
Нейронная сеть принимает в качестве входных данных атрибуты рендеринга (цвет, карту глубины и моушен векторы на кадр) как текущего, так и нескольких предыдущих кадров, отрендеренных с низким разрешением. Выходной сигнал сети представляет собой цветное изображение высокого разрешения, соответствующее текущему кадру. Сеть обучается с контролируемым обучением. Во время обучения в качестве целевого изображения для оптимизации обучения предоставляется эталонное изображение, которое рендерится с высоким разрешением методами сглаживания в паре с каждым входным кадром низкого разрешения.
Но есть же DLSS
Концептуально DeepFocus работает по тому же принципу, что и DLSS — это многокадровый суперсэмплинг. Но есть нюансы.
Во-первых, данная технология не привязана к конкретному железу, как технология DLSS от Nvidia.
Во-вторых, для помощи нейросети в генерации более качественного изображения система покадрово анализирует векторы движения пикселей и отслеживает их перемещение между кадрами. В теории это должно дать картинку наиболее приближенную к оригиналу.
Правда, во время тестирования исследователи сравнивали результаты с Nvidia DLSS 1.0. И результаты были сопоставимы. Вот только с DLSS 2.0 отрисовка кадра занимает в разы меньше времени по сравнению с DLSS 1.0.
Но технология, всё же, интересная. Как полагают сами сотрудники Facebook, их работа может найти применение в играх как для VR, так и в мобильных проектах или PC играх.
Что дальше?
Подход имеет большой потенциал для AR/VR, хотя проблема и понастоящему сложная. Поскольку AR/VR-дисплеи достигают более высоких разрешений, более высокой частоты кадров и улучшенного фотореализма, методы нейронного суперсэмплинга могут быть ключевыми для воспроизведения чётких деталей путём вывода их из данных сцены, чтобы не рендерить их напрямую.