Страница 1 из 1

Сглаживание после gdal_contour?

Добавлено: 03 июн 2010, 12:19
Aequilibrium
Всем привет,

Вопрос, наверное, не для этого подфорума, но все же. Как можно сгладить (н-р кубическим сплайном) ломаные линии контуров в shp после gdal_contour? Думаю, в матлабе это получится сделать, но может быть есть какие-то специализированные утилиты в том же GRASS или где-то еще?

Спасибо

Re: Сглаживание после gdal_contour?

Добавлено: 03 июн 2010, 17:35
Максим Дубинин
Дуглас-Пойкер например
http://gis-lab.info/qa/dpsimplify.html

Re: Сглаживание после gdal_contour?

Добавлено: 03 июн 2010, 18:30
Voltron
Еще в fTools есть упрощалка и на панели редактирования QGIS тоже есть.

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 14:19
Aequilibrium
Спасибо всем за советы! Утилита из ftools глючит, увы (вылет всего qgis), а вот гис-лабовская работает нормально. Есть мысль кое-что интересное свое сгородить в этом направлении (поскольку результат требуется несколько отличный от того, что можно получить имеющимися утилитами), если получится - отпишусь.

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 15:12
Александр Мурый
в GRASS есть модуль v.generalize

Алгоритмы:
douglas: Douglas-Peucker Algorithm
douglas_reduction: Douglas-Peucker Algorithm with reduction parameter
lang: Lang Simplification Algorithm
reduction: Vertex Reduction Algorithm eliminates points close to each other
reumann: Reumann-Witkam Algorithm
remove_small: Removes lines shorter than threshold and areas of area less than threshold
boyle: Boyle's Forward-Looking Algorithm
sliding_averaging: McMaster's Sliding Averaging Algorithm
distance_weighting: McMaster's Distance-Weighting Algorithm
chaiken: Chaiken's Algorithm
hermite: Interpolation by Cubic Hermite Splines
snakes: Snakes method for line smoothing
network: Network generalization
displacement: Displacement of lines close to each other

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 19:37
Voltron
Aequilibrium писал(а):Утилита из ftools глючит, увы (вылет всего qgis), а вот гис-лабовская работает нормально.
Если дадите воспроизводимый пример, попробуем починить fTools.

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 20:50
Александр Мурый
примеры использования модуля v.generalize в GRASS:
http://grass.osgeo.org/wiki/V.generalize_tutorial

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 21:34
Aequilibrium
Да, по ближайшем рассмотрении грассовского вики желание что-то писать пропало. Думал сделать модуль под qgis с интерполяцией по Эрмиту и/или Безье, но, похоже аппарат интерполяции в грасс развит хорошо, всегда можно в нем сделать всю нужную обработку.

2voltron
В аттаче шейп-файл.
1) Add Vector layer
2) Vector->Geometry tools->Simplify
3) При нажатии на ОК вылетает сразу же (при любых значениях Tolerance)
Причина возможно в большом количестве точек в слое, или м.б. в наличии контуров, вырожденных в линию (имхо там могут быть такие), не знаю.

Re: Сглаживание после gdal_contour?

Добавлено: 08 июн 2010, 21:49
Максим Дубинин
Aequilibrium, пожалуйста сделайте, мы с удовольствием будем использовать и комментировать.

GRASS - хорошо, но не GRASS'ом единым.