geemap学习笔记023:利用点矢量文件从Earth Engine图像中提取像素值

前言

遥感数据中通常需要根据点矢量文件来提取点对应位置的像素值,包括DEM、波段值等。

1 导入库并显示地图

python 复制代码
import ee
import geemap
import os

ee.Initialize()
Map = geemap.Map()
Map

2 添加并显示数据

python 复制代码
# 添加Earth Engine数据集
dem = ee.Image('USGS/SRTMGL1_003')
landsat7 = ee.Image('LANDSAT/LE7_TOA_5YEAR/1999_2003')

# 设置可视化参数
vis_params = {
    'min': 0,
    'max': 4000,
    'palette': ['006633', 'E5FFCC', '662A00', 'D8D8D8', 'F5F5F5'],
}

# 在Map上添加Earth Engine图层
Map.addLayer(
    landsat7, {'bands': ['B4', 'B3', 'B2'], 'min': 20, 'max': 200}, 'Landsat 7'
)
Map.addLayer(dem, vis_params, 'SRTM DEM', True, 1)

3 下载数据

python 复制代码
work_dir = os.path.expanduser('~/Downloads') #下载示例数据
in_shp = os.path.join(work_dir, 'us_cities.shp')
if not os.path.exists(in_shp):
    data_url = 'https://github.com/giswqs/data/raw/main/us/us_cities.zip'
    geemap.download_from_url(data_url, out_dir=work_dir)

in_fc = geemap.shp_to_ee(in_shp) #将下载的shp文件转为Earth Engine格式
Map.addLayer(in_fc, {}, 'Cities')

4 导出像素值为shp或者csv格式

python 复制代码
out_shp = os.path.join(work_dir, 'dem.shp') #导出为shp
geemap.extract_values_to_points(in_fc, dem, out_shp)

out_csv = os.path.join(work_dir, 'landsat.csv') #导出为csv
geemap.extract_values_to_points(in_fc, landsat7, out_csv)

结果展示

后记

大家如果有问题需要交流或者有项目需要合作,可以加Q Q :504156006详聊,加好友请留言"CSDN",谢谢。

相关推荐
hanlin032 小时前
刷题笔记:力扣第189题-轮转数组
笔记·算法·leetcode
xqqxqxxq2 小时前
Redis 五大常用数据类型 + 通用命令笔记
数据库·redis·笔记
zjnlswd2 小时前
c# 刘铁猛 学习笔记
笔记·学习
LuminousCPP3 小时前
单链表专题(三)-刷题复盘篇:从快慢指针到环形链表 II 数学推导
数据结构·经验分享·笔记·学习·算法·链表
3A Cloud3 小时前
从「心即理」到提示词工程:深度解析 ClawHub 上的阳明心学技能(yangming-xinxue)
人工智能·笔记
你想知道什么?4 小时前
朴素贝叶斯算法-学习笔记
笔记·学习·算法
天吾cc4 小时前
JSON 与 cJSON 学习笔记
笔记·学习·json
一米阳光86614 小时前
软考(中级)软件设计师核心笔记(8)数据结构——树与二叉树
数据结构·笔记·职场发展·软考·软件设计师·中级职称
lifallen4 小时前
Orca 与 Emdash:同样管理多个 Agent,差别在谁来调度
人工智能·学习·ai·软件构建·开源软件·ai编程
runafterhit4 小时前
【学习地图】ARM嵌入式类 · 文章索引
arm开发·学习