Топографическая карта Извлечение контурных линий

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

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

Я был бы очень рад, если бы кто-нибудь из вас мог рассказать мне о хорошем ресурсе, чтобы узнать, как это сделать, или рассказать о последовательности ресурсов, которые позволят мне объединить их в полный алогрит. Если вы знаете какую-либо книгу, которая содержит главу о материи или содержит описания, которые позволят мне объединить некоторые элементы в них в мою собственную систему, это было бы очень полезно.

Если вы знаете кого-то, кто делал подобные вещи, это также помогло бы мне узнать его.

Заранее спасибо!

2 ответа

Решение

Вы можете использовать библиотеку GDAL, которая предоставляет API для генерации контуров из растра. Смотрите функцию GDALContourGenerate. Если вы хотите узнать подробности алгоритмов, просто взгляните на исходный код GDAL.

Вы также можете поэкспериментировать с этой возможностью GDAL, используя утилиту командной строки: gdal_contour

Мы делаем все наше 3D моделирование рельефа из файлов USGS DEM (цифровая модель рельефа).

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

Другие вопросы по тегам