Created
October 22, 2021 18:53
-
-
Save jdbcode/a872f61ffcd0c8dafb9f32bdf1158a82 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Applies scaling factors. | |
var applyScaleAndOffset = function(img) { | |
var getFactorImg = function(factorNames) { | |
var factorList = img.toDictionary().select(factorNames).values(); | |
return ee.Image.constant(factorList); | |
}; | |
var scaleImg = getFactorImg(['CMI_C.._scale']); | |
var offsetImg = getFactorImg(['CMI_C.._offset']); | |
var scaled = img.select('CMI_C..').multiply(scaleImg).add(offsetImg); | |
return img.addBands({srcImg: scaled, overwrite: true}); | |
}; | |
// Adds a synthetic green band. | |
var addGreenBand = function(img) { | |
var green = img.expression({ | |
expression: 'CMI_GREEN = 0.45 * red + 0.10 * nir + 0.45 * blue', | |
map: { | |
blue: img.select('CMI_C01'), | |
red: img.select('CMI_C02'), | |
nir: img.select('CMI_C03') | |
} | |
}); | |
return img.addBands(green); | |
}; | |
// Scales select bands for visualization. | |
var scaleForVis = function(img) { | |
return img.select(['CMI_C01', 'CMI_GREEN', 'CMI_C02', 'CMI_C03', 'CMI_C05']) | |
.resample('bicubic') | |
.log10() | |
.interpolate([-1.6, 0.176], [0, 1], 'clamp') | |
.unmask(0) | |
.set('system:time_start', img.get('system:time_start')); | |
}; | |
// Wraps previous functions. | |
var processForVis = function(img) { | |
return scaleForVis(addGreenBand(applyScaleAndOffset(img))); | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment