Какой метод интерполяции подходит для батиметрии небольшого озера?

16

Это озеро приблизительно 13 га с 81 отобранной глубиной в 10 линиях разреза:

Отобранные точки

Ранее в ARCgis с озером площадью 50 га и точками отбора проб на глубине 100 я получил неплохой результат с помощью TopotoRasterинструмента. Однако такого точного эквивалента, по-видимому, не существует с QGIS или программным обеспечением с открытым исходным кодом.

В QGIS я получил интерполированный растр ниже, используя метод TIN в плагине Растровая интерполяция. Тем не менее, это казалось счастливым результатом, когда я попытался повторить, я получил другие результаты (неудовлетворительные), несмотря на то, что я не менял параметры.

Интерполированный растр

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

Существуют ли какие-либо эвристические методы, которые можно использовать здесь с учетом размера озера, его регулярного профиля и плотности точечной выборки, чтобы определить, какой метод интерполяции является подходящим? (между Кригингом, IDW, Билинейной, Кубической сверткой, TIN или сплайном)

Или это всегда проба и ошибка?

SaRo89
источник
Интуитивно, я думаю, что интерполяция с Nearest Neighbor имеет больше смысла, так как различия в глубинах относительно регулярны. Было бы замечательно, если бы кто-нибудь мог предложить ресурс, в котором изложены некоторые процедуры / руководящие принципы, чтобы обеспечить согласованный результат в отношении интерполяции такого рода и в других случаях.
SaRo89 10.09.16
Reefmaster создает красивые контуры и затененный рельеф с помощью TIN reefmaster.com.au/index.php/forum/support/… .
user30184 10.09.16
2
Глядя на изображение, QGIS не использует границу автоматически. Я бы добавил кучу точек с нулевой глубиной вдоль границы.
user30184 10.09.16
1
Похоже, что за границей находятся пробные точки, поэтому я подозреваю, что граница неправильная или есть неопределенность в местах батиметрии.
Spacedman
2
IDW лучше всего подходит, когда у вас есть относительно плотный набор точек над учебной областью, но вы предполагаете, что он имеет низкую плотность точек. В этом случае, возможно, Splining - хороший вариант, он сглаживает поверхность, которая, как я думаю, выглядит так, как выглядит дно озера (но я действительно не знаю) «Концептуально, это аналогично изгибу листа резины для прохождения через известные точки при минимизации общая кривизна поверхности. Этот метод лучше всего подходит для плавно меняющихся поверхностей, таких как высота над уровнем моря, высота уровня грунтовых вод или концентрация загрязнения ". - gisresources.com/types-interpolation-methods_3
ed.hank

Ответы:

10

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

Из QGIS используйте инструмент GRASS v.surf.rst:

Выполняет интерполяцию поверхности с векторной карты точек сплайнами.

Затем вы можете протестировать различные типы параметризации, доступные в инструменте. Для оптимизации параметров можно применить перекрестную проверку «один-один-один-один», которая будет постепенно изменять натяжение, сглаживание и т. Д .; чтобы найти минимальную прогностическую ошибку.

В соответствии с предложением user30184, убедитесь, что во входном наборе данных используются точки уровня земли на границах озера, чтобы избежать экстраполяции.

Андре Силва
источник
Сплайн - это то, что я использовал в проекте речной батиметрии, который я выполнял в качестве подрядчика для USGS. Я никогда не спрашивал, почему, но мы были довольны результатами. Я почти сделал аналогичный ответ, но я не был уверен в оправдании. Хороший ответ!
jbchurchill
Спасибо Андре, очень ценю ваш быстрый и четкий ответ. У меня возникли некоторые проблемы при попытке запустить v.surf.rst, в QGIS он отказался дать мне какой-либо правильный растровый вывод со значениями. Подозреваю, что есть некоторые проблемы с тем, как я проецировал данные. Когда я это выясню, я поставлю результаты в редакции на вопрос.
SaRo89