hillshade_and_water.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import ee
  2. from ee_plugin import Map
  3. from ee_plugin.contrib import palettes
  4. dem = ee.Image("JAXA/ALOS/AW3D30_V1_1").select('MED')
  5. dem = dem.updateMask(dem.gt(0))
  6. palette = palettes.cb['Pastel1'][7]
  7. #palette = ['black', 'white']
  8. rgb = dem.visualize(**{'min': 0, 'max': 5000, 'palette': palette })
  9. hsv = rgb.unitScale(0, 255).rgbToHsv()
  10. extrusion = 30
  11. weight = 0.7
  12. hs = ee.Terrain.hillshade(dem.multiply(extrusion), 315, 35).unitScale(10, 250).resample('bicubic')
  13. hs = hs.multiply(weight).add(hsv.select('value').multiply(1 - weight))
  14. hsv = hsv.addBands(hs.rename('value'), ['value'], True)
  15. rgb = hsv.hsvToRgb()
  16. Map.addLayer(rgb, {}, 'ALOS DEM', True, 0.5)
  17. water_occurrence = ( ee.Image("JRC/GSW1_0/GlobalSurfaceWater")
  18. .select('occurrence')
  19. .divide(100)
  20. .unmask(0)
  21. .resample('bicubic') )
  22. palette = ["ffffcc","ffeda0","fed976","feb24c","fd8d3c","fc4e2a","e31a1c","bd0026","800026"][::-1][1:]
  23. land = ee.Image("users/gena/land_polygons_image").mask()
  24. Map.addLayer(water_occurrence.mask(water_occurrence.multiply(2).multiply(land)), {'min': 0, 'max': 1, 'palette': palette}, 'water occurrence', True)