Что такое PRoPE? Рассказывают наши коллеги из лаборатории искусственного интеллекта ИТ-компании "Криптонит"
В системах машинного зрения часто требуется обрабатывать изображения одного объекта с разных камер, учитывая их взаимное расположение и параметры. Традиционный метод Naive raymaps добавляет к пикселям информацию о положении в 3D, но он вычислительно затратен и ограничивает обобщающую способность модели при изменении условий съёмки.
PRoPE (Projective Positional Encoding) предлагает новый подход к кодированию пространственных отношений, улучшая работу нейросетей-трансформеров в задачах обработки изображений с нескольких ракурсов.
Как работает PRoPE? PRoPE — метод относительного позиционного кодирования, интегрирующий параметры камер (внутренние и внешние) в блоки внимания трансформеров.
В отличие от традиционных подходов, кодирующих геометрию на уровне пикселей, PRoPE встраивает её на уровне внимания, что делает модель независимой от глобальной системы координат. Метод учитывает расположение, ориентацию, фокусное расстояние и разрешение камер, что важно для систем с разными характеристиками.
Преимущества PRoPE:
улучшенная производительность: PRoPE превосходит другие методы в задачах синтеза, оценки глубины и пространственного распознавания, показывая лучшие метрики (PSNR, LPIPS, SSIM) на датасетах RealEstate10K и Objaverse.
гибкость: эффективен при разных параметрах камер или изменении числа входных изображений.
совместимость: комбинируется с методами вроде CamRay, повышая точность.
масштабируемость: сохраняет преимущества при увеличении ресурсов и размеров моделей (LVSM, CAT3D).
Недостатки PRoPE:
сложность реализации: требует модификации блоков внимания, усложняя разработку.
ограниченная применимость: преимущества менее заметны при фиксированных однотипных камерах.
Несмотря на некоторые ограничения, PRoPE открывает новые возможности для создания более точных и универсальных моделей компьютерного зрения.