27.1.13. 栅格地形分析
27.1.13.1. 方面
在输入中计算数字地形模型的纵横比。最后一个纵横比栅格图层包含从0到360的值,表示坡度方向,从北(0°)开始,沿顺时针方向继续。

图 27.21 纵横比值
下图显示了使用色带重新分类的Aspect层:

图 27.22 纵横比层重新分类
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Elevation layer |
|
[raster] |
数字地形模型栅格图层 |
Z factor |
|
[number] 默认:1.0 |
垂直夸张。当Z单位不同于X和Y单位时,此参数非常有用,例如英尺和米。您可以使用此参数对此进行调整。默认值为1(无夸张)。 |
Aspect |
|
[raster] 默认: |
指定输出纵横比栅格层。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Aspect |
|
[raster] |
输出纵横比栅格图层 |
Python代码
Algorithm ID : qgis:aspect
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.2. DTM滤波器(基于斜率)
NEW in 3.34
可用于过滤数字高程模型,以便将其单元划分为地面单元和对象(非地面)单元。
该工具使用了Vosselman(2000)所描述的概念,并基于这样的假设:附近两个单元格之间的高度差不太可能是由地形中的陡坡引起的。当两个单元格之间的距离减小时,较高单元格可能是非接地单元的概率增加。因此,过滤器定义了最大高度差 (dz_max
)作为距离的函数的两个单元之间 (d
)单元格之间 (dz_max( d ) = d
)。如果在核半径内没有单元格的高度差大于这两个单元格之间的距离处允许的最大高度差,则该单元格被归类为地形。
近似地形坡度 (s
)参数用于修改过滤函数以匹配研究区域的整体坡度 (dz_max( d ) = d * s
)。5%的可信区间 (ci = 1.65 * sqrt( 2 * stddev )
)可用于通过以下任一方式进一步修改滤波函数 (dz_max( d ) = d * s + ci
)或放大 (dz_max( d ) = d * s - ci
)过滤准则。
References: Vosselman, G. (2000): Slope based filtering of laser altimetry data. IAPRS, Vol. XXXIII, Part B3, Amsterdam, The Netherlands, 935-942
参见
这个工具是传奇故事的一个端口。 DTM Filter (slope-based)
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[raster] |
数字地形模型栅格图层 |
Band number |
|
[number] [list] |
DEM要考虑的波段 |
Kernel radius (pixels) |
|
[number] 默认:5 |
过滤器内核的半径(以像素为单位)。必须足够大,才能接触到非地面物体旁边的地面单元。 |
Terrain slope (%, pixel size/vertical units) |
|
[number] 默认:30 |
中的近似地形坡度 |
Filter modification |
|
[list] 默认:0 |
选择是在不修改的情况下应用过滤器核,还是使用置信度区间来放宽或放大高度标准。
|
Standard deviation |
|
[number] 默认:0.1 |
用于计算应用于身高阈值的5%可信区间的标准偏差。 |
Output layer (ground) 任选 |
|
[raster] 默认: |
指定仅包含分类为GROUND的单元的过滤DEM。以下选项之一:
|
Output layer (non-ground objects) 任选 |
|
[raster] 默认: |
指定过滤器删除的非地面对象。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Output layer (ground) |
|
[raster] |
过滤后的DEM只包含分类为地面的单元。 |
Output layer (non-ground objects) |
|
[raster] |
滤镜移除的非地面对象。 |
Python代码
Algorithm ID : native:dtmslopebasedfilter
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.3. 山体阴影
在给定输入数字地形模型的情况下计算山体阴影栅格图层。
层的着色是根据太阳位置计算的:您可以选择更改太阳的水平角度(方位角)和垂直角度(太阳仰角)。

图 27.23 方位角和垂直角
山体阴影层包含从0(完全阴影)到255(完全阳光)的值。山体阴影通常被用来更好地了解该地区的地形。

图 27.24 方位角为300、垂直角为45的山体阴影图层
特别有趣的是,为山体阴影层指定透明度值并将其与高程栅格重叠:

图 27.25 将山体阴影与高程层重叠
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Elevation layer |
|
[raster] |
数字地形模型栅格图层 |
Z factor |
|
[number] 默认:1.0 |
垂直夸张。当Z单位不同于X和Y单位时,此参数非常有用,例如英尺和米。您可以使用此参数对此进行调整。增加此参数的值将夸大最终结果(使其看起来更像山)。默认值为1(无夸张)。 |
Azimuth (horizontal angle) |
|
[number] 默认:300.0 |
设置太阳的水平角度(以度为单位)(顺时针方向)。范围:0到360。0表示北方。 |
Vertical angle |
|
[number] 默认:40.0 |
设置太阳的垂直角度(以度为单位),即太阳的高度。值可以从0(最小高程)到90(最大高程)。 |
Hillshade |
|
[raster] 默认: |
指定输出山体阴影栅格图层。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Hillshade |
|
[raster] |
输出的山体阴影栅格图层 |
Python代码
Algorithm ID : qgis:hillshade
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.4. 高程曲线
计算输入数字高程模型的高程曲线。曲线在用户指定的输出文件夹中作为CSV文件生成。
高度测量曲线是地理区域中高程值的累积直方图。
您可以使用高海拔曲线来检测由于该领土的地貌而导致的景观差异。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
DEM to analyze |
|
[raster] |
用于计算高程的数字Terrain模型栅格图层 |
Boundary layer |
|
[vector: polygon] |
具有用于计算高程曲线的区域边界的多边形矢量图层 |
Step |
|
[number] 默认:100.0 |
曲线之间的垂直距离 |
Use % of area instead of absolute value |
|
[boolean] 默认:FALSE |
将面积百分比写入CSV文件的“Area”字段,而不是绝对面积 |
Hypsometric curves |
|
[folder] |
指定高度测量曲线的输出文件夹。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Hypsometric curves |
|
[folder] |
包含具有高度测量曲线的文件的目录。对于输入矢量层中的每个要素,将创建一个CSV文件,其中包含面积和高度值。 文件名以 |

Python代码
Algorithm ID : qgis:hypsometriccurves
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.5. 浮雕
从数字高程数据创建着色地貌图层。您可以手动指定浮雕颜色,也可以让算法自动选择所有浮雕类。

图 27.26 浮雕层
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Elevation layer |
|
[raster] |
数字地形模型栅格图层 |
Z factor |
|
[number] 默认:1.0 |
垂直夸张。当Z单位不同于X和Y单位时,此参数非常有用,例如英尺和米。您可以使用此参数对此进行调整。增加此参数的值将夸大最终结果(使其看起来更像山)。默认值为1(无夸张)。 |
Generate relief classes automatically |
|
[boolean] 默认:FALSE |
如果选中此选项,算法将自动创建所有地貌颜色类 |
Relief colors 任选 |
|
[table widget] |
如果要手动选择浮雕颜色,请使用表格小工具。您可以添加任意数量的颜色类:对于每个类,您可以选择下限和上限,最后通过单击颜色行,您可以选择颜色,这要归功于颜色小部件。 ![]() 图 27.27 手动设置浮雕颜色类别 通过右侧面板中的按钮,您可以:添加或删除颜色类、更改已定义的颜色类的顺序、打开包含颜色类的现有文件以及将当前类另存为文件。 |
Relief |
|
[raster] 默认: |
指定输出释压栅格图层。以下选项之一:
|
Frequency distribution 任选 |
|
[table] 默认: |
指定输出频率分布的CSV表。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Relief |
|
[raster] |
输出起伏栅格图层 |
Frequency distribution |
|
[table] |
输出频率分布 |
Python代码
Algorithm ID : qgis:relief
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.6. 坚固性指数
计算了Riley等人描述的地形异质性的定量测量。(1999年)。通过汇总3x3像素网格内的高程变化,计算每个位置的高程。
每个像素包含一个中心单元格和它周围的8个单元格的高程差。

图 27.28 坚固度层从低(红色)到高值(绿色)
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Elevation layer |
|
[raster] |
数字地形模型栅格图层 |
Z factor |
|
[number] 默认:1.0 |
垂直夸张。当Z单位不同于X和Y单位时,此参数非常有用,例如英尺和米。您可以使用此参数对此进行调整。增加该参数的值将夸大最终结果(使其看起来更粗糙)。默认值为1(无夸张)。 |
Ruggedness |
|
[raster] 默认: |
指定输出粗糙度栅格图层。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Ruggedness |
|
[raster] |
输出的粗糙度栅格图层 |
Python代码
Algorithm ID : qgis:ruggednessindex
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.13.7. 坡度
从输入栅格图层计算坡度。坡度是地形的倾斜角,表示为 degrees 。

图 27.29 平坦的区域为红色,陡峭的区域为蓝色
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Elevation layer |
|
[raster] |
数字地形模型栅格图层 |
Z factor |
|
[number] 默认:1.0 |
垂直夸张。当Z单位不同于X和Y单位时,此参数非常有用,例如英尺和米。您可以使用此参数对此进行调整。增加此参数的值将夸大最终结果(使其更陡峭)。默认值为1(无夸张)。 |
Slope |
|
[raster] 默认: |
指定输出坡度栅格图层。以下选项之一:
|
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Slope |
|
[raster] |
输出坡度栅格图层 |
Python代码
Algorithm ID : qgis:slope
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。