GEE数据集——全球河流阻塞数据库 (GROD)1.1 版

全球河流阻塞数据库 (GROD)

GROD v1.1(文件名:GROD_v1.1.csv),即全球河流阻塞数据库 1.1 版,包含 30549 个人工识别的阻碍河流纵向流动的人为结构。谷歌地球引擎卫星地图上的所有河流障碍物都已在全球陆地卫星河宽(GRWL)数据库中标注。每个障碍物都有六种类型--水坝、水闸、低水头水坝、渠道水坝、部分水坝 1 和部分水坝 2。有关绘图过程和数据质量的详细信息,请参阅该出版物,数据集可在此处访问:

文章引用

Yang, X., Pavelsky, T.M., Ross, M.R., Januchowski‐Hartley, S.R., Dolan, W., Altenau, E.H., Belanger, M., Byron, D., Durand, M., Van Dusen, I. and Galit, H., 2022. Mapping flow‐obstructing structures on global rivers. Water Resources Research, 58(1), p.e2021WR030386.

数据引用

Yang, X., Pavelsky, T. M., Ross, M. R. V., Januchowski-Hartley, S. R., Dolan, W., Altenau, E. H., Belanger, M., Byron, D., Durand, M., Van Dusen,
I., Galit, H., Jorissen, M., Langhorst, T., Lawton, E., Lynch, R., Mcquillan, K. A., Pawar, S., & Whittemore, A. (2021). Global River Obstruction
Database v1.1 (v1.1) [Data set]. Zenodo. https://doi.org/10.5281/zenodo.5793918

摘要

全球各地的河流上建造了许多障碍物(如水坝和水闸),以帮助蓄水、促进航行、产生能源、缓解洪水以及支持工业和农业生产。然而,由于缺乏有关这些障碍物位置的公开信息,我们评估其环境影响的能力大打折扣。在这项研究中,我们利用谷歌提供的公开卫星数据,手动识别全球所有大河(宽度≥30 米)上的河流障碍物,建立了全球河流障碍物数据库(Global River Obstruction Database,简称 GROD)。全球河流障碍物数据库由 30,549 个独特的障碍物组成,这些障碍物被归类为以下六种类型之一:水坝、低水头水坝、水闸、河道水坝(阻碍多河道河流中一条河道的水坝)以及两种类型的部分水坝(部分横跨河流的水坝)。通过反复对 GROD 障碍物子集进行分类,我们估计分类一致性很高。通过将 GROD 与其他五个障碍物数据集进行比较,我们估计 GROD 包含了所研究河流中 90% 以上的障碍物。我们预计,GROD 的发布将帮助世界各地的人们更好地了解和管理人类对河流的影响。

为了帮助蓄水、方便航行、产生能源、缓解洪水以及支持工业和农业生产,人们已经并将继续建造阻碍河流自然流动的障碍物。然而,由于建造和拆除这些障碍物的历史悠久而复杂,我们对它们的位置和类型缺乏全球统一的记录。在此,我们采用一致的方法,对全球 210 万公里大河(宽度≥30 米)上的障碍物进行了视觉定位和分类。我们以谷歌地球引擎的高分辨率图像为基础绘制地图,其中许多地方的分辨率达到了米级。由此产生的全球河流障碍物数据库(GROD)包含 30,549 个独特的障碍物,涵盖六种不同的障碍物类型:水坝、水闸、低水头水坝、河道水坝和两种局部水坝。通过对障碍物子集进行多次分类,我们能够对完全与河流相交的三类障碍物(水坝、低水头坝和水闸)显示出较高的分类一致性(平均平衡准确率为 87%)。三类局部障碍物的分类一致性稍差(平均平衡准确率为 61%)。总体而言,通过将全球资源数据库与类似的数据集进行比较,我们估计全球资源数据库可能捕捉到了大河上 90% 以上的障碍物。我们预计,GROD 将引起水文建模、水生生态学、地貌学和水资源管理界的广泛兴趣。

数据特色

  • 我们人工识别了全球 210 万公里大河上的 30,549 个河流障碍物
  • 全球河流障碍物数据库为了解人类对河流的影响提供了丰富的新背景
  • 全球河流障碍数据库识别了许多被其他全球水坝数据库遗漏的河内结构

代码

var grod = ee.FeatureCollection("projects/sat-io/open-datasets/GROD/GROD_V11");print(grod.first())
print(grod.aggregate_histogram('type'))// Define color palette for each property type
var dict = ee.Dictionary({'Channel dam': '#d73027', // Red'Dam': '#fc8d59', // Orange'Lock': '#fee08b', // Yellow'Low head dam': '#d9ef8b', // Light Green'Partial dam 1': '#91cf60', // Dark Green'Partial dam 2': '#1a9850', // Dark Teal
});// Function to style features based on property type
var styleFeatures = function(feature) {var color = dict.get(feature.get('type')); // Use default color if type not foundreturn feature.set('styleProperty', ee.Dictionary({'pointSize': 2, 'color': color})); // Set style directly
};// Apply styling to the feature collection
var styledFeatures = grod.map(styleFeatures);// Function to add a layer for each type
function addLayer(type) {print(type);Map.addLayer(styledFeatures.filter(ee.Filter.eq('type', type)).style({styleProperty: 'styleProperty'}), {}, type);
}// Apply `addLayer` to each record in `palette.keys()`
dict.keys().getInfo().map(addLayer);var dict = ee.Dictionary({'Channel dam': '#d73027', // Red'Dam': '#fc8d59', // Orange'Lock': '#fee08b', // Yellow'Low head dam': '#d9ef8b', // Light Green'Partial dam 1': '#91cf60', // Dark Green'Partial dam 2': '#1a9850', // Dark Teal
});var dict = {"names": ['Channel dam','Dam','Lock','Low head dam','Partial dam 1','Partial dam 2'],"colors": ['#d73027', // Red'#fc8d59', // Orange'#fee08b', // Yellow'#d9ef8b', // Light Green'#91cf60', // Dark Green'#1a9850', // Dark Teal]};// Create a panel to hold the legend widget
var legend = ui.Panel({style: {position: 'bottom-left',padding: '8px 15px'}
});// Function to generate the legend
function addCategoricalLegend(panel, dict, title) {// Create and add the legend title.var legendTitle = ui.Label({value: title,style: {fontWeight: 'bold',fontSize: '18px',margin: '0 0 4px 0',padding: '0'}});panel.add(legendTitle);var loading = ui.Label('Loading legend...', {margin: '2px 0 4px 0'});panel.add(loading);// Creates and styles 1 row of the legend.var makeRow = function(color, name) {// Create the label that is actually the colored box.var colorBox = ui.Label({style: {backgroundColor: color,// Use padding to give the box height and width.padding: '8px',margin: '0 0 4px 0'}});// Create the label filled with the description text.var description = ui.Label({value: name,style: {margin: '0 0 4px 6px'}});return ui.Panel({widgets: [colorBox, description],layout: ui.Panel.Layout.Flow('horizontal')});};// Get the list of palette colors and class names from the image.var palette = dict['colors'];var names = dict['names'];loading.style().set('shown', false);for (var i = 0; i < names.length; i++) {panel.add(makeRow(palette[i], names[i]));}Map.add(panel);}// Add the legend to the map
addCategoricalLegend(legend, dict, 'Global River Obstruction Database v1.1');

结果 

样例代码

https://code.earthengine.google.com/?scriptPath=users/sat-io/awesome-gee-catalog-examples:hydrology/GLOBAL-RIVER-OBSTRUCTION-DATABASE

License¶

The datasets are provided under a Creative Commons 4.0 International License.

Provided by: Yang et al 2021

Curated in GEE by: Samapriya Roy

Keywords: river obstruction, dam, lock, low head dam, weir, partial dam, wing dam, dataset, fragmentation, SWOT

网址推荐

机器学习

https://www.cbedai.net/xg 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/347745.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang 依赖注入库Wire应用案例

文章目录 简介Github指南安装案例wire.NewSetwire.Buildwire.Bindwire.Structwire.Valuewire.InterfaceValue 简介 Go语言的依赖注入库Wire是由Google提供的一个代码生成工具&#xff0c;用于简化和自动化依赖注入过程。Wire主要通过生成代码来处理依赖关系&#xff0c;而不是…

炒币千万条,安全第一条,The First提示您:警惕账户风险,守护资产安全

随着区块链技术的飞速发展和数字资产的普及&#xff0c;越来越多的人选择进入加密货币的世界进行投资。与此同时&#xff0c;黑客和诈骗分子的手段也在不断升级&#xff0c;给投资者的账户安全带来了严峻挑战。 近期&#xff0c;交易所安全事件频发&#xff0c;有黑客和诈骗分子…

Hadoop3:MapReduce源码解读之Map阶段的Job任务提交流程(1)

3、Job工作机制源码解读 用之前wordcount案例进行源码阅读&#xff0c;debug断点打在Job任务提交时 提交任务前&#xff0c;建立客户单连接 如下图&#xff0c;可以看出&#xff0c;只有两个客户端提供者&#xff0c;一个是YarnClient&#xff0c;一个是LocalClient。 显然&a…

DevExpress WPF中文教程:Grid - 如何向项目添加GridControl并绑定到数据

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

知识付费平台功能模块详解

知识付费平台作为一种新兴的在线教育模式&#xff0c;以其用户需求导向的设计理念和便捷高效的学习方式&#xff0c;受到了广泛欢迎。这类平台汇集了职业技能、生活兴趣和人文社科等多领域的专业知识&#xff0c;并通过视频播放、在线问答、作业批改等工具和服务&#xff0c;助…

零售商为什么分析用户数据?盘点六大零售业用户分析常用模型

在当今这个数据驱动的时代&#xff0c;零售行业正面临着前所未有的机遇与挑战。随着消费者行为的日益多样化和市场竞争的不断加剧&#xff0c;零售商们迫切需要有效的方法来洞察市场动态&#xff0c;优化运营策略&#xff0c;并最终实现业务的持续增长。用户数据分析&#xff0…

DOS 命令

Dos&#xff1a; Disk Operating System 磁盘操作系统, 简单说一下 windows 的目录结构。 ..\ 到上一级目录 常用的dos 命令&#xff1a; 查看当前目录是有什么内容 dir dir d:\abc2\test200切换到其他盘下&#xff1a;盘符号 cd : change directory 案例演示&#xff1a;切换…

GEO ISP图像调试-PFC(蓝紫边校正)

目录 1、简单介绍 2、调试策略 3、输出结果 1、简单介绍 GEO中中调整图像蓝紫边可分为两步&#xff0c;第一步&#xff1a;调整蓝紫边检测区域&#xff0c;第二步&#xff1a;设置去蓝紫边强度。 2、调试策略 图1 该图像蓝紫边较严重 主要原因是由于蓝紫边检测不准导致的&…

使用GPT-soVITS再4060下2小时训练声音模型以及处理断句带来的声音模糊问题

B站UP主视频 感谢UP主“白菜工厂1145号员工”的“熟肉”&#xff0c;我这篇笔记就不展示整一个训练和推理流程&#xff0c;重点写的4060该注意的一些事项。如何解决断句模糊的问题&#xff0c;在本篇笔记的最末尾。 相关连接&#xff1a; 原项目github UP主的说明文档 1、训…

【全开源】JAVA短剧国际版源码支持H5+Android+IOS

&#x1f30d;探索国际版短剧源码&#xff1a;打造你的全球影视平台 &#x1f680;一、引言&#xff1a;短剧时代的崛起 在数字化快速发展的今天&#xff0c;短剧作为一种新兴的影视形式&#xff0c;凭借其紧凑的剧情和高效的观看体验&#xff0c;逐渐在全球范围内崭露头角。…

[ue5]建模场景学习笔记(5)——必修内容可交互的地形,交互沙(2)

1需求分析&#xff1a; 继续制作可交互沙子内容&#xff0c;前面我们已经让角色在指定区域留下痕迹&#xff0c;那么能否让区域移动起来&#xff0c;这样才能逐步满足角色走到哪里都能产生交互痕迹&#xff0c;满足更大的地图。 2.操作实现&#xff1a; 1.首先建立角色能产生…

5.4 安全策略和控制 方法实现探讨

安全策略概述: 定义 安全策略是一组规则和措施&#xff0c;旨在保护组织的信息和资产免受潜在的威胁和攻击。它的制定和实施需要考虑组织的特定需求和风险&#xff0c;并采取适当的措施来减少潜在的安全漏洞。安全策略的定义包括以下几个方面&#xff1a; 1. 目标和范围&…

源代码加密的十个关键点

源代码加密是一种安全措施&#xff0c;其目的是为了保护软件的源代码不被未授权的个人或实体访问或泄露。源代码是软件应用程序的基础&#xff0c;它包含了程序的逻辑结构、核心算法以及设计理念。由于源代码承载了软件的核心知识和创新&#xff0c;因此它具有极高的商业价值和…

【工程实践】gradio调用模型与展示

前言 模型在云端部署好之后&#xff0c;衍生出Flask、Fastapi的接口&#xff0c;可以借助gradio调用接口展示在前端。 1.gradio代码 import gradio as gr import requests import json #调用部署的云服务接口 def greet(question):prefix_url http://0.0.0.0/get_classificat…

matlab BP神经网络

clear clc % 准备数据 inputs rand(10, 100); % 100组输入&#xff0c;每组10个特征 outputs rand(1, 100); % 100组输出&#xff0c;每组1个输出值 % 将数据分成训练集和测试集 trainRatio 0.8; valRatio 0.1; testRatio 0.1; [trainInd, valInd, testInd] divid…

如何下载iSlide软件及详细安装步骤

iSlide插件是一款能够支持PPT和WPS的ppt插件&#xff0c;旨在让每一个人都能够轻松制作出精美的ppt&#xff0c;能够在职场收到更多的关注&#xff0c;而该软件的口号正是「让 PPT 设计简单起来」&#xff0c;该插件是由原来NT插件升级改良过来的&#xff0c;在功能上面进行了全…

react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目

文章目录 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目背景Vite 和 (Create React App) CRAVite&#xff1f;Vite 是否支持 TypeScript&#xff1f; 用Vite创建react项目参考 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项…

C# WinForm —— 33 ContextMenuStrip介绍

1. 简介 右键某个控件/窗体时&#xff0c;弹出来的菜单&#xff0c;比如VS中右键窗体&#xff0c;弹出来的这个菜单&#xff1a; 和MenuStrip类似&#xff0c;ContextMenuStrip主菜单下面可以有子菜单&#xff0c;子菜单下面可以有下一级子菜单 2. 属性 和MenuStrip一样 …

Java的一些补充性介绍

目录 什么是JDK&#xff0c;JRE 快速入门 学习路线&#xff1a; 如何快速掌握技术或知识点&#xff1a; IDEA 常用快捷键 IDEA创建项目、模块、包、类 模板/自定义模板 包 包的命名&#xff1a;​编辑 常用的包 如引入包 断点调试(debug)​编辑 多线程&#xff1a;…

i.MX8MP平台开发分享(RDC软件配置篇)

Uboot中已经将RDC的配置写入到了OCRAM中&#xff0c;NXP在ATF中预设了SIP服务&#xff0c;SIP服务下有厂商自定义的smc命令ID。例如下面的DDR、GPC、SRC和HAB的smc回调函数。 在SRC中断处理函数中&#xff0c;对于SRC_M4_START指令&#xff0c;先读取OCRAM中的配置&#xff0c;…