边界清理 (Spatial Analyst)
插图
用法
-
将更改 x 和 y 方向上所有少于三个像元的区域。
ONE_WAY 平滑过程(扩展-收缩过程运行一次)或 TWO_WAY 平滑过程的第一个过程中发生的收缩不同于 TWO_WAY 平滑过程的第二个过程中发生的收缩。
在第一个过程中,对于扩展栅格中的任意待处理像元,如果其邻近像元具有待处理像元的原始值,则将恢复该待处理像元的原始值。在 TWO_WAY 平滑过程的第二个过程中,如果扩展栅格中的任意像元周围的八个像元的值不完全相同,则将恢复该像元的原始值。
-
第一个过程和第二个过程发生的扩展完全相同。
-
值为 NoData 的输入像元在 ONE_WAY 排序类型或在 TWO_WAY 排序的第一次运行中具有最低的优先级。在 TWO_WAY 排序的第二次排序中,NoData 像元拥有最高优先级。
语法
BoundaryClean (in_raster, {sort_type}, {number_of_runs})
参数 | 说明 | 数据类型 |
in_raster |
将平滑区域之间边界的输入栅格。 必须为整型。 | Raster Layer |
sort_type (可选) |
指定要在平滑处理中使用的排序类型。 这将确定像元可扩展到相邻像元的优先级。
| String |
number_of_runs (可选) |
指定发生平滑处理过程的方向的数目。
| Boolean |
返回值
名称 | 说明 | 数据类型 |
out_raster |
输出概化的栅格。 将对输入中的区域间边界进行平滑处理。 | Raster |
代码示例
边界清理 (BoundaryClean) 示例 1(Python 窗口)
本示例执行双向处理以降序顺序平滑区域间边界。
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" OutBndCln = BoundaryClean("land", "DESCEND", "TWO_WAY") OutBndCln.save("c:/sapyexamples/output/bndcln_des2")
边界清理 (BoundaryClean) 示例 2(独立脚本)
本示例执行双向处理以降序顺序平滑区域间边界。
# Name: BoundaryClean_Ex_02.py # Description: Smoothes the boundary between zones # by expanding and shrinking it. # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inRaster = "land" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute BoundaryClean OutBndCln = BoundaryClean(inRaster, "ASCEND", "TWO_WAY") # Save the output OutBndCln.save("c:/sapyexamples/output/bndcln_asc2")
相关主题
许可信息
ArcView: 需要 Spatial Analyst
ArcEditor: 需要 Spatial Analyst
ArcInfo: 需要 Spatial Analyst
7/10/2012