Обобщение растра - буферы в растрах, расширение пикселей?

12

Можно ли создавать буферы для пикселей растровых файлов? На самом деле мне нужно расширить пиксели, классифицированные как 1 (белым на рисунке) с пространственным диапазоном 1 или 2 пикселей, чтобы выполнить некоторое обобщение. Я использую QGIS, это возможно с GDAL или что-то?

введите описание изображения здесь

vascobnunes
источник

Ответы:

13

QGIS предоставляет интерфейс для GRASS GIS, которая начала свою жизнь как растровая ГИС и поэтому должна предоставить некоторые эффективные инструменты для решения этой проблемы. Ссылаясь на страницы справочника растровых команд, мы можем найти следующие решения:

r.buffer - прямая буферизация белых клеток.

r.cost - может вычислять расстояния до белых клеток. Затем сравните, чтобы выбрать ячейки на короткие расстояния.

r.grow - локальная морфологическая операция, разработанная специально для расширения белых клеток в их непосредственных соседей.

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

r.neighbors - еще более общий фокусный фильтр, который можно использовать аналогично r.mfilter.

r.resample - повторная выборка на более грубую сетку является одним из способов расширения белых клеток. Результат будет несколько «блочным».

Распространение - позволяя белым клеткам «распространяться» в их окрестности, вы достигнете желаемой буферизации.

Мы должны ожидать, что r.buffer, r.grow и, возможно, r.mfilter будут использовать наиболее эффективный код. (Я не проверял это, чтобы узнать.)

Whuber
источник
1

Я бы сказал, что это возможно. Я просто не уверен, что вы можете сделать это с QGIS, так как я не знаю это достаточно хорошо. Может ли QGIS вести статистику соседства? Если предположить, что черные пиксели равны нулю, а белые пиксели равны 1, тогда статистическая функция соседства 3x3, вычисляющая максимум ячеек, приведет к значению «1» для смежных пикселей белой границы. Затем вы можете выделить эти пиксели во второй процедуре (или запустить статистику соседства во второй раз для второй строки пикселей).

G-мастера
источник