栅格泛化-栅格中的缓冲区,扩展像素?


12

是否可以为栅格文件的像素创建缓冲区?实际上,我需要使用1或2个像素的空间范围来扩展分类为1(图中为白色)的像素,以便进行一些概括。我正在使用QGIS,gdal或其他工具有可能吗?

在此处输入图片说明

Answers:


13

QGIS提供了GRASS GIS的接口,接口从栅格GIS开始就已经存在,因此应提供一些有效的工具来解决此问题。参考其栅格命令手册页,我们可以找到以下解决方案:

r.buffer-白细胞的直接缓冲

r.cost-可以计算到白细胞的距离。在此之后进行比较以选择短距离单元。

r.grow-一种局部形态学操作,专门用于将白细胞扩展为它们的近邻。

r.mfilter-通用焦点滤镜 各种焦点统计数据(例如最大值,平均值,总和,中位数和标准偏差)可以检测局部邻域内白细胞的存在。然后进行比较以选择此类单元格。

r.neighbors-更为通用的焦点滤镜,可以类似于r.mfilter来使用。

r.resample-重采样到更粗糙的网格上是扩展白细胞的一种方法。结果将有些“块状”。

r.spread-让白细胞“扩散”到它们的邻域中将实现所需的缓冲。

我们应该期望r.buffer,r.grow以及r.mfilter使用最有效的代码。(我没有测试这些来找出。)


1

我认为这是可能的。我不确定您是否可以使用QGIS进行此操作,因为我对此不太了解。QGIS可以进行邻近统计吗?假设黑色像素为零,白色像素为1,则计算单元格最大值的3x3邻域统计函数将为白色边框的相邻像素得出“ 1”。然后,您可以在第二个过程中隔离这些像素(或针对第二行像素第二次运行邻域统计信息)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.