Варианты интерполяции / триангуляции PostGIS

12

Я ищу рабочий процесс с открытым исходным кодом для автоматизации построения матрицы высот. У нас есть ряд сайтов, которые попадают в набор данных LIDAR. Мы хотим создать специальные DEM для каждого сайта, и мы стремимся автоматизировать этот процесс.

Пока что мы автоматизировали:

  • загрузка данных в PostGIS (LIDAR и точки сайта)
  • создание границ сайта (комбинация st_buffer и st_envelope)

Теперь мы ищем варианты для интерполяции подмножеств данных на каждом сайте и их экспорта в файлы сетки Surfer7.

В настоящее время мы запрашиваем данные в базе данных PostGIS с помощью QuantumGIS, экспортируем их в csv-файлы, затем импортируем данные и наносим на них данные в Surfer7. Надеюсь, мы сможем автоматизировать это.

Поэтому для этого варианта использования мы хотели бы триангулировать наши лидарные данные в ЦМР. Другие возможные случаи, о которых мы можем подумать, включают в себя различные методы интерполяции - поэтому, если есть варианты для обратного расстояния и кригинга - мы заинтересованы!

Это очень полезное упражнение для нас - мы работаем по-детски!

tomtomnz
источник
2
Я бы сказал, что вы впереди команды разработчиков, которые обсуждали вопрос о pointcloudпереносе типа данных в PostGIS, и, надеюсь, скоро над этим поработаем . В то же время, есть интересная утилита points2grid для PDAL , но я ее не использовал.
Майк Т

Ответы:

2

Вы можете сделать это с помощью SAGA , в Windows или в Linux. SAGA может обрабатывать большие наборы данных, импортированные в формате SAGA в формате pointcloud (spc). Тогда у вас есть функции для интерполяции или триангуляции, а также экспорта в Surfer. Автоматизация осуществляется с помощью командного инструмента SAGA .

Никулита Михай
источник
Импортируйте в CVS, вы можете поместить это в bashscript с помощью команды psql COPY (SELECT foo, bar ОТ чего угодно) TO '/tmp/ouput.csv' DELIMITER ',' CSV HEADER; При этом вы можете удалить QGIS из цепочки инструментов
simplexio
2

Если у вас есть исходные данные LIDAR в .las / laz, вы можете использовать lastools, http://www.cs.unc.edu/~isenburg/lastools/ для работы с большими данными LiDAR. Есть las2tin и las2dem, которые выглядят так, как будто они работают напрямую, но я ими не пользовался. Я использовал ниже, чтобы собрать набор файлов .laz в растровую матрицу высот в GRASS:

cat *.laz |~/Downloads/SRC/lastools/bin/las2txt -stdin  -parse xyztc -header pound -otxt |invproj -v -f %.9f +init=epsg:2284 |sed -e 's// /' | r.in.xyz input=- output=lidarJunk method=min type=FCELL x=1 y=2 z=3 fs=\    zscale=1.0 percent=100 --overwrite  
# the sed and fs=\ bits are for dealing with reformatting spaces and tabs between invproj and r.in.xyz

Lastools хорошо автоматизировал бы и выглядел бы так, как будто бы они могли обрезать данные для матрицы высот или TIN до границ по вашему выбору.

Дэйв Икс
источник