构建轮廓线 (Data Management)

许可等级:BasicStandardAdvanced

摘要

计算镶嵌数据集中每个栅格数据集的轮廓线。

用法

语法

BuildFootprints_management (in_mosaic_dataset, {where_clause}, {reset_footprint}, {min_data_value}, {max_data_value}, {approx_num_vertices}, {shrink_distance}, {maintain_edges}, {skip_derived_images}, {update_boundary}, {request_size}, {min_region_size}, {simplification_method}, {edge_tolerance}, {max_sliver_size}, {min_thinness_ratio})
参数说明数据类型
in_mosaic_dataset

将对其计算轮廓线的镶嵌数据集。

Image Service; Mosaic Layer; String
where_clause
(可选)

可以使用 SQL 定义查询,或者使用查询构建器构建查询。

SQL Expression
reset_footprint
(可选)

选择当重新定义轮廓线时要使用的方法。

  • RADIOMETRY可以根据像素值范围来重新定义轮廓线的形状。此选项通常用于重新定义轮廓线,以便排除未定义有效数据的边界区域。这是默认设置。
  • GEOMETRY将轮廓线的形状重新定义为其原始几何形状。
  • COPY_TO_SIBLING在使用全色锐化的栅格类型时,全色项的轮廓线将被替换为多光谱项的轮廓线。当全色图像和多光谱图像没有相同的几何形状时,有些栅格类型就会发生这种情况。
  • NONE不重新定义轮廓线。

Boolean; String
min_data_value
(可选)

表示有效图像数据的最低像素值。该值取决于栅格数据集的位深度。

例如,对于 8 位数据,该值可介于 0 到 255 之间。近似于 0 的值表示非常暗的颜色,如黑色边框像素。将该值指定为 1 时,小于 1 的值只有 0,因此,所有 0 值都将被视作无效的数据,并从轮廓线的周长中移除。如果使用有损压缩方法压缩影像,则应定义一个稍大于 1 的值,以便移除所有黑色像素。当发现错误地从轮廓线中移除黑色区域(如阴影)后,应减少该值。

Double
max_data_value
(可选)

表示有效数据的最高值。该值取决于栅格数据集的位深度。

例如,对于 8 位数据,该值可介于 0 到 255 之间。近似于 255 的值表示非常亮的颜色,如白云和雪。如果将该值指定为 245,则所有介于 246 和 255 之间的值都会从轮廓线的周长移除。

Double
approx_num_vertices
(可选)

创建新轮廓线面要使用的近似折点数。

最小值为 4,最大值为 10,000。该值越大,面越精确且越不规则,处理时间也越长。

值为 -1 时将在轮廓线中显示所有折点,这样就不会概化面轮廓线。

Long
shrink_distance
(可选)

以镶嵌数据集的坐标系单位指定的表示整个面的减小幅度的距离值。

面的收缩用于抵消有损压缩的影响,这会导致图像边缘与 NoData 区域重叠。

Double
maintain_edges
(可选)

在使用已分块且对接(或沿着接边对齐且基本没有重叠)的栅格数据集时使用此参数。

  • NO_MAINTAIN_EDGES将更改所有轮廓线,无论其邻近轮廓线如何。这是默认设置。
  • MAINTAIN_EDGES执行图像边缘分析以便不会移除页边缘。
Boolean
skip_derived_images
(可选)

调整派生图像(如服务金字塔)的轮廓线。

  • SKIP_DERIVED_IMAGES不调整派生图像(如服务金字塔)。这是默认设置。
  • NO_SKIP_DERIVED_IMAGES连同基础图像一起调整派生图像的轮廓线。
Boolean
update_boundary
(可选)

生成或更新镶嵌数据集的边界面。默认情况下,边界会合并所有轮廓线面以创建一个表示有效像素范围的边界。

  • UPDATE_BOUNDARY生成或更新边界。这是默认设置。
  • NO_BOUNDARY不生成或更新边界。
Boolean
request_size
(可选)

使用此工具检查栅格时对栅格进行重采样的大小。该值(如 2,000)使用行和列定义尺寸。

可以基于栅格数据的复杂程度增大或减小该值。图像分辨率越高,提供的栅格数据集信息越详细,因而也增加了处理时间。

值为 -1 时将不对轮廓线进行重新取样,因而将以原像素大小计算轮廓线。

请求大小不能超过轮廓线所包含的栅格。如果出现这种情况,则值将自动变为与栅格大小相同。

Long
min_region_size
(可选)

确定一个用来移除轮廓线中所创建的孔洞的过滤器。

该值按像素指定,直接与“请求大小”相关,而与源栅格的像素分辨率无关。

Long
simplification_method
(可选)

简化操作会减少折点的数量,因为密集的轮廓线可能会影响显示性能。

选择简化轮廓线所使用的方法。

  • NONE不会执行简化方法。这是默认设置。
  • CONVEX_HULL每个轮廓线的最小边界几何将用于简化轮廓线。
  • ENVELOPE每个镶嵌数据集项的包络矩形将提供简化的轮廓线。
String
edge_tolerance
(可选)

容差值以镶嵌数据集的坐标系单位指定,小于该容差值时,轮廓线将捕捉到页边缘。当 maintain_edges 设置为 MAINTAIN_EDGES 时使用此容差值。

默认情况下,基于与请求的重采样栅格对应的像素大小计算出来的容差值为空。

值为 -1 时,将使用镶嵌数据集的平均像素大小来计算容差。

Double
max_sliver_size
(可选)

确定一个用来标识轮廓线中所含狭长面的过滤器。

小于 max_sliver_size 的面将视为狭长面。该值按像素指定,直接与“请求大小”相关,而与源栅格的像素分辨率无关。

Long
min_thinness_ratio
(可选)

确定一个用来移除轮廓线中所含狭长面的过滤器。

小于 max_sliver_sizemin_thinness_ratio 的面将视为狭长面,并将从轮廓线中移除。

Double

代码实例

BuildFootprints 示例(Python 窗口)

这是 BuildFootprints 工具的 Python 示例。

import arcpy
arcpy.BuildFootprints_management(
     "c:/data/Footprints.gdb/md", "#","RADIOMETRY",
     "1", "254", "25", "0", "#", "SKIP_DERIVED_IMAGES", 
     "UPDATE_BOUNDARY", "#", "#", "CONVEX_HULL")
BuildFootPrints 示例 2(独立窗口)

这是 BuildFootprints 工具的 Python 脚本示例。

# Build Footprint by setting the valid pixel value range from 1 to 254
# Allow 25 vertices to be used to draw a single footprint polygon
# Skip the overviews image
# Build new boundary afterwards
# Build footprints based on minimum bounding geometry

import arcpy
arcpy.env.workspace = "C:/Workspace"

    
mdname = "Footprints.gdb/md"
query = "#"
method = "RADIOMETRY"
minval = "1"
maxval = "254"
nvertice = "25"
shrinkdis = "0"
maintainedge = "#"
skipovr = "SKIP_DERIVED_IMAGES"
updatebnd = "UPDATE_BOUNDARY"
requestsize = "#"
minregsize = "#"
simplify = "#"

arcpy.BuildFootprints_management(
     mdname, query, method, minval, maxval, nvertice, shrinkdis,
     maintainedge, skipovr, updatebnd, requestsize, minregsize, 
     simplify)

环境

相关主题

许可信息

ArcGIS for Desktop Basic: 否
ArcGIS for Desktop Standard: 是
ArcGIS for Desktop Advanced: 是
5/10/2014