作者:CSDN @ _养乐多_
如果在 Google EarthEngine(GEE)上直接下载的 MODIS 数据的像元是斜的,就需要将像素转换成正的。本文记录了处理该问题的方法和代码。
效果如下图所示,
如图1所示,在GEE上直接下载(EPSG:32648)投影坐标系且分辨率为30米的影像,下载的MODIS数据的像元是斜的,而图2下载(EPSG:32648)投影坐标系且分辨率为500米的影像是正的。
怎么解决该问题?本文记录了解决方法。
EPSG:4326(WGS 84 - WGS84 - World Geodetic System 1984, used in GPS)
EPSG:32648(WGS 84 / UTM zone 48N)
图1
图2
解决方法:
核心——>先重投影成4326大地坐标系,再投影成32648投影坐标系。
(这里感谢师弟提供的解决思路,欢迎关注他的微信公众号“GEEer成长日记”,有丰富的GEE知识等你来学)
var roi = table
Map.centerObject(roi,9)
var modis = ee.ImageCollection("MODIS/006/MCD43A4")
//计算NDVI
function CalNDVI(image){
var ndvi = image.normalizedDifference(['Nadir_Reflectance_Band2', 'Nadir_Reflectance_Band1']);
return ndvi.rename(['NDVI']).copyProperties(image, image.propertyNames());
}
//按矢量边界裁剪
function roiClip(image){
return image.clip(roi)
}
//影像投影和重采样
function ResampleAndReproject(image){
var image_reprojected = image.select('NDVI').reproject('EPSG:4326',null,500).resample('bilinear');//bicubic
var image_resample =image_reprojected.reproject('EPSG:32648',null,30);
return image_resample.copyProperties(image, image.propertyNames())
}
var modisCol_NDVI_download = modis.filterDate('2019-1-1', '2019-1-30')
.map(roiClip)
.map(CalNDVI)
.map(ResampleAndReproject)
Export.image.toDrive({
image: modisCol_NDVI_download.first(),
description: 'NDVI',
folder: 'DataSet',
region: roi,
scale: 30,
crs: "EPSG:32648",
maxPixels: 1e13
});