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",谢谢。

相关推荐
丶玉面小蛟龙1 分钟前
DGCNN网络学习
学习·点云·dgcnn
晓梦林6 小时前
BUUCTF findKey-学习笔记
笔记·学习
0566466 小时前
agent学习Day15——SQLAlchemy 查询过滤、分页与历史列表接口
python·学习·fastapi
炎武丶航9 小时前
汽车功能测试学习(1):FCW前方碰撞预警
功能测试·学习·汽车
x17388062739 小时前
XXE外部实体注入
xml·笔记
库玛西13 小时前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记
魔力女仆15 小时前
语言开发笔记3
笔记
x173880627315 小时前
文件包含漏洞介绍
笔记
qq_1851986915 小时前
SpingBoot3入门学习一
学习
噗噗夹的TA之旅15 小时前
Shader 学习 21:自定义 Render Feature
学习·游戏·unity·c#·游戏引擎·图形渲染