Регулировка связки - Bundle adjustment

Разреженная матрица, полученная при решении задачи настройки пучка небольшого размера. Это образец разреженности матрицы нормального уравнения 992 × 992 (то есть приближенной матрицы Гессе). Черные области соответствуют ненулевым блокам.

Учитывая набор изображений, изображающих несколько трехмерных точек из разные точки зрения, регулировка связки можно определить как проблему одновременного уточнения 3D координаты описывающих геометрию сцены, параметры относительного движения и оптические характеристики камеры (камер), используемых для получения изображений, в соответствии с критерием оптимальности, включающим соответствующий имиджевые проекции всех точек.

Использует

Настройка пакета почти всегда используется в качестве последнего шага каждой функциональной 3D реконструкция алгоритм. Это сводится к проблеме оптимизации 3D-структуры и параметров просмотра (например, камеры поза и, возможно, внутренняя калибровка и радиальное искажение), чтобы получить реконструкцию, которая является оптимальной при определенных предположениях относительно шума, относящегося к наблюдаемому[1] Особенности изображения: Если ошибка изображения равна нулю Гауссовский, то настройка пакета - это Оценщик максимального правдоподобия.[2]:2 Его название относится к пучкам световых лучей, исходящих от каждого трехмерного объекта и сходящихся на каждом. камеры оптический центр, которые оптимально настроены как по структуре, так и по параметрам просмотра (сходство по значению с категоричный пучок кажется чистым совпадением). Регулировка пакетов изначально задумывалась в области фотограмметрия в течение 1950-х годов и все чаще использовался компьютерное зрение исследователи в последние годы.[2]:2

Основной подход

Регулировка связки сводится к минимизации ошибка перепроецирования между положениями изображения наблюдаемых и прогнозируемых точек изображения, который выражается как сумма квадратов большого числа нелинейных функций с действительными значениями. Таким образом, минимизация достигается за счет использования нелинейных наименьших квадратов алгоритмы. Из этих, Левенберг-Марквардт зарекомендовал себя как один из самых успешных благодаря простоте реализации и использованию эффективной стратегии демпфирования, которая дает ему возможность быстро сходиться на основе широкого диапазона начальных предположений. Путем итеративной линеаризации минимизируемой функции в окрестности текущей оценки алгоритм Левенберга – Марквардта включает решение линейные системы назвал нормальные уравнения. При решении задач минимизации, возникающих в рамках настройки расслоения, нормальные уравнения имеют редкий блочная структура из-за отсутствия взаимодействия между параметрами для разных 3D точек и камер. Это может быть использовано для получения огромных вычислительных преимуществ за счет использования разреженного варианта алгоритма Левенберга – Марквардта, который явно использует преимущества шаблона нулей нормальных уравнений, избегая хранения и работы с нулевыми элементами.[2]:3

Математическое определение

Настройка пакета сводится к совместному уточнению набора исходных оценок параметров камеры и структуры для нахождения набора параметров, которые наиболее точно предсказывают положения наблюдаемых точек в наборе доступных изображений. Более формально[3] предположить, что 3D-точки видны на взгляды и пусть быть проекцией й пункт на изображении . Позволять обозначают двоичные переменные, равные 1, если точка видно на изображении и 0 в противном случае. Предположим также, что каждая камера параметризуется вектором и каждая 3D-точка вектором . Регулировка связки сводит к минимуму общую ошибку перепроецирования по всем параметрам 3D-точки и камеры, в частности

куда предсказано проекция точки на изображении и обозначает евклидово расстояние между точками изображения, представленными векторами и . Ясно, что настройка связки по определению терпима к отсутствию проекций изображения и сводит к минимуму физически значимый критерий.

Смотрите также

Рекомендации

  1. ^ Б. Триггс; П. Маклаучлан; Р. Хартли; А. Фитцгиббон ​​(1999). «Регулировка связки - современный синтез». ICCV '99: Материалы международного семинара по алгоритмам зрения. Springer-Verlag. С. 298–372. Дои:10.1007/3-540-44480-7_21. ISBN  3-540-67973-1.
  2. ^ а б c М.И.А. Луракис, А.А. Аргирос (2009). «SBA: программный пакет для настройки общего разреженного пакета». Транзакции ACM на математическом ПО. 36 (1): 1–30. Дои:10.1145/1486525.1486527. S2CID  474253.
  3. ^ Р.И. Хартли и А. Зиссерман (2004). Многоканальная геометрия в компьютерном зрении (2-е изд.). Издательство Кембриджского университета. ISBN  978-0-521-54051-3.

дальнейшее чтение

внешняя ссылка

Программного обеспечения

  • [1]: Apero / MicMac, бесплатное фотограмметрическое программное обеспечение с открытым исходным кодом. Лицензия Cecill-B.
  • sba: Общий пакет C / C ++ для корректировки разреженных пакетов, основанный на алгоритме Левенберга – Марквардта (C, MATLAB ). GPL.
  • cvsba: Оболочка OpenCV для sba библиотека (C ++ ). GPL.
  • SSBA: Пакет настройки Simple Sparse Bundle Adjustment на основе алгоритма Левенберга – Марквардта (C ++). LGPL.
  • OpenCV: Библиотека компьютерного зрения в Сшивание изображений модуль. Лицензия BSD.
  • Mcba: Регулировка многоядерного пакета (CPU / GPU). GPL3.
  • libdogleg: Универсальный решатель разреженных нелинейных наименьших квадратов, основанный на методе изгиба Пауэлла. LGPL.
  • Церера-решатель: Нелинейный минимизатор наименьших квадратов. Лицензия BSD.
  • g2o: General Graph Optimization (C ++) - фреймворк с решателями для нелинейных функций ошибок на основе разреженных графов. LGPL.
  • DGAP: Программа DGAP реализует фотограмметрический метод уравнивания связок, изобретенный Гельмутом Шмидом и Дуэйном Брауном. GPL.
  • Bundler: Система «структура из движения» (SfM) для коллекций неупорядоченных изображений (например, изображений из Интернета) от Ноя Снавели. GPL.
  • COLMAP: Универсальный конвейер структуры из движения (SfM) и многооконного стерео (MVS) с графическим интерфейсом и интерфейсом командной строки. Лицензия BSD.
  • Theia: Библиотека компьютерного зрения, предназначенная для обеспечения эффективных и надежных алгоритмов Структуры из движения (SfM). Новая лицензия BSD.