GEE数据集:水文遥感分析洪水(HYDRAFloods)系统的地表水输出图像数据集

举报
此星光明 发表于 2023/04/06 06:09:51 2023/04/06
【摘要】 ​Tensor Flow Hydra Flood Models这个数据集是水文遥感分析洪水(HYDRAFloods)系统的地表水输出图像,利用深度学习TensorFlow方法。具体来说,这个联合研究中心(JRC)调整后的学习率二元交叉熵(BCE)Dice模型和方法在最近的利用谷歌地球引擎的Sentinel-1地表水制图的深度学习方法中得到了详细讨论。洪水的水文遥感分析(或HYDRAFlood...

Tensor Flow Hydra Flood Models
这个数据集是水文遥感分析洪水(HYDRAFloods)系统的地表水输出图像,利用深度学习TensorFlow方法。具体来说,这个联合研究中心(JRC)调整后的学习率二元交叉熵(BCE)Dice模型和方法在最近的利用谷歌地球引擎的Sentinel-1地表水制图的深度学习方法中得到了详细讨论。

洪水的水文遥感分析(或HYDRAFloods)是一个开源的Python应用程序,用于下载、处理和提供来自遥感数据的地表水地图。该工具背后的基础是提供与传感器无关的方法来制作地表水地图。此外,还有一些工作流程,结合利用多个遥感数据集,为洪水应用提供每日地表水地图。

HYDRAFloods应用程序是使用谷歌地球引擎和谷歌云平台(GCP)建立的,以利用云计算进行大规模计算和处理高数据量输出。该软件包的目标是让用户以最小的努力获得高质量、基于云的地表水绘图算法。为了实现这一目标,hydrafloods在地球引擎Python API的基础上提供了一个高级API,以减少代码的重复,如过滤或携带元数据进行图像处理,并提供复杂的地表水算法。此外,该软件包还提供了一些GCP功能,以读取和传输数据,在地球引擎内使用。

快速启动
为了突出 hydrafloods API 的一个快速例子和制作高质量地表水地图的简单性,我们提供了一个快速的例子,在柬埔寨的湄公河和洞里萨河的汇合处使用哨兵-1绘制地表水,那里经常发生洪水。

文献:

Mayer, T., Poortinga, A., Bhandari, B., Nicolau, A.P., Markert, K., Thwal, N.S., Markert, A., Haag, A., Kilbride, J., Chishtie, F. and Wadhwa, A.,
2021. Deep Learning approach for Sentinel-1 Surface Water Mapping leveraging Google Earth Engine. ISPRS Open Journal of Photogrammetry and Remote
Sensing, p.100005.

关于HYDRAFloods开源Python应用程序的更多细节,用于下载、处理和提供从遥感数据得到的地表水地图。请参见HYDRAFloods文档。 HYDRAFloods Documentation.

编辑  代码:

var HydraFloods_Deep_Learning_Output = ee.Image("users/tjm0042/Hydrafloods_Outputs/TensorFlow_Surface_Water_Model_Mosaic")
Map.setCenter(104.9614, 12.2642,9);
var palettes = require('users/gena/packages:palettes');
Map.addLayer(HydraFloods_Deep_Learning_Output,{min: 0,max: 1, palette: palettes.cmocean.Tempo[7]},
"HYDRAFloods TensorFlow Model Approach: Joint Research Centre Adjusted Learning Rate Binary Cross Entropy Dice")

//Add a grayscale map to help higlight the feature
var SubtleGrayscale
 = 
[
  {
    "featureType": "administrative",
    "elementType": "all",
    "stylers": [
      {
        "saturation": "-100"
      }
    ]
  },
  {
    "featureType": "administrative.province",
    "elementType": "all",
    "stylers": [
      {
        "visibility": "off"
      }
    ]
  },
  {
    "featureType": "landscape",
    "elementType": "all",
    "stylers": [
      {
        "saturation": -100
      },
      {
        "lightness": 65
      },
      {
        "visibility": "on"
      }
    ]
  },
  {
    "featureType": "poi",
    "elementType": "all",
    "stylers": [
      {
        "saturation": -100
      },
      {
        "lightness": "50"
      },
      {
        "visibility": "simplified"
      }
    ]
  },
  {
    "featureType": "road",
    "elementType": "all",
    "stylers": [
      {
        "saturation": "-100"
      }
    ]
  },
  {
    "featureType": "road.highway",
    "elementType": "all",
    "stylers": [
      {
        "visibility": "simplified"
      }
    ]
  },
  {
    "featureType": "road.arterial",
    "elementType": "all",
    "stylers": [
      {
        "lightness": "30"
      }
    ]
  },
  {
    "featureType": "road.local",
    "elementType": "all",
    "stylers": [
      {
        "lightness": "40"
      }
    ]
  },
  {
    "featureType": "transit",
    "elementType": "all",
    "stylers": [
      {
        "saturation": -100
      },
      {
        "visibility": "simplified"
      }
    ]
  },
  {
    "featureType": "water",
    "elementType": "geometry",
    "stylers": [
      {
        "hue": "#ffff00"
      },
      {
        "lightness": -25
      },
      {
        "saturation": -97
      }
    ]
  },
  {
    "featureType": "water",
    "elementType": "labels",
    "stylers": [
      {
        "lightness": -25
      },
      {
        "saturation": -100
      }
    ]
  }
]
Map.setOptions('SubtleGrayscale', {SubtleGrayscale: SubtleGrayscale})

代码链接:

https://code.earthengine.google.com/?scriptPath=users/sat-io/awesome-gee-catalog-examples:hydrology/TENSORFLOW-HYDRA-FLOOD-MODELS

代码:

# content of example.py Python file

# import the hydrafloods and ee package
import hydrafloods as hf
import ee
ee.Initialize()

# specify start and end time as well as geographic region to process
start_time = "2019-10-05"
end_time =  "2019-10-06"
region = ee.Geometry.Rectangle([104, 11.5, 106, 12.5 ])

# get the Sentinel-1 collection
# the hf.dataset classes performs the spatial-temporal filtering for you
s1 = hf.datasets.Sentinel1(region, start_time, end_time)

# apply a water mapping function to the S1 dataset
# this applies the "Edge Otsu" algorithm from https://doi.org/10.3390/rs12152469
water_imgs = s1.apply_func(
    hf.thresholding.edge_otsu,
    initial_threshold=-14,
    edge_buffer=300
)

# take the mode from multiple images
# since this is just imagery from one day, it will simply mosaic the images
water_map = ee.Image(water_imgs.collection.mode())

# export the water map
hf.geeutils.export_image(
    water_map,
    region,
    "users/<YOUR_USERNAME>/water_map_example",
    scale=30,
)

 

License

This work is licensed under a Creative Commons Attribution 4.0 International License. You are free to copy and redistribute the material in any medium or format, and to transform and build upon the material for any purpose, even commercially. You must give appropriate credit, provide a link to the license, and indicate if changes were made.

Curated by: Tim Mayer, Kel Markert, Biplov Bhandari, Ate Poortinga

Keywords: Surface Water Mapping, Floods, Deep Learning TensorFlow, SERVIR

Last updated: 2021-10-20

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。