咸阳免费做网站公司,河南省建设工程信息网推荐中项网,南昌做网站哪家便宜,58.搜房等网站怎么做效果才好掩膜
在遥感图像处理中#xff0c;掩膜是指一种用于隐藏或保留图像特定部分的技术。掩膜通常是一个二进制图像#xff0c;其中的像素值为0或1#xff0c;分别表示遮蔽或保留。
在去除云的情境中#xff0c;掩膜通常用于隐藏图像中被云覆盖的部分#…掩膜
在遥感图像处理中掩膜是指一种用于隐藏或保留图像特定部分的技术。掩膜通常是一个二进制图像其中的像素值为0或1分别表示遮蔽或保留。
在去除云的情境中掩膜通常用于隐藏图像中被云覆盖的部分使得在分析中只考虑云影响较小或不受云覆盖的区域。这通过将云检测的结果与原始图像相乘来实现其中云检测结果中的云部分对应的像素值为0其他部分为1。这样相乘后原始图像中的云部分就被设置为0即被遮蔽而其他部分保留。
遥感分类系数指标
遥感分类系数是用于评估遥感图像分类结果的指标常见的包括
生产者精度Producer’s Accuracy 正确分类为某一类别的样本数与该类别所有样本数的比值衡量分类模型对某一类别的识别准确度。用户精度User’s Accuracy 正确分类为某一类别的样本数与模型对该类别所有样本的分类结果的比值衡量分类模型的分类准确度。总体精度Overall Accuracy 全部正确分类的样本数与总样本数的比值是整体分类准确度的度量。Kappa系数Kappa Coefficient 用于考量分类结果与随机分类之间的差异是一种综合考虑生产者精度和用户精度的指标。混淆矩阵Confusion Matrix 包含了模型对每个类别的分类情况可用于详细分析模型的分类性能。 通过混淆矩阵可以计算出上述提到的生产者精度、用户精度、总体精度等指标。具体而言混淆矩阵的四个要素分别是 True PositiveTP实际为正类别模型预测为正类别。True NegativeTN实际为负类别模型预测为负类别。False PositiveFP实际为负类别模型预测为正类别。False NegativeFN实际为正类别模型预测为负类别。 常用数据选Collection2 Tier1 的好数据 JRC水体数据 GAIA不透水面数据 ESA土地利用分类数据 ERA5温度和降水数据 Join
ee.Join.inner(primaryKey, secondaryKey, measureKey)
返回将主集合中的元素与次集合中的匹配元素配对的连接。每个结果都有一个包含主集合中元素的 主 属性以及一个包含次集合中匹配元素的 次 属性。如果指定了 measureKey则连接措施也会作为一个属性附加到对象上。
ArgumentTypeDetailsprimaryKeyString, default: “primary”用于保存主匹配的属性名称。secondaryKeyString, default: “secondary”用于保存二级匹配的属性名称。measureKeyString, default: null可选的属性名称用于保存连接条件的度量值。
Join.apply(primary, secondary, condition)
用于将两个集合比如图像集或特征集根据特定条件进行连接
ArgumentTypeDetailsprimaryFeatureCollection主要的集合通常是你想要连接的主要数据集secondaryFeatureCollection次要的集合即你想要连接到主要集合的数据集conditionFilter用于从两个集合中选择匹配项的连接条件。
Map
Map.centerObject(object, zoom,onComplete)
将地图视图居中于给定对象。
参数Type介绍objectElement|Geometry几何图像要居中的对象–几何体、图像或特征。zoomNumber, optional缩放级别从 0 到 24。如果未指定则根据对象的边界框计算。onCompleteFunction, optional重新定位成功后触发的回调。传递此参数会导致 centerObject 操作异步运行。
Map.addLayer(eeObject, visParams, name, shown, opacity)
将给定的 EE 对象作为图层添加到地图中。返回新的地图图层。
参数类型介绍eeObject集合|特征|图像|RawMapId要添加到地图的对象。visParams特征可视化参数|图像可视化参数可选可视化参数。对于图像和 ImageCollection请参阅 ee.data.getMapId 以获取有效参数。对于功能和功能集合唯一支持的键是“color”作为 CSS 3.0 颜色字符串或“RRGGBB”格式的十六进制字符串。当 eeObject 是地图 ID 时被忽略。name字符串可选图层的名称。默认为“N 层”。shown布尔值可选指示该图层是否应默认打开的标志。opacity数量可选图层的不透明度表示为 0 到 1 之间的数字。默认为 1。 visParams参数 image (JSON string): 要呈现的图像的 JSON 字符串表示或者可以是 Image 对象。version (number): 图像的版本号或者使用 “latest” 表示最新版本。bands (comma-separated strings): 要映射到 RGB 的波段名称用逗号分隔。min (comma-separated numbers): 映射到 00 的值可以是单个值或每个波段一个值。max (comma-separated numbers): 映射到 FF 的值可以是单个值或每个波段一个值。gain (comma-separated numbers): 映射到 00-FF 的增益可以是单个值或每个波段一个值。bias (comma-separated numbers): 映射到 00-FF 的偏移可以是单个值或每个波段一个值。gamma (comma-separated numbers): 伽马校正因子可以是单个值或每个波段一个值。palette (comma-separated strings): CSS 样式颜色字符串的列表仅适用于单波段预览。opacity (number): 透明度取值范围在 0 到 1 之间。format (string): 输出图像的格式可以是 “jpg” 或 “png”。 Filter方法
ee.Filter(filter)
构造一个新的过滤器。此构造函数接受以下参数 另一个过滤器。 一个过滤器列表隐式 AND 合并。 一个返回过滤器的计算对象。用户不应创建这些对象它们由生成器函数生成
ArgumentTypeDetailsfilterFilter|List, optional可选择添加过滤器。
ee.Filter.inList(leftField, rightValue, rightField, leftValue)
对列表中的元数据进行筛选。 返回构建的筛选器。
ArgumentTypeDetailsleftFieldString, optional左操作数的选择符。如果指定了 leftValue则不应指定。rightValueList, optional右操作数的值。如果指定了 rightField则不应指定。rightFieldString, optional右操作数的选择符。如果指定了 rightValue则不应指定。leftValueList, optional左操作数的值。如果指定了 leftField则不应指定。
ee.Filter.eq(name, value)
过滤到等于给定值的元数据。返回构造的过滤器。
用法返回值ee.Filter.eq(name, value)Filter
参数类型介绍nameString要进行筛选的属性名称。valueObject要比较的值。
ee.Filter.date(start, end) 时间筛选
按日期范围筛选数据集。开始和结束可以是日期、数字解释为自 1970-01-01T00:00:00Z 起的毫秒或字符串如 “1996-01-01T08:00”。基于 system:time_start 属性。返回构建的过滤器。
ArgumentTypeDetailsstartDate|Number|String开始日期含。endDate|Number|String, optional结束日期不包括。可选。如果未指定则会创建一个从 开始 开始的 1 毫秒范围。
ee.Filter.bounds(geometry, errorMargin) 位置筛选
创建一个过滤器如果对象的几何图形与给定的几何图形相交则通过该过滤器。返回构建的过滤器。
ArgumentTypeDetailsgeometryComputedObject|FeatureCollection|Geometry要与之相交的几何体、特征或集合。errorMarginComputedObject|Number, optional可选的误差范围。如果是数字则解释为球面米。
ee.Filter.lt(name, value) 属性筛选
过滤小于给定值的元数据。 返回构建的过滤器。
ArgumentTypeDetailsnameString要过滤的属性名称。valueObject要与之比较的值。
1. Dictionary方法
.toDictionary()
以字典的形式从特性中提取属性properties
.get()
通过Dictionary的键来获取值
.keys()
获取Dictionary中所有的键
.values()
获取Dictionary中所有的值
.size()
获取Dictionary中所含键值对的数量
.rename(from, to)
重命名Dictionary的键
参数Type介绍fromList[]要重命名的键的列表。toList[]来自 参数中列出的键的新名称列表。长度必须与 from 列表相同。
.remove(selectors)
返回已删除指定键的Dictionary。
参数Type介绍selectorsList要删除的键名列表或键名正则表达式。
.contains(key)
判断是否包含键如果字典包含给定的键则返回true。
参数TypeDetailskeyString, default: null
2. Feature常用函数
.Feature()
特征可由以下参数之一加上可选的属性字典构建 一个 ee.Geometry.GeoJSON 几何图形。 一个 GeoJSON 几何图形。 一个 GeoJSON 特征。 一个计算对象如果指定了属性则重新解释为几何体如果没有指定则解释为地物。
参数Type介绍geometryComputedObject|Feature|Geometry|Object几何体或特征。propertiesObject, optional元数据属性字典。如果第一个参数是地物而不是几何体则未使用此参数。
.select(propertySelectors, newProperties, retainGeometry)
通过名称或与 RE2 兼容的 regex 从特征中选择属性并对其进行重命名。
参数Type介绍propertySelectorsList指定要选择的属性的名称或 regexes 的列表。newPropertiesList, default: null可选的输出属性新名称。必须与所选属性的数量一致。retainGeometryBoolean, default: true为假时结果将为空几何图形。
.set(var_args)
设置元素的一个或多个元数据属性。返回设置指定属性的元素。
参数Type介绍var_argsVarArgs可以是属性字典也可以是属性的 vararg 序列例如 key1、value1、key2、value2、…
.centroid(maxError, proj)
返回一个特征点该特征点包含特征几何体最高维度组件的中心点。低维组件将被忽略因此包含两个多边形、三条线和一个点的几何体的中心点等同于仅包含两个多边形的几何体的中心点。
参数Type介绍maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null如果指定结果将采用该投影。否则将采用 WGS84 投影。
.simplify(maxError, proj)
将地物的几何形状简化到给定误差范围内。需要注意的是除非 maxError 被明确指定为空否则它不会尊重该算法的用户所要求的误差范围。 这将覆盖地球引擎传播误差范围的默认策略因此无论输出所要求的几何精度如何输入都将按照该算法参数中指定的误差范围进行请求。这样在渲染矢量地图的所有缩放级别上都能获得一致的渲染效果但在较低的缩放级别上即放大几何图形不会被简化这可能会影响性能。
参数Type介绍maxErrorErrorMargin结果与输入可能存在差异的最大误差值。projProjection, default: null如果指定结果将采用该投影。否则将采用与输入相同的投影。如果误差幅度以投影单位表示则误差幅度将被解释为该投影的单位
.bounds(maxError, proj)
官网文档解释返回包含给定地物几何边界框的地物。
自己理解返回图像的外接矩形
参数Type介绍maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null如果指定结果将采用该投影。否则将采用 WGS84 投影。
.convexHull(maxError, proj)
官网文档解释返回几何图形被原始几何图形的凸壳替代后的特征。单个点的凸壳是点本身相邻点的凸壳是一条直线其他所有点的凸壳是一个多边形。需要注意的是如果一个退化多边形的所有顶点都在同一条直线上那么该多边形就会形成一条线段。
自己理解返回图像的外接多边形
参数Type介绍maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null执行操作的投影。如果未指定操作将在球面坐标系中执行线性距离将以球面上的米为单位。
.buffer(distance, maxError, proj)
返回按给定距离缓冲的输入值。如果距离为正值几何体将被扩展如果距离为负值几何体将被收缩。
参数Type介绍distanceFloat缓冲距离可以是负值。如果没有指定投影单位为米。否则以投影坐标系为单位。maxErrorErrorMargin, default: null在近似缓冲圆和执行任何必要的重投影时可容忍的最大误差。如果未指定默认为距离的 1%。projProjection, default: null如果指定缓冲将在该投影中执行距离将解释为该投影坐标系的单位。否则距离将被解释为米缓冲将在球面坐标系中进行。
.union(right, maxError, proj) 合并
返回包含两个地物几何图形结合的地物。
参数Type介绍rightElement包含作为操作右操作数的几何图形的特征。该对象的属性将被忽略。maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null执行操作的投影。如果未指定操作将在球面坐标系中执行线性距离将以球面上的米为单位。
.intersection(right, maxError, proj) 相交
返回包含两个特征几何形状交集的特征并带有左侧特征的属性。
参数Type介绍rightElement包含作为操作右操作数的几何图形的特征。该对象的属性将被忽略。maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null执行操作的投影。如果未指定操作将在球面坐标系中执行线性距离将以球面上的米为单位。
.difference(right, maxError, proj) 相差
返回具有 左 特征属性的特征以及从 左 几何图形减去 右 几何图形后的几何图形。
参数Type介绍rightElement包含作为操作右操作数的几何图形的特征。该对象的属性将被忽略。maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null执行操作的投影。如果未指定操作将在球面坐标系中执行线性距离将以球面上的米为单位。
.distance(right, maxError, proj)
返回两个特征点几何形状之间的最小距离。
ArgumentTypeDetailsrightElement包含作为操作右操作数的几何体的特征。maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null执行操作的投影。如果未指定操作将在球面坐标系中执行线性距离将以球面上的米为单位。
.geometry(maxError, proj, geodesics)
返回给定投影中给定地物的几何图形。
ArgumentTypeDetailsmaxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null如果指定几何体将使用该投影。如果未指定几何体将使用默认投影。geodesicsBoolean, default: null如果为 “true”几何体将具有大地边缘。如果为 false则几何体的边缘将以指定投影中的直线形式出现。如果为空边缘解释将与原始几何体相同。如果未指定 proj此参数将被忽略。
.get(property)
从特征中提取属性
ArgumentTypeDetailspropertyString要提取的属性。
.area(maxError, proj)
返回该特征的默认几何形状的面积。点和线串的面积为0多个几何形状的面积为其组成部分的面积之和(相交面积计算多次)。
参数Type介绍maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null如果指定结果将使用该投影坐标系的单位。否则将以平方米为单位。
.perimeter(maxError, proj)
返回给定特征几何体多边形部分的周长。多个几何体的周长是其各部分周长的总和。
参数Type介绍maxErrorErrorMargin, default: null执行任何必要的重投时可容忍的最大误差。projProjection, default: null如果指定结果将使用该投影坐标系的单位。否则将以米为单位。
3. FeatureCollection常用函数
ee.FeatureCollection(args, column)
FeatureCollections 可由以下参数构建 字符串假定为集合名称。 一个几何体。 单个特征。 一个特征列表 一个 GeoJSON 地物集合 一个计算对象重新解释为一个集合。
ArgumentTypeDetailsargsComputedObject|Feature|FeatureCollection|Geometry|List构造函数参数。columnString, optional要使用的几何列的名称。仅在处理命名集合时有用。
.randomPoints(region, points, seed, maxError)
在球面上均匀随机地生成指定区域内的点。
ArgumentTypeDetailsregionGeometry要生成积分的区域。pointsInteger, default: 1000要生成的点数。seedLong, default: 0随机数生成器的种子。maxErrorErrorMargin, optional执行任何必要的重投时可容忍的最大误差。
.filterBounds(geometry)
根据与几何体的交点过滤集合的快捷方式。这等同于 this.filter(ee.Filter.bounds(…))。返回过滤后的集合。
ArgumentTypeDetailsgeometryComputedObject|FeatureCollection|Geometry要与之相交的几何体、特征或集合。
.select(propertySelectors, newProperties, retainGeometry)
从集合中的每个特征中选择属性。也可以只使用字符串参数调用此函数它们都将被解释为属性选择器varargs。 返回包含所选属性的特征集合。
ArgumentTypeDetailspropertySelectorsList指定要选择的属性的名称或 regexes 的列表。newPropertiesList, optional输出属性的新名称列表。必须与所选属性的数量一致。retainGeometryBoolean, optional为假时结果的几何形状为空。默认为 true。
.union(maxError)
将给定集合中的所有几何图形合并为一个并返回一个集合其中包含一个 ID 为 union_result 的单一地物和一个几何图形。
ArgumentTypeDetailsmaxErrorErrorMargin, default: null执行任何必要的重现时允许的最大误差。如果未指定则默认为输出所要求的误差范围。
.merge(collection2)
将两个集合合并为一个。第一个集合中的元素 ID 前缀为 “1”第二个集合中的元素 ID 前缀为 “2”。
ArgumentTypeDetailscollection2FeatureCollection第二个要合并的系列。
.remap(lookupIn, lookupOut, columnName)
重映射集合中特定属性的值。使用两个并行列表将其中一个列表中的值映射到另一个列表中的值。任何元素的值如果未在第一个列表中指定就会从输出集合中删除。
ArgumentTypeDetailslookupInList输入的映射值。限于字符串和整数。lookupOutList输出映射值。必须与 lookupIn 大小相同。columnNameString要重新映射的属性名称。
.sort(property, ascending)
按指定属性对集合排序。 返回排序后的集合。
ArgumentTypeDetailspropertyString要排序的属性。ascendingBoolean, optional按升序还是降序排序。默认为 true升序。
.geometry(maxError)
提取并合并几何图形集合。要求集合中的所有几何图形共享投影和边缘解释。
ArgumentTypeDetailsmaxErrorErrorMargin, optional合并几何图形时使用的误差范围。
.reduceToimage(properties, reducer)
通过对与每个像素相交的所有特征的选定属性应用还原器从特征集合创建图像。
ArgumentTypeDetailspropertiesList从每个特征中选取的属性并将其传递给还原器。reducerReducer一个还原器用于将每个相交特征的属性合并为最终结果并存储到像素中。
.map(algorithm, dropNulls)
将算法映射到集合上并返回映射后的集合。
ArgumentTypeDetailsalgorithmFunction映射图像或集合特征的操作。接收图像或特征并返回图像或特征的 JavaScript 函数。该函数只调用一次其结果将作为描述捕获因此不能执行命令式操作或依赖外部状态。dropNullsBoolean, optional如果为 “true”则允许映射算法返回空值并且会放弃返回空值的元素。
.aggregate_min(property)
对集合中对象的给定属性进行聚合计算所选属性值的最小值。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
.aggregate_max(property)
对集合中对象的给定属性进行聚合计算所选属性值的最大值。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
.aggregate_mean(property)
对集合中对象的给定属性进行聚合计算所选属性的平均值。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
.aggregate_first(property)
对集合中对象的给定属性进行聚合计算集合中第一个对象的属性值。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
.aggregate_sum(property)
对集合中对象的给定属性进行聚合计算所选属性值的总和。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
.aggregate_histogram(property)
对集合中对象的给定属性进行聚合计算所选属性的直方图。
ArgumentTypeDetailspropertyString从集合的每个元素中使用的属性。
4. 栅格数据存储原理
由Image和ImageCollection进行存储很多的image的集合就是一个ImageCollectionImage包括多个波段(Band)波段组合成影像影像集合成为影像数据集。
4.1 Image方法
Image.clip(geometry)
将图像剪切到几何图形或地物上输出波段与输入波段完全对应但几何图形未覆盖的数据将被屏蔽。输出图像保留输入图像的元数据。使用 clipToCollection 将图像剪辑到特征集合。返回剪切后的图像。
ArgumentTypeDetailsgeometryFeature|Geometry|Object要剪切的几何图形或地物。
Image.gt(image2)
如果图像 1 和图像 2 中每对匹配的波段的第一个值大于第二个值则返回 1。如果图像 1 或图像 2 中只有一个波段则该波段将与另一幅图像中的所有波段进行比对。如果图像中的波段数相同但名称不相同则按自然顺序成对使用。输出色带以两个输入色带中较长的一个命名如果两个输入色带长度相等则按图像 1 的顺序排列。输出像素的类型是布尔型。
ArgumentTypeDetailsimage2Image取自右操作数波段的图像。
Image.selfMask()
使用图像值作为新的掩码值更新图像所有现有掩码不为零位置的掩码。输出图像会保留输入图像的元数据和足迹。
Image.subtract(image2)
将图像 1 和图像 2 中每对匹配的波段的第二个值减去第一个值。如果图像 1 或图像 2 中只有一个波段则将其与另一幅图像中的所有波段进行对比。如果图像中的波段数相同但名称不同则按自然顺序成对使用。输出波段以两个输入波段中较长的一个命名如果两个输入波段长度相等则按图像 1 的顺序命名。输出像素的类型是输入类型的组合。
ArgumentTypeDetailsimage2Image取自右操作数波段的图像。
Image.bitwiseAnd(image2)
计算图像 1 和图像 2 中每对匹配波段的输入值的位和。如果图像 1 或图像 2 中只有一个波段则将其与另一张图像中的所有波段进行比对。如果图像中的波段数相同但名称不同则按自然顺序成对使用。输出波段以两个输入波段中较长的一个命名如果两个输入波段长度相等则按图像 1 的顺序命名。输出像素的类型是输入类型的组合。
ArgumentTypeDetailsimage2Image取自右操作数波段的图像。
Image.copyProperties(source, properties, exclude)
将元数据属性从一个元素复制到另一个元素。
ArgumentTypeDetailssourceElement, default: null从中复制属性的对象。propertiesList, default: null要复制的属性。如果省略则复制所有普通即非系统属性。excludeList, default: null复制所有属性时要排除的属性列表。如果 properties 为则不得指定。
Image.updateMask(mask)
更新图像掩码中所有现有掩码不为零的位置。输出图像保留输入图像的元数据和足迹。
ArgumentTypeDetailsmaskImage图像的新掩码范围为 [0, 1] 的浮点数无效 0, 有效 1。如果该图像只有一个波段它将用于输入图像的所有波段否则必须具有与输入图像相同的波段数。
ee.Image.constant(value)
生成一幅图像图像各处都包含一个常量值。
ArgumentTypeDetailsvalueObject常量图像中像素的值。必须是数字、数组或数字或数组列表。
Image.normalizedDifference(bandNames)
计算两个波段之间的归一化差值。如果没有指定要使用的波段则使用前两个波段。归一化差值的计算公式为第一-第二/第一第二。请注意返回的图像波段名称是 “nd”输出图像中不会保留输入图像属性而且任一输入波段中的负像素值都会导致输出像素被屏蔽。为避免屏蔽负输入值请使用 ee.Image.expression() 计算归一化差值。
ArgumentTypeDetailsbandNamesList, default: null指定要使用的频带的名称列表。如果未指定则使用第一个和第二个波段。
Image.expression(expression, map)
对一幅图像可能涉及其他图像进行算术表达式求值。 主要输入图像的波段可使用内置函数 b()即 b(0) 或 b(‘band_name’)。
表达式中的变量被解释为附加图像参数必须在 opt_map 中提供。每个此类图像的波段都可以像 image.band_name 或 image[0] 一样访问。
b() 和 image[] 都允许使用多个参数来指定多个波段例如 b(1,‘name’,3)。调用不带参数的 b() 或使用变量本身都会返回图像的所有波段。
如果表达式的结果是单个波段则可以使用操作符为其赋名例如x a b。
返回根据所提供表达式计算出的图像。
ArgumentTypeDetailsexpressionString要评估的表达式。mapDictionary, optional按名称提供的输入图像地图。 Image.addBands(srcImg, names, overwrite)
用于向图像添加新波段的方法。 srcImg: 要添加的源图像或图像集。names: 要添加的波段的名称可以是字符串或字符串数组。每个名称对应于 srcImg 中的一个波段。overwrite: 布尔值表示如果已存在同名波段是否覆盖。如果设置为 true则覆盖现有的同名波段如果设置为 false则不覆盖。 Image.reduceRegion(reducer, geometry, scale, crs, crsTransform, bestEffort, maxPixels, tileScale)
用于在图像上执行区域缩减操作的方法。 reducer: 用于指定要执行的缩减操作比如 ee.Reducer.mean() 表示计算平均值。常见的统计操作包括 mean()、sum()、min()、max() 等。geometry: 定义缩减操作的地理区域可以是一个 ee.Geometry 对象。scale: 指定缩减的分辨率以米为单位。crs: 缩减操作的坐标参考系统Coordinate Reference System。crsTransform: 缩减操作的坐标转换参数通常用于从图像坐标到投影坐标的转换。bestEffort: 布尔值表示是否尽最大努力执行缩减操作即使在某些情况下无法完成全部操作。maxPixels: 指定执行缩减操作的最大像元数。tileScale: 控制图像切片时的缩放比例可用于提高处理速度。 Image.aside(func, var_args)
用于在图像计算过程中插入调试语句以便在调试或理解代码时查看图像计算的中间结果。
ArgumentTypeDetailsfuncFunction一个函数该函数接受图像作为参数并返回图像。在这个函数中你可以使用 print 等语句来输出图像信息。var_argsVarArgs要传递给函数的额外参数。
Image.unmask(value, sameFootprint)
用于将图像中的掩码mask去除。掩码是指图像中某些像素被标记为无效或不适用的区域通过 mask 或 updateMask 方法设置。
ArgumentTypeDetailsvalueImage, default: null一个数值用于替代掩码区域的像素值。sameFootprintBoolean, default: true一个布尔值指示是否将去除掩码的图像保持与原始图像相同的地理范围。
Image.stratifiedSample(numPoints, classBand, region, scale, projection, seed, classValues, classPoints, dropNulls, tileScale, geometries)
从图像中提取分层随机点样本。为 classBand 中发现的每个不同值提取指定数量的样本。每个提取点返回一个包含 1 个特征的特征集合每个特征在输入图像的每个波段中包含 1 个属性。如果给定类别值的可用样本少于指定数量则会包含该类别的所有点。要求 classBand 包含整数值。
ArgumentTypeDetailsnumPointsInteger每个类的默认采样点数。可以使用 classValues 和 classPoints 属性对特定类别进行重设。classBandString, default: null用于分层的包含类别的波段名称。如果未指定则使用输入图像的第一个波段。regionGeometry, default: null采样区域。如果未指定则使用输入图像的整个足迹作为采样区域。scaleFloat, default: null要采样的投影的标称比例以米为单位。默认为输入图像第一个波段的比例。projectionProjection, default: null采样的投影。如果未指定则使用输入图像第一个波段的投影。如果除了缩放比例外还指定了投影比例则会按照指定的比例重新缩放。seedInteger, default: 0用于子采样的随机化种子。classValuesList, default: null要覆盖 numPoints 参数的类值列表。必须与 classPoints 大小相同或为空。classPointsList, default: nullclassValues类别值列表中每个类别的最大采样像素数。必须与 classValues 大小相同或为空。dropNullsBoolean, default: true跳过任何遮挡带的像素。tileScaleFloat, default: 1缩放因子用于减小聚合磁贴大小使用较大的 tileScale如 2 或 4可能会导致计算耗尽默认内存。geometriesBoolean, default: false如果为 “true”结果将包括每个采样像素的几何图形。否则几何图形将被省略节省内存。
Image.blend(top)
在一张图像上叠加另一张图像。图像将使用遮罩作为不透明度混合在一起。如果其中一幅图像只有一个色带则会进行复制以匹配另一幅图像中的色带数量。
ArgumentTypeDetailstopImage是要与原始图像混合的另一个图像
Image.sampleRegions(collection, properties, scale, projection, tileScale, geometries)
用于从图像中抽样获取指定区域region内的像元并返回一个包含属性信息的特征集合。
ArgumentTypeDetailscollectionFeatureCollection采样区域。propertiesList, default: null要从每个输入特征点复制的属性列表。默认为所有非系统属性。scaleFloat, default: null要采样的投影的标称比例以米为单位。如果未指定则使用图像第一个波段的比例。projectionProjection, default: null采样时的投影。如果未指定则使用图像第一个波段的投影。如果除比例外还指定了投影则按指定比例重新缩放。tileScaleFloat, default: 1缩放因子用于减小聚合磁贴大小使用较大的 tileScale如 2 或 4可能会导致计算耗尽默认内存。geometriesBoolean, default: false如果为 “true”结果将包括每个采样像素的点几何图形。否则几何图形将被省略节省内存。
4.2 ImageCollection方法
ee.ImageCollection(args)
ImageCollections 可以通过以下参数构建 字符串假定为集合的名称、 图像列表或任何可用于构建图像的参数。 单张图片。 一个计算对象–重新解释为一个集合。
ArgumentTypeDetailsargsComputedObject|Image|List构造函数参数。
ImageCollection.mosaic()
使用遮罩合成图像集中的所有图像。取最后的有效值
ImageCollection.mean()
通过计算所有匹配波段堆栈中每个像素上所有值的平均值来减少图像集合。波段按名称匹配。
ImageCollection.median()
通过计算所有匹配波段堆栈中每个像素点所有值的中值来减少图像集合。波段按名称匹配。
ImageCollection.sort(property, ascending)
按指定属性对集合排序。 返回排序后的集合。
ArgumentTypeDetailspropertyString要排序的属性。ascendingBoolean, optional按升序还是降序排序。默认为 true升序。
ImageCollection.limit(max, property, ascending)
将集合限制为指定数量的元素可选择先按指定属性排序。 返回限制后的集合。
ArgumentTypeDetailsmaxNumber限制收集的数量。propertyString, optional如果排序则按属性排序。ascendingBoolean, optional按升序还是降序排序。默认为 true升序。
5. 一些常用的去云方法
5.1 Sentinel-2A遥感数据去云方法
Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-2A
5.2 Sentinel-2C遥感数据去云方法1
Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-1C
通过波段第10位和11位去云。
5.3 Sentinel-2C 遥感数据去云方法2
Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-1C
Sentinel-2: Cloud Probability
波段联合去云。
5.4 Sentinel-3遥感数据去云方法
Sentinel-3 OLCI EFR: Ocean and Land Color Instrument Earth Observation Full Resolution
主要是通过波段第25位和27位来解决问题25是用来判断数据是否有效27是判断是否是高亮地区。因为云是白色的所以是高亮所以可以通过这种方式来去云同时这种高亮也包括雪山如果要同时去除云和雪山的话可以采用这种方式。
5.5Landsat4/5/7/8_TOA_LC2_T1数据去云
主要通过QA_PIXEL第3位和第4位去云。
5.6 Landsat 8/9_SR_LC2_T1数据去云
主要通过QA_PIXEL第234位去云。
5.7 MOD09Q1_8Day 数据去云
主要通过State bits0-1和bits2去云。
6 数据输出 数据输出位置不同功能不同 Driver为了将数据输出,导出在本地进行数据分析;Asset为了解决GEE数据单次运行计算超载方便下次调用Cloud Storage为了深度学习调用等。 注意对于Collection数据类型而言我们需要先将Collection数据类型转化成List数据类型.toList)然后利用for循环逐一将每一个要素输出Image或者Feature,从而实现对Collection数据的输出。 6.1 Export.image.toDrive(image, description, folder, fileNamePrefix, dimensions, region, scale, crs, crsTransform, maxPixels, shardSize, fileDimensions, skipEmptyTiles, fileFormat, formatOptions)
创建一个批处理任务将图像以光栅形式导出到驱动器。任务可从 任务 选项卡启动。“crsTransform”、scale 和 dimensions 是互斥的。
ArgumentTypeDetailsimageImage要导出的图像。descriptionString, optional任务的可读名称。可包含字母、数字、-、_无空格。默认为 “myExportImageTask”。folderString, optional导出内容所在的 Google Drive 文件夹。注意(a) 如果文件夹名存在于任何级别输出将写入该文件夹(b) 如果存在重复的文件夹名输出将写入最近修改的文件夹© 如果文件夹名不存在将在根目录下创建新文件夹(d) 带分隔符的文件夹名如 “path/to/file”将被解释为字面字符串而非系统路径。默认为驱动器根目录。fileNamePrefixString, optional文件名前缀。可包含字母、数字、-、_无空格。默认为描述。dimensionsNumber|String, optional导出图像的尺寸。最大尺寸可以是单个正整数也可以是 “WIDTHxHEIGHT”其中 WIDTH 和 HEIGHT 均为正整数。regionGeometry.LinearRing|Geometry.Polygon|String, optional代表要导出区域的 LinearRing、Polygon 或坐标。可以指定为几何对象或以字符串形式序列化的坐标。scaleNumber, optional分辨率单位为米/像素。默认为 1000。crsString, optional导出图像要使用的 CRS。crsTransformList, optional导出图像的坐标转换参数。需要定义 “crs”。maxPixelsNumber, optional限制导出的像素数。默认情况下如果导出超过 1e8 像素就会出现错误。通过明确设置该值可以提高或降低该限制。shardSizeNumber, optional计算图像的磁贴大小像素。默认为 256。fileDimensionsList, optional如果图像太大无法放入单个文件每个图像文件的像素尺寸。可以指定一个数字来表示正方形也可以指定一个包含两个尺寸的数组来表示宽、高。需要注意的是图像仍将按照整个图像的尺寸进行裁剪。必须是 shardSize 的倍数。skipEmptyTilesBoolean, optional如果为 “true”则跳过写入空即完全屏蔽图像磁贴。默认为假。fileFormatString, optional导出图像的字符串文件格式。目前只支持 GeoTIFF 和 “TFRecord”默认为 “GeoTIFF”。formatOptionsImageExportFormatConfig, optional用于格式化特定选项的字符串键字典。
6.2 Export.image.toAsset(image, description, assetId, pyramidingPolicy, dimensions, region, scale, crs, crsTransform, maxPixels, shardSize)
创建一个批处理任务将图像以光栅形式导出到地球引擎资产中。任务可从 任务 选项卡中启动。
ArgumentTypeDetailsimageImage要导出的图像。descriptionString, optional任务的可读名称。默认为 “myExportImageTask”。assetIdString, optional目标资产 ID。pyramidingPolicyObject, optional应用于图像中每个波段的分层策略以波段名称为关键。值必须是均值、样本、最小值、最大值或模式之一。默认值为 “平均值”。可以使用特殊键.default 来更改所有波段的默认值。dimensionsNumber|String, optional导出图像的尺寸。最大尺寸可以是单个正整数也可以是 “WIDTHxHEIGHT”其中 WIDTH 和 HEIGHT 均为正整数。regionGeometry.LinearRing|Geometry.Polygon|String, optional代表要导出区域的 LinearRing、Polygon 或坐标。可以指定为几何对象或以字符串形式序列化的坐标。scaleNumber, optional分辨率单位为米/像素。默认为 1000。crsString, optional导出图像要使用的 CRS。crsTransformList, optional用于导出图像的仿射变换。需要定义 “crs”。maxPixelsNumber, optional限制导出的像素数。默认情况下如果导出超过 1e8 像素就会出现错误。通过明确设置该值可以提高或降低该限制。shardSizeNumber, optional计算图像的磁贴大小像素。默认为 256。 crs 参数用于指定导出图像时的坐标参考系统 (Coordinate Reference System)。在 Google Earth Engine 中常见的坐标参考系统的标识是 EPSGEuropean Petroleum Survey Group代码。 一些常见的 EPSG 代码示例 WGS 84地理坐标系: EPSG:4326Web Mercator投影坐标系: EPSG:3857UTM Zone 33NUTM投影坐标系: EPSG:32633 具体选择哪个坐标参考系统取决于你的应用场景和需要。如果你不确定应该选择哪个坐标参考系统通常可以根据你的地理区域和使用习惯来选择。地理坐标系如 WGS 84适用于全球范围而投影坐标系如 Web Mercator适用于在线地图等应用。 7 GEE植被指数计算 在GEE常见的计算指数的三种方式 利用Image.normalizedDifference(bandNames)函数直接用加减乘除方法运算利用expression计算 指数类型计算公式NDVI 归⼀化植被指数(NIR-Red)/(NIRRed)FVC 植被覆盖度(NDVI-NDVIsoil)/(NDVIveg-NDVI)EVI 增强植被指数2.5 * (NIR-Red) / (NIR 6 * Red-7.5 * Blue 1)LAI 叶⾯积指数3.618*EVI-0.118BSI 裸⼟指数(SWIRRed)-(NIR-Blue))/((SWIRRed)(NIR-Blue)LSWI 植被⽔分含量指数(NIR-SWIR)/(NIRSWIR)MNDWI 修正的归⼀化⽔体指数(Green-SWIR)/(GreenSWIR)SAVI ⼟壤调节植被指数(NIR-R)*(1L)/(NIRRL)L0.5NDTI 归⼀化差异耕作指数(SWIR1-SWIR2)/(SWIR1SWIR2)IBI 城市建筑指数NIR 纹理特征视情况而定通常使用纹理滤波等方法进行计算 NIR: 近红外波段Red: 红色波段Blue: 蓝色波段SWIR: 短波红外波段Green: 绿色波段L: 土壤调节参数SAVI中的参数NDVIsoil 是裸土区域的平均 NDVI 值。NDVIveg 是完全覆盖植被区域的平均 NDVI 值。 8. 数据统计分析
通过Reducer.combine讲数据合并到一块然后通过ui.Chart.image.方法将图像显示输出。
Reducer.combine(reducer2, outputPrefix, sharedInputs)
用于将两个缩减器Reducer合并成一个。这个方法通常用于同时执行多个缩减操作并生成一个合并的结果。
ArgumentTypeDetailsreducer2Reducer第二个缩减器它将与第一个缩减器合并。outputPrefixString, default: “”用于区分合并结果的前缀可以是字符串。sharedInputsBoolean, default: false一个布尔值表示是否使用相同的输入数据执行两个缩减器。
ui.Chart.image.byRegion(image, regions, reducer, scale, xProperty)
用于创建图表的方法用于按区域对图像进行统计并生成图表。
ArgumentTypeDetailsimageImage要统计的图像regionsFeature|FeatureCollection|Geometry|List, optional区域集合可以是 FeatureCollection、Geometry 对象或 Feature 对象。reducerReducer, optional缩减器Reducer用于指定要计算的统计量例如均值、总和等。scaleNumber, optional空间分辨率meter/pixelxPropertyString, optional作为 X 轴的属性可以是字符串或指定图表中 X 轴数据的图像属性。
Chart.setChartType(chartType)
用于设置图表类型的方法。该方法用于更改图表的显示类型。
ArgumentTypeDetailschartTypeString要设置的图表类型可以是字符串。常见的图表类型包括 ScatterChart、LineChart、ColumnChart 等。
Chart.setOptions(options)
用于设置图表选项的方法。通过这个方法你可以设置图表的各种显示选项例如标题、坐标轴标签、图例等。
ArgumentTypeDetailsoptionsObject一个包含图表选项的对象。可以包括各种属性具体取决于图表的类型和需求。 options常用的属性 title: 设置图表的标题。hAxis: 设置水平轴选项。vAxis: 设置垂直轴选项。lineWidth: 设置线的宽度。pointSize: 设置点的大小。legend: 控制图例的显示。backgroundColor: 设置图表的背景颜色。curveType: 设置曲线类型例如‘function’ 或 ‘none’。colors: 设置系列的颜色。 9.数据填充
9.1 NPP数据栅格填充MOD17A3HGF数据 Net Primary Production (NPP): 净初级生产力是指植物通过光合作用从大气中吸收二氧化碳将其转化为植物体内的有机物质的速率。这个数据集测量了全球范围内植被的净初级生产力。
9.2 人口数据栅格填充POP数据 9.3MODIS数据插值详解 MODISModerate Resolution Imaging Spectroradiometer是一种载荷在Terra和Aqua卫星上的遥感仪器属于美国宇航局NASA的地球观测系统EOS项目。它被设计用于监测地球表面的大气、陆地和海洋等方面的变化。 MODIS具有较高的空间分辨率和广泛的波段覆盖使其成为全球气象、气候和环境研究中的重要工具。它能够提供每天多次的全球覆盖获取的数据包括植被指数、云覆盖、地表温度等信息。 Savitzky-Golay 滤波器SG 滤波器是一种平滑数据的技术它利用多项式拟合来平滑信号。相较于简单的线性插值SG 滤波器在平滑时考虑了更多的局部信息因此在某些情况下它可能更适用于去除噪声和提取趋势。 10.土地分类
基于目视解译的土地利用分类 主要流程的解释 设置研究区域 通过提供的table获取研究区域的边界并在地图上标出。 设置时间窗口 定义了开始日期startDate和结束日期endDate用于选择Landsat 9影像数据的时间范围。 比例换算和云去除 使用applyScaleFactors函数对遥感影像进行比例换算然后使用rmL89Cloud函数去除云影响。 指数计算 使用addIndexs函数计算了一些遥感指数如NDVI归一化植被指数、BSI裸土指数、LSWI水体指数和MNDWI水体蓝光差异指数。 获取研究区时间窗口内数据 通过筛选日期、研究区域和应用之前定义的函数获取Landsat 9影像并计算得到的指数。最后取这些影像的中值.median()以减少噪音并将其裁剪到研究区域。 可视化 在地图上添加了遥感影像的可视化图层。 合并样本 将水体、建筑、林地、耕地和未利用地的样本合并成一个样本集合。 样本采样 利用sampleRegions函数对上述合并的样本进行随机采样并为每个样本点添加了一个随机数列。 训练和验证样本 将样本数据分为70%用于训练30%用于验证。 设置分类器 使用Random Forest分类器ee.Classifier.smileRandomForest(300)对训练样本进行训练。 影像分类 利用训练好的分类器对遥感影像进行分类得到Classified_RF。 显示分类结果 在地图上添加了分类结果的图层使用了不同颜色表示不同类别。 精度验证 使用验证样本对分类结果进行精度验证计算混淆矩阵然后输出准确度、Kappa系数、用户精度和生产者精度等指标。 !