以下从gee 官网翻译
gee中scale 表示像素分辨率,与其他GIS和图像处理平台不同,分析的规模由输出决定,而不是由输入决定。比如,当你从服务器请求返回一个图像或者统计结果时,您可以指定输入数据的scale到分析过程中,如下图所示:
图1 虚线表示聚合2x2块4像素的金字塔策略。gee使用由输出指定的比例来确定图像金字塔的适当级别作为输入。
图像金字塔
gee中的图像资产存在于多个尺度,在图像金字塔中。金字塔策略(图1中用虚线表示)决定了如何从下一层像素的2x2块聚合计算金字塔中给定级别的每个像素。对于连续值图像,金字塔的上一级像素值为下一级像素的均值。对于离散值图像,金字塔上层的像素值是下一层像素的样本(通常是左上角的像素)。
图像金字塔的最底层代表的是本地分辨率的图像数据,当它被地球引擎接收时。在摄取期间,数据被聚合(根据金字塔策略)以创建更高的金字塔级别。数据被聚合,直到整个图像符合一个256 × 256像素的图像块。当您在代码中使用图像时,Earth Engine选择金字塔的一个级别,其最接近的比例小于或等于您的分析指定的比例,并在必要时重新采样(默认使用最近邻)。
规模的分析
gee的scale是在“pull”的基础上确定的。请求输入到计算的比例由输出决定。例如,如果您使用map . addlayer()向地图添加图像,那么在代码编辑器中地图的缩放级别决定了从图像金字塔请求输入的比例。对于其他计算,可以指定尺度作为参数。例如,使用陆地卫星图像的近红外波段,其固有分辨率为30米:
在本例中,请注意一个常量位置上的像素值(图像质心)会根据比例而变化。这是由于不同的比例选择了不同的金字塔层次。对于相似的尺度,最近邻重采样结果返回相同的像素值。重要的一点是,通过改变比例,需要不同的图像输入。
当你将图像可视化到地图上时,地球引擎决定缩放级别。考虑以下简单的例子,它只是显示一幅陆地卫星图像:
var image = ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318');
Map.centerObject(image, 17);
Map.addLayer(image, {bands: ['B4', 'B3', 'B2'], max: 12000}, 'image');
地图开始一直放大,这样原生分辨率的像素就清晰可见了。缩小到足够远将不会显示相同的像素,而是显示更高级别的图像金字塔。还值得注意的是,代码编辑器映射使用墨卡托投影(EPSG:3857)映射,因此在显示之前也需要重新投影图像金字塔的适当级别。从投影文档了解更多关于地球引擎如何处理投影的信息。