Open Buildings Temporal V1

GOOGLE/Research/open-buildings-temporal/v1
数据集可用性
2016-06-30T07:00:00Z–2023-06-30T07:00:00Z
数据集提供商
Earth Engine 代码段
ee.ImageCollection("GOOGLE/Research/open-buildings-temporal/v1")
标签
非洲 亚洲 建成区 高度 开放式建筑 人口 南亚 东南亚
building-height
采用高分辨率图片

说明

Open Buildings 2.5D 时间数据集包含 2016 年至 2023 年间以每年一次的频率收集的建筑存在情况、建筑数量分数和建筑高度数据,有效空间分辨率为 4 米(栅格以 0.5 米分辨率提供)。它是根据 Sentinel-2 集合中的开源低分辨率影像制作而成。

该数据集覆盖非洲、南亚、东南亚、拉丁美洲和加勒比地区。此数据的目标是为专注于各种社会公益应用的组织(例如政府组织、公益组织、商业组织)提供支持。

通过演示 Earth Engine 应用以交互方式探索数据。(如果您在使用 Earth Engine 应用时遇到性能问题,请尝试使用 Earth Engine 脚本。)

或者,如果您不是 Earth Engine 用户,可以使用此笔记本直接从 Google Cloud Storage 下载数据。

如需详细了解该项目以及有关数据提取的常见问题解答,请访问该项目的网站

示例脚本:

1,相当于高分辨率模型使用 4 米分辨率影像的单帧所能达到的效果。

频段

Pixel Size
4 米

频段

名称 单位 最小值 最大值 像素尺寸 说明
building_fractional_count 0 0.0216

用于推导给定 AOI 的建筑物数量的源数据。请参阅随附的示例脚本。

building_height 0 100

建筑物相对于地形的高度,范围为 [0 米,100 米]。

building_presence 0 1

模型置信度值(即模型认为像素属于建筑物的置信度),范围为 [0.0, 1.0]。请注意,模型置信度值是未校准的,也就是说,如果某个像素的模型置信度为 0.8,并不意味着构建存在感的实际可能性为 80%。因此,置信度值只能用于像素的相对排名(例如阈值处理)。此外,模型置信度可能会因多种因素(例如云覆盖率、影像未对齐等)而随位置和时间变化。

图片属性

图片属性

名称 类型 说明
imagery_start_time_epoch_s 双精度

用于生成这些栅格的源 Sentinel-2 影像的最早可能日期。

imagery_end_time_epoch_s 双精度

用于生成这些栅格的源 Sentinel-2 影像的最晚日期。

inference_time_epoch_s 双精度

光栅应预测的世界状态的时间,以自纪元以来的秒数表示。

s2cell_token STRING

相应图块所属的 S2 单元格的令牌。由于 UTM 带边界,跨越多个带的单个 S2 单元格在不同的投影带中可能具有多个对应的图块。请参阅 http://s2geometry.io/

使用条款

使用条款

该数据根据知识共享署名 (CC-BY 4.0) 许可和 Open Data Commons Open Database 许可 (ODbL) v1.0 许可共享。作为用户,您可以选择自己喜欢的许可,并根据该许可的条款使用数据。

利用哥白尼计划 Sentinel-2 数据(2015 年至今)。请参阅 Sentinel 数据法律声明

引用

引用:

使用 Earth Engine 探索

代码编辑器 (JavaScript)

var geometry = ee.Geometry.Point(
    [31.549876545106667, 30.011531513347673]);  // New Cairo, Egypt

var col = ee.ImageCollection('GOOGLE/Research/open-buildings-temporal/v1');

/**
 * Adds building presence and height layers for a given timestamp.
 * @param {number} millis Timestamp in milliseconds.
 */
function addLayers(millis) {
  // Create a mosaic of tiles with the same timestamp.
  var mosaic = col.filter(ee.Filter.eq('system:time_start', millis)).mosaic();
  var year = new Date(millis).getFullYear();
  Map.addLayer(
      mosaic.select('building_presence'), {max: 1},
      'building_presence_conf_' + year);
  Map.addLayer(
      mosaic.select('building_height'), {max: 100}, 'building_height_m_' + year,
      /*shown=*/ false);
};

// Get latest 2 years
var ts = col.filterBounds(geometry)
             .aggregate_array('system:time_start')
             .distinct()
             .sort()
             .getInfo()
             .slice(-2);


ts.forEach(addLayers);


Map.centerObject(geometry, 14);
在代码编辑器中打开