Google Earth Engine Python API 提取的 MODIS NDVI 值错误
Google Earth Engine Python API wrong MODIS NDVI value extracted
我刚刚开始使用 GEE Python API。我想从 MODIS 产品的单个像素中提取 NDVI 值。当我 运行 这个:
import ee
ee.Authenticate()
ee.Initialize()
t_start = ee.Date("2000-01-01")
t_end = ee.Date("2020-05-25")
AOI = ee.FeatureCollection("users/manuelpopp/xining")
MODIS = ee.ImageCollection("MODIS/006/MOD13Q1") \
.filterDate(t_start, t_end).filterBounds(AOI)
MODIS_ndvi = MODIS.select("NDVI")
scenes = [scene.get("id") for scene in MODIS_ndvi.getInfo().get("features")]
scene = scenes[0]
img = ee.Image(scene)
p = ee.Geometry.Point(101.768548, 36.685077)
ndvit = img.reduceRegion(ee.Reducer.first(), p).get("NDVI").getInfo()
它将 ndvit
设置为 865。但是,NDVI 的值不应大于 1。
我这里做错了什么?我想这个值有一个简单的解释吗?
official file specification 指出真实值(“参数”)是通过以下等式获得的:
parameter=(file data - add_offset)/scale_factor
其中 file data
是文件中的值,add_offset
和 scale_factor
定义为例如
DataField_1 1 km 16 days NDVI INT16 Dimension_1
Dimension_2
DataField_1 HDF Attributes:
Attribute Data Type Number of Values Value or Max. String Length
long_name STRING 17 1 km 16 days NDVI
units STRING 4 NDVI
valid_range INT16 2 -2000, 10000
_FillValue INT16 1 -3000
scale_factor FLOAT64 1 10000
scale_factor_err FLOAT64 1 0.0
add_offset FLOAT64 1 0.0
add_offset_err FLOAT64 1 0.0
calibrated_nt INT32 1 5
scale_factor
值也在this table中(add_offset
很少用)
完成这些值转换是为了将 space 保存在磁盘上(将数据保存为 16 位整数而不是 32 位或 64 位浮点数)。
我刚刚开始使用 GEE Python API。我想从 MODIS 产品的单个像素中提取 NDVI 值。当我 运行 这个:
import ee
ee.Authenticate()
ee.Initialize()
t_start = ee.Date("2000-01-01")
t_end = ee.Date("2020-05-25")
AOI = ee.FeatureCollection("users/manuelpopp/xining")
MODIS = ee.ImageCollection("MODIS/006/MOD13Q1") \
.filterDate(t_start, t_end).filterBounds(AOI)
MODIS_ndvi = MODIS.select("NDVI")
scenes = [scene.get("id") for scene in MODIS_ndvi.getInfo().get("features")]
scene = scenes[0]
img = ee.Image(scene)
p = ee.Geometry.Point(101.768548, 36.685077)
ndvit = img.reduceRegion(ee.Reducer.first(), p).get("NDVI").getInfo()
它将 ndvit
设置为 865。但是,NDVI 的值不应大于 1。
我这里做错了什么?我想这个值有一个简单的解释吗?
official file specification 指出真实值(“参数”)是通过以下等式获得的:
parameter=(file data - add_offset)/scale_factor
其中 file data
是文件中的值,add_offset
和 scale_factor
定义为例如
DataField_1 1 km 16 days NDVI INT16 Dimension_1
Dimension_2
DataField_1 HDF Attributes:
Attribute Data Type Number of Values Value or Max. String Length
long_name STRING 17 1 km 16 days NDVI
units STRING 4 NDVI
valid_range INT16 2 -2000, 10000
_FillValue INT16 1 -3000
scale_factor FLOAT64 1 10000
scale_factor_err FLOAT64 1 0.0
add_offset FLOAT64 1 0.0
add_offset_err FLOAT64 1 0.0
calibrated_nt INT32 1 5
scale_factor
值也在this table中(add_offset
很少用)
完成这些值转换是为了将 space 保存在磁盘上(将数据保存为 16 位整数而不是 32 位或 64 位浮点数)。