C3DPO — это нейросеть, которая восстанавливает 3D объект по разметке объекта на изображении. Нейросеть тестировалась на задачах Human3.6M, PASCAL3D+ и Synthetic Up3D против подходов, которые не требуют реальных 3D моделей объектов при обучении. C3DPO обошла state-of-the-art методы для восстановления 3D модели объекта.
Нейросеть реконструирует 3D объект из изображения объекта в одном ракурсе. Метод устойчив к частично перекрытым объектам на изображении. При этом модель учитывает изменение формы объекта при изменении ракурса и при деформации объекта. Чтобы обучить модель восстанавливать 3D модель на основе изображения объекта в одном ракурсе, исследователи вводят свой способ для регуляризации модели.
Модель принимает на вход изображение объекта с одного ракурса и разметку его ключевых точек. Дизайн нейросети вдохновлен предыдущими моделями для генерации 3D модели из 2D разметки. Основное отличие C3DPO — отсутствие необходимости в реальных 3D моделях объектов на этапе обучения модели.
Архитектура модели
C3DPO делится на две подмодели:
- Нейросеть для реконструкции 3D объекта;
- Нейросеть для регуляризации сгенерированного 3D объекта (“canonicalization” нейросеть)
Результаты экспериментов
Исследователи сравнили работу модели с подходами, которые также не требуют 3D моделей объектов для обучения. В качестве метрик были выбраны средняя ошибка реконструкции (MPJPE) и Stress, которые устойчивы к неоднозначностям проекций. Для тестирования использовались датасеты Human3.6M, PASCAL3D+, CUB-200-2011 и Synthetic Up3D.