Что на самом деле лежит в разрежённой модели
COLMAP пишет три файла, ссылающихся друг на друга. cameras хранит внутренние параметры — оптику. images хранит по одной позе на фотографию и все обнаруженные на ней 2D-признаки. points3D хранит триангулированные точки, у каждой — трек фотографий, в которых её видели. Инструмент открывает все три, в двоичном или текстовом виде, из папки, из отдельных файлов или из zip.
Трёхмерный вид
Разрежённое облако рисуется собственными цветами, а в реальной позе каждой фотографии стоит каркасная пирамида видимости. Пирамида строится из настоящих внутренних параметров, поэтому широкий объектив даёт широкую пирамиду, а небольшая метка на верхнем ребре показывает крен кадра.
Две договорённости роняют почти все самодельные просмотрщики COLMAP, и обе учтены здесь. COLMAP — это RDF: x вправо, y вниз, z вперёд, тогда как three.js и glTF — RUB, поэтому каждая позиция и каждое направление конвертируются; без этого вся сцена оказывается вверх ногами. И сохранённая поза — это преобразование из мира в камеру, поэтому положение камеры в мире равно −Rᵀt, а не t.
Как читать здоровье реконструкции
- Средняя длина трека — сколько фотографий видели каждую точку. Три-четыре — норма для съёмки с рук; ниже 2,5 говорит о слабом сопоставлении.
- Средняя ошибка перепроекции — в пикселях. Меньше примерно 1,5 px — здорово.
- Доля триангуляции — наблюдения, делённые на число найденных признаков. Несколько процентов — норма, а не дефект.
- Наблюдений на изображение — снимок с очень малым числом почти не вносит вклада и первым идёт в чистку.
Всё работает в браузере; реконструкция никуда не загружается.
Tiny Online Tools






