Encontré este problema después de exportar un compuesto medio de una banda NDVI personalizada en la colección Landsat 8 Surface Reflectance a Google Drive sólo para obtener un montón de líneas negras en un lado de la imagen. Esto me hizo pensar que podría ser un problema relacionado con la proyección, aunque no estoy seguro de que esta sea la verdadera razón de las líneas negras
Un punto dentro de la ROI que estoy utilizando se encuentra en (-13.38427568438877, -71.905517578125) que está claramente situado en el hemisferio sur y por lo tanto, utilizando el UTM crs, se encuentra en la zona UTM 18S. El problema surge cuando se solicita la información de la proyección utilizando el .projection()
sobre una de las imágenes de la colección, la salida en la consola muestra crs: EPSG:32618
que es la referencia espacial para la zona UTM 18N, cuando debería mostrar EPSG:32718
que es la correcta.
El código Lo que estoy usando para obtener esta salida es lo siguiente:
var region = ee.FeatureCollection(
'ft:1A9vRY9l-eBNBFBwAV_mLAEeCIPYS2T14vsKhiEQc');
var crop = region.geometry();
function mask_image(image){
return image.updateMask(image.select('pixel_qa').bitwiseAnd(ee.Image.constant(2)).eq(2));
}
function ndvi(image){
return image.addBands(image.normalizedDifference(['B5','B4']).rename('NDVI'));
}
var start = ee.Date('2013-01-01');
var end = ee.Date('2017-12-31');
var image = ee.ImageCollection('LANDSAT/LC08/C01/T1_SR')
.filterDate(start,end)
.filterBounds(crop)
.map(mask_image)
.map(ndvi);
print(image);
// This is where I begin the debug by narrowing down dates and
// checking the images projections one by one.
var test = image.filterDate('2016-03-01','2016-03-31');
print(test);
print(ee.Image('LANDSAT/LC08/C01/T1_SR/LC08_004069_20160315').projection());
var test2 = test.mean()
// This is the export that gives me black lines in the image
Export.image.toDrive({
image: test2.select(['NDVI']).clipToCollection(region),
description: 'NDVI-test',
folder:'Landsat8-NDVI',
scale: 30,
region: crop,
maxPixels:1e10,
crs: 'EPSG: 32718'
})
Map.centerObject(image,8);
Map.addLayer(ee.Image('LANDSAT/LC08/C01/T1_SR/LC08_004069_20160315'));