Реконструкция сцены — одна из ключевых технологий дополненной и виртуальной реальности. Традиционные решения часто основаны на облаках точек, которые требуют хранения миллионов координат во время обработки, что приводит к высокому потреблению памяти и энергии и усложняет работу периферийных устройств в реальном времени. Для решения этой проблемы исследовательская группа из Международного института информационных технологий в Хайдарабаде и Университета Иллинойса в Чикаго предложила аппаратную архитектуру, основанную на вычислениях в памяти. Она позволяет заменить хранение большого количества отдельных точек вероятностным представлением сцены и сократить объём передаваемых и обрабатываемых данных.

В основе разработки ProbSplat лежит модель гауссовой смеси (Gaussian Mixture Model, GMM). Вместо хранения координат огромного количества отдельных точек сцена представляется набором гауссовых компонентов, положение и форма которых задаются несколькими параметрами. Для работы с ними исследователи предложили массив шеститранзисторных инверторов с плавающим затвором. Каждая колонка массива представляет отдельную гауссову компоненту: она хранит её параметры и одновременно участвует в вычислении вероятности. Такая архитектура сокращает необходимость постоянно передавать данные между памятью и отдельными вычислительными блоками.

Параметры гауссовых компонентов задаются изменением порогового напряжения транзисторов с плавающим затвором. Главное достижение исследователей заключается в том, что среднее значение и дисперсию удалось программировать практически независимо друг от друга. Благодаря этому одна аппаратная структура может описывать гауссовы компоненты разного размера и положения, что необходимо для представления сложных трёхмерных сцен.

Авторы смоделировали ProbSplat по 180-нанометровой технологии комплементарной структуры металл–оксид–полупроводник (КМОП) при напряжении 1,8 В и частоте 50 МГц. При 8-битной точности система из 500 колонок потребляет, по их оценке, 202,57 пДж на одно вычисление. Для сравнения, традиционная цифровая архитектура, показатели которой исследователи пересчитали для того же техпроцесса и напряжения, потребовала около 477 пДж при работе только с 30 трёхмерными компонентами смеси. Таким образом, предложенная схема потенциально позволяет одновременно обрабатывать значительно больше гауссовых компонентов при меньших энергозатратах.

Сам вычислительный массив при этом отвечает лишь за небольшую часть потребления. При 8-битной точности на 500 колонок инверторов приходится 5,67 пДж из общих 202,57 пДж. Основные затраты связаны с аналого-цифровым и цифро-аналоговым преобразованием сигналов. Снижение точности до 4 бит уменьшает расчётное энергопотребление всей системы до 17,99 пДж, но более грубое представление данных может ухудшать качество реконструкции.

Дополнительно авторы предлагают сокращать количество гауссовых компонентов, отбрасывая те из них, непрозрачность которых слишком мала, чтобы существенно влиять на изображение. Типичное представление сцены методом гауссова сплэттинга может содержать около 800 тысяч гауссиан. При пороге непрозрачности α = 0,25 исследователям удалось сократить требуемое количество колонок массива примерно в 3,49 раза, сохранив относительно небольшое снижение качества изображения.

Аппаратная архитектура накладывает ещё одно ограничение: она непосредственно поддерживает только диагональные ковариационные матрицы и поэтому не учитывает корреляции между пространственными координатами гауссовой компоненты. Однако проведённые авторами эксперименты показывают, что для тестовой сцены влияние этого ограничения на качество рендеринга оказалось сравнительно небольшим. Максимальный показанный результат для 8-битного целочисленного представления составил 21,99 дБ по пиковому отношению сигнала к шуму при пороге непрозрачности α = 0,05.

Чтобы не обрабатывать всю сцену одновременно, исследователи также разделили пространство на 16 областей. В каждый момент система активирует только гауссовы компоненты, относящиеся к области, где находится рассматриваемая точка, а остальные временно отключает ради сбережения энергии.

ProbSplat пока представляет собой моделируемую аппаратную архитектуру, а не готовый процессор. В частности, энергопотребление периферийных аналого-цифровых и цифро-аналоговых преобразователей авторы оценивают на основе характеристик ранее опубликованных схем с пересчётом на выбранные технологический процесс и напряжение. Поэтому приведённые показатели следует рассматривать как расчётную оценку потенциальной эффективности. Работа показывает, что часть операций гауссова сплэттинга можно перенести непосредственно в программируемую аналоговую схему, одновременно хранящую параметры сцены и выполняющую вычисления, что потенциально позволяет уменьшить требования к памяти и энергопотреблению устройств дополненной и виртуальной реальности.

Не пропускайте важнейшие новости о дополненной и виртуальной реальности — подписывайтесь на Голографику в Телеграме, Максе, ВК и X! Поддержите проект на Бусти.

Далее: Южнокорейское исследование приближает коммерциализацию металинз для очков разных типов