![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Geemap
文章平均质量分 55
_养乐多_
记录GEE(GoogleEarthEngine),python处理遥感数据,机器学习算法应用,深度学习模型训练、推理和部署的笔记。
展开
-
GEE:绘制累积降雨量折线图、降雨量均值折线图
本文记录了在GEE(GoogleEarthEngine)平台上,使用UCSB-CHG/CHIRPS/DAILY数据集,绘制一个指定点的一段时间内的降水量累计值折线图的代码,也记录了绘制一个区域一段时间内的降水量均值的折线图代码。其中累积降水量使用每日数据累积,降水量均值折线图使用的是每周的降水量数据。即本文记录了将影像集合按天 ‘day’ 合成和按周 ‘week’ 合成的方法。操作对象:一个点研究区:一个点的缓冲区累计值:一个点一段时期内降水量的累积值二、降水量均值折线图绘制操作对象:整个影像研原创 2022-12-03 17:32:59 · 2119 阅读 · 0 评论 -
GEE:关系、条件和布尔运算
本文记录了在GEE(Google Earth Engine)平台上的关系运算符和布尔运算符,分别应用到了三个不用的场景(筛选低 NDVI 和低 NDWI 区域、根据阈值分类夜光遥感数据、使用一景影像无云像素替换另一景影像云像素),并展示了结果。关系运算函数包括:eq(),gt(),gte(),lt(),lte(),布尔运算函数包括:and(),or(),not()。这些方法可以用来掩膜、绘制分类地图和重新赋值。原创 2022-12-03 16:44:01 · 2523 阅读 · 0 评论 -
GEE:在研究区内随机生成指定数量点
本文记录了在GEE平台上指定实验区域内生成指定数量随机点的方法,展示了结果,记录了代码。var point= ee.FeatureCollection.randomPoints(roi, 17)原创 2022-12-02 16:17:01 · 1524 阅读 · 0 评论 -
GEE:筛选影像集合中的非空影像
【代码】GEE:筛选空影像。原创 2022-12-02 15:39:43 · 669 阅读 · 2 评论 -
GEE:提取一个小区域影像的所有波段像素值到csv
本文记录了一个将一个影像的所有像素的不同波段值和经纬度坐标保存到csv的代码。数据集合:COPERNICUS/S2_SR_HARMONIZED。原创 2022-11-24 21:51:15 · 1665 阅读 · 13 评论 -
GEE:MODIS计算生物量
本文记录在Google Earth Engine(GEE)平台上通过NPP和GPP数据来计算生物量。MODIS数据。原创 2022-11-23 23:18:48 · 2301 阅读 · 7 评论 -
GEE:提取多个点的时间序列数据,保存为csv格式(以NDVI为例)
本文第一个代码记录了提取一个点的LAI值时间序列的代码,并且记录了以csv格式保存结果到本地的方法。第二个代码记录了将一个点的时间序列以折线图的形式打印在控制台中。原创 2022-11-23 22:11:23 · 5597 阅读 · 50 评论 -
GEE:将MODIS数据从500米分辨率重采样到30米以后,下载的像元是斜的
将MODIS数据从500米分辨率重采样到30米以后,下载的像元是斜的。本文提供了解决该问题的方法。原创 2022-10-28 15:43:13 · 3255 阅读 · 3 评论 -
GEE:Landsat影像快速下载
源代码:https://code.earthengine.google.com/df20aa8a78134144cfc5771d80014c1b?noload=truevar ROI = table.geometry();//引入一个变量,筛选时间。var data_collection = L8.filterDate('2020-06-01','2020-09-30');//用clip()函数里面的行政边界切割var ROI_collection = ee.Algorithms.Land.原创 2021-06-30 16:05:06 · 5387 阅读 · 4 评论 -
GEE:哨兵数据下载,将不同景按同一天日期合成
输入:输出:源代码:https://code.earthengine.google.com/dc1c75bdbeb215d4671db79862acbffb?noload=true如图所示,输入的影像集合里面有四幅影像,其中三幅是S2卫星同一天(5月7号)拍摄的,将同一天拍摄的s2数据按中值合成为一副。7月21号的合成为一副。最终输出两幅影像。//# 哨兵数据下载,将不同景按同一天日期合成 // date: 2021-06-03// author: Ruan xiaohao v原创 2021-06-03 21:59:55 · 4200 阅读 · 13 评论 -
GEE:快速下载数字高程DEM数据
DEM数据下载,使用SRTM Digital Elevation Data Version 4,一个2000年 的全球高程数据 。下载以后的DEM不用再做裁剪,可以直接使用。源代码:https://code.earthengine.google.com/f8e39c6c96a935499b09595e2fd83b28?noload=true效果如下图所示,不光可以下载DEM数据,也可以下载坡向。var roi = tablevar roi_geometry = roi.geometry()原创 2021-04-28 09:51:51 · 15263 阅读 · 16 评论 -
GEE:批量下载NDVI数据,按年最大值合成,GIMMS NDVI from AVHRR Sensors (3rd Generation)
NDVI效果如下图所示:所用数据集为:GIMMS NDVI from AVHRR Sensors (3rd Generation)这个数据集有1981年到2013年每个月的NDVI数据。原创 2021-04-23 17:18:46 · 8605 阅读 · 6 评论 -
GEE:mosaic、qualityMosaic、cat、addBands的区别
如图所示,mosaic()是按有值的最后一个值合成qualityMosaic()是按最大值合成操作对象都是影像集合cat()是将几幅影像拼接起来,连接起来区别:cat()是Concatenate;mosiaic()是CompositesaddBands()是给一副影像添加波段,操作对象是一个影像。上面图片展示的两个例子结果相同,但是方法不同。...原创 2021-04-06 23:02:47 · 3973 阅读 · 0 评论 -
GEE:LandTrendr时间序列曲线拟合
毕竟是时间序列分析,LandTrendr的时间序列曲线是怎么拟合的?在一个像素点的位置上,它是怎么输出变化年份、扰动幅度、恢复幅度和时间的?以下代码给出了回答,可以参考LT-GEE官方的说明文档。用LandTrendr选取指定像素点的APP:https://emaprlab.users.earthengine.app/view/lt-gee-pixel-time-seriesLT-GEE的结果包括:每个像素时间序列的观测年份;二维频谱时间空间中的x轴值;(默认)每个像素时间序列的观测值的源值;二原创 2021-03-30 19:46:46 · 6988 阅读 · 18 评论 -
GEE:变化检测算法,干扰检测,LandTrendr代码与说明(变化年份和扰动幅度示例)
LandTrendr是什么?LandTrendr是一组频谱时间分割算法,可用于中等分辨率卫星图像(主要是Landsat)的时间序列中的变化检测以及生成很大程度上不存在年际信号噪声的基于轨迹的频谱时间序列数据。LT最初是用IDL(交互式数据语言)实现的,但是在Google工程师的帮助下,它已移植到GEE平台。LandTrendr官方说明网站:https://emapr.github.io/LT-GEE/index.html该网站介绍了在Google Earth Engine(GEE)中运行LandT原创 2021-03-30 19:11:31 · 14190 阅读 · 48 评论 -
GEE:批量下载数据,按月合成,不同景,全实验区域,一键执行
有时候我们下载的数据可能因为遥感影像采集时间不同,下载的数据需要拼接,这样很麻烦。所以在这里给大家一个GEE代码,可以直接下载按月份拼接的遥感影像。比如,将2021年3月的不同景的数据按最大值合成且拼接在一起。此代码可以下载2014年-2020年每个月的数据,且按照矢量边界裁剪。方便了下载数据的繁琐过程。当然也可能有一些莫名的错误,希望大家指正,欢迎讨论。(此代码没有去云,读者可以根据需要自行加入)结果如图所示源代码:https://code.earthengine.google.com/0b原创 2021-03-29 15:03:39 · 9626 阅读 · 15 评论 -
GEE:哨兵数据下载(去云、按年度、中值合成)
var district = table;var dsize = district.size();var district_geometry = district.geometry();print(dsize);Map.centerObject(district_geometry,12);function maskS2clouds(image) {var qa = image.select(‘QA60’);// Bits 10 and 11 are clouds and cirrus, res原创 2021-03-11 15:58:54 · 8874 阅读 · 19 评论 -
GEE:如何直接下载指定投影坐标系的遥感影像?(附投影坐标系查询网站)
我们在处理遥感影像时,经常会出现一个问题,就是数据的投影坐标系不是理想的坐标系。然而在ArcGIS中重新转换坐标系,步骤麻烦繁琐,时而伴随莫名其妙的问题。所以,我们可以在下载数据时,直接下载指定坐标系的数据。主要操作就是在toDrive()函数里面加入crs:"EPSG:32649"Export.image.toDrive({ image: crude_object_removal,//指定的数据名称 description: 'RF2020', //下载的数据名 scale: 3原创 2021-01-21 01:38:10 · 5568 阅读 · 2 评论 -
GEE:对矢量数据/行政边界设置填充颜色为空,只显示边界
//设置显示样式:color代表边界颜色;fillcolor代表填充颜色var styling={color:'red',fillColor:'00000000'}//JX就是矢量边界Map.addLayer(JX.style(styling),{},"JX")矢量化效果原创 2020-12-30 20:37:22 · 5098 阅读 · 7 评论 -
GEE:生成20年NDVI动图和下载(彩色,使用MODIS数据集)
原代码链接https://code.earthengine.google.com/2d3796ec7be491f805fac4163acedd0a?noload=truevar roi = ee.Geometry.Polygon( [[112.51963551306746,26.815989026318352],[112.6974766995909,26.815989026318352],[112.6974766995909,26.931749679533954],[112.51原创 2020-10-23 23:37:53 · 6194 阅读 · 11 评论 -
GEE:Sentinel-2去云,cloudBitMask = 1 << 10,bitwiseAnd(1<<5)的含义,去云,位运算
粗浅理解比如Sentential2数据的 ‘QA60’ 波段,包含Opaque clouds不透明的云和Cirrus clouds卷云① qa.bitwiseAnd(cloudBitMask).eq(0) 表示选择cloudBitMask比特位为10的数据左移一位,并且让bit10位置的值等于0,这样就生成了云掩膜。② qa.bitwiseAnd(cirrusBitMask).eq(0) 表示选择 cirrusBitMask 比特位为11的数据左移一位,并且让bit11位置等于0,这样生成了卷云的掩原创 2020-10-17 16:00:28 · 5586 阅读 · 5 评论 -
GEE:使用GEE制作GIF图,并且下载
完整链接https://code.earthengine.google.com/f69a008adb949b50fd3903e13f678c3c?noload=true也可以根据需求制作NDVI,或者其他指数的GIF图像当然也可以先去云再制作动图。效果:原创 2020-10-16 19:06:44 · 1515 阅读 · 0 评论 -
GEE:影像非监督分类,裁剪,下载
var TGR = Boundary.geometry(), images = l5.filterDate('1989-01-01','1991-12-31').filterBounds(TGR), Simple_Composite = ee.Algorithms.Landsat.simpleComposite(images).clip(TGR)Map.addLayer(Simple_Composite, {"opacity":1,"bands":["B4","B3","B2"],"ma原创 2020-10-15 23:40:13 · 1156 阅读 · 0 评论 -
GEE:使用Sentinel-2数据做基于NDVI的长势监测(求5年影像集的NDVI均值,和当前年份的NDVI,两个影像做数学运算)
本文记录了农作物长势监测的原理和在GEE上实现的代码,记录了最简单的长势监测算法(更复杂的算法可以根据例子中的方法灵活转换)长势监测原理如下图所示1,距平模型2,极值模型第一部分:计算2015-2020年(每年8月份合成)的NDVI均值首先建立一个空的列表用来存储影像var col=ee.List([]);筛选2015-2020年五年的影像集(每年选择8月份的影像合成)for(var i=2015;i<2020;i++){ var img=s2.filterDate(i+原创 2020-10-14 23:47:10 · 9251 阅读 · 16 评论 -
GEE:筛选想要的行政区的边界(根据属性数据和手绘点/多边形的方法)
在引入矢量图层以后筛选指定属性信息的数据在引入矢量图层以后,gee用户往往会选择矢量图层中的某一小块来做研究,(比如引入中国分省的矢量图层,但是研究区只是涉及到安徽省)这就要用到筛选功能,将安徽省从中国矢量图层里面筛选出来。当然比较简单的方法是从ArcGIS或者其他软件中,将安徽省单独筛选出来并且导出,再引入到Geemap里面,但是这样做比较耗费时间和人力。一般用户的需求有两种:①是从大区域中筛选一个小区域作为实验区;②是从一个大区域中筛选多个小区域作为实验区衡阳市的属性表信息:(这里以从湖南原创 2020-10-08 11:40:28 · 14526 阅读 · 8 评论