在QGIS中执行栅格重分类?


26

有没有一种方法可以在QGIS中对栅格图像进行重新分类?

在ArcGIS中,您可以在空间分析器工具→重新分类→重新分类中进行操作

有任何想法吗?

重分类窗口的屏幕截图


另一种方法是使用栅格计算器。它在此条目中进行了解释hub.qgis.org/issues/7581

1
您链接到描述解决方法的页面,并指出“解决方法很糟糕”!
whuber

我发现的最佳解决方案是在此线程中:gis.stackexchange.com/questions/121532/reclass-in-qgis
DPSSpatial

Answers:


21

使用GRASS和r.reclass模块,可以。但是,您实际上需要使用关键字“ thru”。

示例:对于栅格高程网格,要基于100m间隔重新分类为值:

500至599.99 = 500

600至699.99 = 600

700至799.99 = 700

等等。然后将其保存到记事本文本文档中(行之间没有空格)。然后,在打开r.reclass模块时,您只需将该规则文件加载到gui中就可以了。

经验:周末,我刚刚使用这种方法对塔吉克斯坦论文项目的DEM进行了重新分类,并且效果很好。

*注意(注意事项):您可能会考虑对此过程进行建模,甚至使用GDAL在Arc中使用的输出旁边输出* .prj文件,因为到目前为止我所看到的输出都不包含Arc可读的投影定义。如果您坚持使用QGIS,那么您应该很擅长。

与任何QGIS / GRASS / GDAL流程一样,还要确保下载了OSGeo4W安装程序,以确保您拥有最新的内容:http ://trac.osgeo.org/osgeo4w/

希望这可以帮助。


2
r.reclass仅接受整数
尼克

10

我能够使用栅格计算器对栅格进行重新分类

此处,“人居”栅格从连续值(0-1)重分类为离散值1,2,3

("Habitat@1"  < 0.3)* 1 + (("Habitat@1" >= 0.3) AND ("Habitat@1" < 0.6)) *2  + ("Habitat@1"  >=0.6)* 3

9

通过工具箱的“高级界面”选项,我使用了SAGA GIS中的“ 重新分类网格值 ”,这是一个非常直观的工具,具有按单个值,范围和使用表进行重新分类的选项。

与r.reclass相比,我更喜欢这样做,因为您不必创建其他文件。


5

更简单的方法是使用GRASS(也使用QGIS / GRASS插件)和r.reclass模块。

您将需要创建一个重分类规则文件,您可以在其中使用关键字“直通”或通配符“ *”对一个规则中的多个值进行重分类。


您知道GRASS工具的重分类表文件应该是什么样的吗?
DPSSpatial


太好了-我知道了,它真的很快,...谢谢!
DPSSpatial '16

2

我想我的帖子并没有准确地回答这个问题,但是它可能会提供一些帮助。我没有在QGIS中找到一种简单的方法来执行此操作,例如Br​​yce,我使用GRASS模块。但是,如果有ArcGIS但没有Spatial Analyst,则还有另一个很棒的工具:GME(http://www.spatialecology.com/gme/)。它依赖于ArcGIS和R,并且具有许多非常出色的功能,其中之一是“重新分类”。在这里,就像在GRASS中一样,您需要创建一个包含类定义的文本文件。我已经使用ArcMap首先以不同的方式可视化问题栅格,以更好地了解数据的外观。然后,我根据该信息定义了新类。它对我来说就像是一种魅力。我不知道GME是否可以在没有ArcGIS的系统上运行,我很好奇。


1

QGIS现在具有两种本机栅格重分类算法

按图层重新分类-允许您使用矢量图层来指定范围

按表重新分类-与ArcGIS栅格重新分类空间分析工具非常相似。

这些已添加到QGIS 3.2中,请参见此处的更改日志。


0

如果您不喜欢草皮界面,那么光栅计算器是您最好的选择

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.