ee.Kernel.add

在对齐两个核的中心后,按元素添加这两个核。

用法返回
Kernel.add(kernel2, normalize)内核
参数类型详细信息
此:kernel1内核第一个内核。
kernel2内核第二个内核。
normalize布尔值,默认值:false对内核进行归一化处理。

示例

代码编辑器 (JavaScript)

// Two kernels, they do not need to have the same dimensions.
var kernelA = ee.Kernel.chebyshev({radius: 3});
var kernelB = ee.Kernel.square({radius: 1, normalize: false, magnitude: 100});
print(kernelA, kernelB);

/**
 * Two kernel weights matrices
 *
 *   [3, 3, 3, 3, 3, 3, 3]
 *   [3, 2, 2, 2, 2, 2, 3]
 *   [3, 2, 1, 1, 1, 2, 3]       [100, 100, 100]
 * A [3, 2, 1, 0, 1, 2, 3]     B [100, 100, 100]
 *   [3, 2, 1, 1, 1, 2, 3]       [100, 100, 100]
 *   [3, 2, 2, 2, 2, 2, 3]
 *   [3, 3, 3, 3, 3, 3, 3]
 */

print('Pointwise addition of two kernels', kernelA.add(kernelB));

/**
 * [3, 3,   3,   3,   3, 3, 3]
 * [3, 2,   2,   2,   2, 2, 3]
 * [3, 2, 101, 101, 101, 2, 3]
 * [3, 2, 101, 100, 101, 2, 3]
 * [3, 2, 101, 101, 101, 2, 3]
 * [3, 2,   2,   2,   2, 2, 3]
 * [3, 3,   3,   3,   3, 3, 3]
 */

Python 设置

如需了解 Python API 和如何使用 geemap 进行交互式开发,请参阅 Python 环境页面。

import ee
import geemap.core as geemap

Colab (Python)

from pprint import pprint

# Two kernels, they do not need to have the same dimensions.
kernel_a = ee.Kernel.chebyshev(**{'radius': ee.Number(3)})
kernel_b = ee.Kernel.square(**{
    'radius': 1,
    'normalize': False,
    'magnitude': 100
})
pprint(kernel_a.getInfo())
pprint(kernel_b.getInfo())

#  Two kernel weights matrices

#   [3, 3, 3, 3, 3, 3, 3]
#   [3, 2, 2, 2, 2, 2, 3]
#   [3, 2, 1, 1, 1, 2, 3]       [100, 100, 100]
# A [3, 2, 1, 0, 1, 2, 3]     B [100, 100, 100]
#   [3, 2, 1, 1, 1, 2, 3]       [100, 100, 100]
#   [3, 2, 2, 2, 2, 2, 3]
#   [3, 3, 3, 3, 3, 3, 3]

print('Pointwise addition of two kernels:')
pprint(kernel_a.add(kernel_b).getInfo())

#  [3, 3,   3,   3,   3, 3, 3]
#  [3, 2,   2,   2,   2, 2, 3]
#  [3, 2, 101, 101, 101, 2, 3]
#  [3, 2, 101, 100, 101, 2, 3]
#  [3, 2, 101, 101, 101, 2, 3]
#  [3, 2,   2,   2,   2, 2, 3]
#  [3, 3,   3,   3,   3, 3, 3]