Страница 1 из 1
gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:27
Voltron
Понадобилось найти несколько файлов для тестирования
gdal_fillnodata, Максим посоветовал поискать SRTM с «дырками» и попросил потом поделиться красивыми картинками, что я и делаю. Слева направо и сверху вниз: исходный фрагмент с «дырками», после обработки gdal_fillnodata, теневая отмывка по обработанному растру.

- N32w017
- n320n017.png (246.5 КБ) 7807 просмотров
Видно, что для больших «дырок» результат не очень хорош. Возможно, поигравшись с настройками, его можно улучшить. Еще один пример

- N46E009
- n46e009.png (1.02 МБ) 7807 просмотров
Re: gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:29
Максим Дубинин
а в коде реально отрегулировать размеры заливаемых пропусков? и еще, понятно ли из него вообще какой там алгоритм работы однопроходный или итерационный какой-то?
Re: gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:36
Voltron
Можно задать радиус поиска значений (как далеко от дырки искать) и количество проходов интерполяции (по умолчанию проход один). Сама интерполяция выполяется с использованием окна 3x3.
В коде алгоритм описан как
This algorithm will interpolate values for all designated nodata pixels (marked by zeros in hMaskBand). For each pixel a four direction conic search is done to find values to interpolate from (using inverse distance weighting). Once all values are interpolated, zero or more smoothing iterations (3x3 average filters on interpolated pixels) are applied to smooth out artifacts.
Re: gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:38
Александр Мурый
Вообще было бы неплохо увидеть примеры
gdal_fillnodata с параметрами
Ну и интересно сравнить с работой грассовского
r.fillnulls (он неплохо "латает" дыры в том же SRTM интерполяцией сплайнами).
А здесь, как я понял, IDW ?
Re: gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:46
Voltron
С какими параметрами? Все с настройками по умолчанию, т.е. радиус поиска 100 пикселей, без сглаживания.
Сравнивать с GRASS не берусь, сказать какой именно алгоритм тоже не скажу, т.к. разбираться в коде мне сейчас не хочется
Re: gdal_fillnodata: примеры обработки
Добавлено: 07 ноя 2011, 22:53
Александр Мурый
Voltron писал(а):С какими параметрами? Все с настройками по умолчанию, т.е. радиус поиска 100 пикселей, без сглаживания.
Спасибо, этих сведений-то я и домогался
Voltron писал(а):Сравнивать с GRASS не берусь, сказать какой именно алгоритм тоже не скажу, т.к. разбираться в коде мне сейчас не хочется
Сам сравню, это были просто мысли вслух.
Можно попросить сделать в
gdal_countour изолинии с каким-нибудь шагом по "исправленным" первому и второму рельефу и выложить картинки? Заранее спасибо.
Re: gdal_fillnodata: примеры обработки
Добавлено: 08 ноя 2011, 12:27
Voltron
amuriy писал(а):Можно попросить сделать в gdal_countour изолинии с каким-нибудь шагом по "исправленным" первому и второму рельефу и выложить картинки? Заранее спасибо.
Команда
Код: Выделить всё
gdal_contour -i 500.0 inraster.tif outlines.shp
Результаты

- N32W017
- isol-02.png (122.6 КБ) 7746 просмотров

- N46E009
- isol-01.png (523.2 КБ) 7746 просмотров