Что такое фотограмметрия? Как снимки становятся картами и 3D-моделями

Фотограмметрия — это наука об измерениях по фотографиям. Снимите объект с многих точек с достаточным перекрытием, и программа сможет определить, где стояла каждая камера и где в трёх измерениях находится каждая видимая точка. Фотограмметрия с дрона применяет это к картографии: несколько сотен снимков превращаются в ортофотоплан, модель высот, облако точек и текстурированную 3D-модель.

Идея, лежащая в основе

Поднимите палец и посмотрите на него сначала одним глазом, потом другим: он словно прыгает на фоне. Насколько он прыгает, настолько он близко. Фотограмметрия делает то же самое камерами. Точку, видимую на двух снимках, сделанных из разных мест, можно триангулировать, а точка, видимая на многих снимках, триангулируется многократно — именно это делает результат измерением, а не догадкой.

Решать приходится две задачи сразу: откуда снят каждый снимок и как объектив искажает изображение, и где находится каждая точка на местности. Поскольку в начале неизвестно ни то ни другое, программа решает их вместе; этот процесс называется восстановлением структуры по движению (SfM) с последующим уравниванием связок.

Как работает фотограмметрия, шаг за шагом

Программа находит характерные точки на каждом снимке, сопоставляет одни и те же точки на перекрывающихся снимках и по этим соответствиям определяет положения камер, параметры объектива и первый разреженный набор 3D-точек. Затем почти для каждого пикселя оценивается глубина относительно соседних снимков, и оценки объединяются в плотное облако точек. Из облака получаются меш поверхности и растр высот, а проецирование снимков на эту поверхность даёт ортофотоплан.

Этапы фотограмметрической обработки, что даёт каждый и соответствующий этап в Stream Capture
ШагЧто происходитЧто получаетсяЭтап Stream Capture
Чтение снимковЧитаются метаданные, положения и данные камеры; отмечаются плохие снимкиГруппы камер, покрытиеДанные
Сопоставление и решениеОдни и те же точки находятся на разных снимках; определяются камеры и объективПоложения камер, разреженное облако, ошибка перепроецированияВыравнивание
УплотнениеГлубина оценивается почти для каждого пикселя и объединяетсяПлотное облако точекПлотное облако
Построение поверхностейОблако превращается в меш и растр высот3D-модель, DSM, DTMМеш + текстура, DSM, DTM
ОртотрансформированиеКаждый снимок проецируется на поверхность и смешиваетсяОртофотопланОртофото

Что нужно для хорошего результата

Прежде всего перекрытие: каждая точка на местности должна быть видна на нескольких снимках из разных положений. Для начала нужно хотя бы три перекрывающихся снимка, а для настоящей карты — намного больше. Важны и резкие, правильно экспонированные снимки с видимой текстурой, потому что программа сопоставляет именно текстуру.

Чтобы поместить результат в реальную систему координат в правильном масштабе, нужны ещё и положения: от дрона с RTK или PPK, от опорных точек, измеренных на объекте, или от того и другого. Без них модель внутренне согласована, но висит в пространстве.

Для чего применяют фотограмметрию

Топографические карты и модели высот, объёмы складов и земляных работ, изменения между двумя полётами, документирование объекта и 3D-модели сооружений и рельефа. Её используют горное дело и карьеры, строительство, землеустройство, сельское хозяйство и археология. Результаты — стандартные файлы: растры GeoTIFF, облака точек LAS или LAZ, горизонтали в DXF и модели OBJ или GLB.

Чего она не умеет

Она видит только поверхность, которую видели камеры, поэтому не видит землю сквозь густые кроны, и модели голого рельефа под растительностью — это оценки. Она плохо работает на поверхностях без текстуры, например на спокойной воде или свежем снегу, и на объектах, которые двигаются между снимками. И без обоснования она ничего не измеряет в абсолютных величинах: масштаб и положение берутся из известных положений, а не из одних снимков.

Частые вопросы

Что такое фотограмметрия простыми словами?

Измерения по фотографиям. Перекрывающиеся снимки, сделанные из разных мест, сопоставляются, и программа триангулирует, где стояла каждая камера и где в 3D находится каждая видимая точка.

Как работает программа фотограмметрии?

Она сопоставляет одни и те же точки на перекрывающихся снимках, определяет положения камер и объектив, оценивает глубину почти для каждого пикселя и объединяет её в плотное облако точек, а затем строит по облаку поверхности, модель высот и ортофотоплан.

Что такое фотограмметрия с дрона?

Фотограмметрия по снимкам, сделанным с дрона, обычно при полёте по сетке над объектом, для получения карт, моделей высот, облаков точек и 3D-моделей.

Сколько снимков нужно для фотограмметрии?

Для начала хотя бы три перекрывающихся снимка; для карты реального объекта — намного больше. Считайте по покрытию: каждая точка должна быть видна на нескольких снимках.

Точна ли фотограмметрия?

Она может быть очень точной, но точность зависит от камеры, перекрытия, определения положений и обоснования и измеряется на независимых контрольных точках. Высота обычно слабее положения в плане.

Чем фотограмметрия отличается от лидара?

Фотограмметрия получает 3D из фотографий и видит только видимые поверхности; лидар измеряет собственным лазерным излучением и может получать отражения сквозь просветы в растительности. Для открытой местности и сооружений фотограмметрии часто достаточно.

Скоро

Превратите свой полёт в ортофотоплан, DSM и 3D-модель

Нативное Windows-приложение · полностью офлайн · бесплатная бета

Программа для обработки снимков с дрона