应用复杂数据过滤器 (Image Analyst)

获得 Image Analyst 许可后可用。

摘要

平滑合成孔径雷达 (SAR) 复合输入数据的相位分量,并输出复合雷达数据。

使用情况

  • 输入必须是复杂数据。

  • alpha 值越高,所应用的过滤功能就越强大。 使用更强大的过滤器会使相位更加平滑,但准确性不一定提高。

    使用过大的 alpha 值会降低输出雷达数据的分辨率。

    使用过小的 alpha 值会导致输出存在噪声。

  • 过滤器类型参数的 Goldstein 相位过滤器选项使用外部窗口计算相位方差。 相位方差是一种相干性测量值。 如果外部窗口中的相位值显示出高可变性,这种状态表明相干性较低,则使用较小的内部窗口进行过滤。

参数

标注说明数据类型
输入雷达数据

输入复杂雷达数据。

Raster Dataset; Raster Layer
输出雷达数据

经过相位过滤的复数雷达数据。

Raster Dataset
极化波段
(可选)

将过滤的极化波段。

默认情况下,第一个波段处于选中状态。

String
滤波器类型
(可选)

将应用的过滤类型。

  • Goldstein 相位过滤器将应用利用相干性来适配窗口大小,从而实现最佳过滤的非线性自适应算法。 这是默认设置。
String
透明度
(可选)

将应用的过滤强度。 值范围为从 0 到 1.0。

值为 0 表示不应用任何过滤。 值为 0.5 表示将应用中等过滤。 值为 1 表示将应用最大过滤。

默认值为 0.5。

Double
内部窗口大小
(可选)

内部过滤窗口大小。 该窗口用于过滤高一致性区域的相位值。 默认值为 8 像素。

Long
外部窗口大小
(可选)

外部过滤窗口大小。 该窗口用于过滤低一致性区域的相位值。 默认值为 64 像素。

Long

ApplyComplexDataFilter(in_radar_data, out_radar_data, {polarization_bands}, {filter_type}, {alpha}, {inner_window_size}, {outer_window_size})
名称说明数据类型
in_radar_data

输入复杂雷达数据。

Raster Dataset; Raster Layer
out_radar_data

经过相位过滤的复数雷达数据。

Raster Dataset
polarization_bands
[polarization_bands,...]
(可选)

将过滤的极化波段。

默认情况下,第一个波段处于选中状态。

String
filter_type
(可选)

将应用的过滤类型。

  • GOLDSTEIN_PHASE_FILTER将应用利用相干性来适配窗口大小,从而实现最佳过滤的非线性自适应算法。 这是默认设置。
String
alpha
(可选)

将应用的过滤强度。 值范围为从 0 到 1.0。

值为 0 表示不应用任何过滤。 值为 0.5 表示将应用中等过滤。 值为 1 表示将应用最大过滤。

默认值为 0.5。

Double
inner_window_size
(可选)

内部过滤窗口大小。 该窗口用于过滤高一致性区域的相位值。 默认值为 8 像素。

Long
outer_window_size
(可选)

外部过滤窗口大小。 该窗口用于过滤低一致性区域的相位值。 默认值为 64 像素。

Long

代码示例

ApplyComplexDataFilter 示例 1(Python 窗口)

在此示例中,ApplyComplexDataFilter 函数应用于 VV 极化。

import arcpy
arcpy.env.workspace = r"C:\Data\SAR"

outRadar = arcpy.ia.ApplyComplexDataFilter("S1B_IW_20181014_20181020_igram_ml.tif", 
    "VV", "GOLDSTEIN_PHASE_FILTERING", 0.5, 8, 64)
outRadar.save("S1B_IW_20181014_20181020_igram_ml _filt.crf")
ApplyComplexDataFilter 示例 2(独立脚本)

在此示例中,ApplyComplexDataFilter 函数应用于 VV 极化。

# Import system modules and check out ArcGIS Image Analyst extension license
import arcpy
arcpy.CheckOutExtension("ImageAnalyst")
from arcpy.ia import *

# Set local variables
in_radar=r"C:\Sentinel_1\S1B_IW_20181014_20181020_igram_ml.crf"
out_radar=r"C:\Sentinel_1\S1B_IW_20181014_20181020_igram_ml _filt.crf"
polarization="VV"
filter_type="GOLDSTEIN_PHASE_FILTERING"
alpha=0.5
inner_window=8
outer_window=64

# Execute 
outRadar = arcpy.ia.ApplyComplexDataFilter(in_radar, polarization, filter_type, 
    alpha, inner_window, outer_window)
outRadar.save(out_radar)

许可信息

  • Basic: 需要 Image Analyst
  • Standard: 需要 Image Analyst
  • Advanced: 需要 Image Analyst

相关主题