Ринат Ахметов: "Восстановление модели трехмерного...
TRANSCRIPT
Восстановление модели трехмерного объекта
по видеопотоку
Казанский Федеральный УниверситетВысшая Школа Информационных Технологий и Информационных Систем
Выпускная квалификационная работа
Выполнил: Ахметов Р.Р., студент 4 курса ИТИС
Научный руководитель: Цивильский И.В., м.н.с. ВНИЛ “3D-визуализация” ИТИС
Проблема восстановления 3D поверхности по серии фотоснимков
Требуются:1) высокая вычислительная мощность 2) большое число исходных изображений
Восстановление трехмерной модели Колизея: 1837 снимков, кластер 128 ядер, 1 неделя рабочего времени
Цель работы
Разработка и реализация алгоритма 3D реконструкциистатичных объектов с меньшими ресурсозатратами и с меньшим количеством шумов
Задачи
1)Поиск точек признаков объекта (2D)
2)Комбинация точек в “трек”
3)Расчет метрических смещений точек (3D)
4)Фильтрация облака точек и триангуляция
Алгоритм
1)Поиск ключевых точек (SIFT)
2)Фильтрация ключевых точек вблизи их геометрической окрестности
3)Восстановление матрицы камеры (нахождение фундаментальной матрицы методом RANSAC)
4)Триангуляция (Делоне)
Язык разработки: PythonIDE: PyCharmБиблиотеки: scipy, numpy, OpenCV, matplotlib
Программная реализация
Фильтрация точек признаков объекта
Текущий кадр Следующий кадр
точки признаков объекта
Стандартный алгоритм сопоставления точек: сложность ~ N2
Поиск в окрестности точек: сложность < N
Поиск в окрестности точек с учетом прогнозируемого смещения признаков (метод фазовой кросс-корреляции):сложность < N/2
убираем из рассмотренияточки, не вошедшие в окрестность искомой точки
Экспериментальная апробация
Cинтетические снимки Реальные снимки
Тест
овы
е об
ъект
ы
Тестируемые алгоритмы:
1. Стандартный structure from motion (SFM)2. Улучшенный SFM (Speedup Robust SFM): за счет стадии предварительной фильтрации точек
Результаты восстановления положения камеры и поверхности объекта по снимкам
Рассчитанные индивидуальные точки положения камеры
Восстановленная трехмерная поверхность (облако точек) и траектория камеры
Затраты времени на реконструкцию поверхности
Сравнение производительности
Быстрее на 6,4 %
Восстановленные 3D модели после триангуляции
t - время, сn - число фотоснимков
Количество шумовых объектов
N - количество шумовых точекn - число фотоснимков
Точнее на 5,5 %
Сравнение эффективности
Восстановленная поверхность синтезированного тестового кубика
Результаты
1)Разработан и реализован алгоритм восстановления трехмерной поверхности по серии фотоснимков с разных ракурсов
a) Ключевая особенность: фильтрация точек вблизи их геометрической окрестности
2)По сравнению с аналогами, предложенный алгоритм позволяет:
a) снизить шумы при восстановлении поверхности на 5,5%
b) сократить время обработки на 6,4%
3)Реализация алгоритма кросс-платформенная, характерное время восстановления 3D объекта ~1 мин (на 16 кадрах, CPU: Intel Core-i3, RAM 2GB)