GEE实例代码学习
上天入地小黄蜂
这个作者很懒,什么都没留下…
展开
-
Google Earth Engine(GEE)实例代码学习六——土地利用分类(Landcover Cleanup)
标题利用MODSI全球土地覆盖产品显示土地利用分类首先大致介绍一下MODIS土地覆盖产品MCD12Q1MCD12Q1 V6产品按六种不同的分类方案按年间隔(2001-2016年)提供全球土地覆盖类型。 它是使用MODIS Terra和Aqua反射数据的监督分类得出的。 然后,对监督分类结果进行额外的后处理,这些后处理结合了先验知识和辅助信息以进一步完善分类。分为1-17表示不同的类别LC...原创 2020-04-18 23:18:09 · 13746 阅读 · 7 评论 -
Google Earth Engine(GEE)实例代码学习三十九——交互形式显示每点数值(Two chart Inspector)
在地图旁边添加两个图表,以交互方式显示每次单击地图时的NDVI和反射率的时间序列。//加载Landsat8 大气顶层反射率var l8 = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA') .filterDate('2016-06-01', '2017-06-01');// 选择红绿蓝波段,计算NDVIvar rgb = l8.selec...原创 2020-05-07 18:32:09 · 1983 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习三十八——绘制季节平均温度直方图(Sensonal Temperature)
温度直方图本文分享如何绘制美国州选定季节平均温度图表,图表显示最冷,最热以及变化最小的三个州平均温度//引入美国州矢量地图var states = ee.FeatureCollection('TIGER/2018/States');//引入美国地区温度数据,toBands()把12个影像转为一幅影像12波段//tmean表示月平均温度平均值(计算为(tmin + tmax)/2)//返...原创 2020-04-28 22:17:35 · 3684 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习三十七——MODIS地表反射率(MOD09GA)去云处理
本文分享利用MODIS地表反射率数据MOD09GA的state_1km质量评估波段去云处理。MOD09GA提供1-7波段,包括500米反射率值和1km观测和地理位置统计数据。此产品提供的空间分辨率500m1-7波段的反射率,质量等级,观察范围,观察数和250m扫描信息。提供的1km科学数据集包括观测次数,质量状态,传感器角度,太阳角,地理位置标记和轨道指针。state_1km波段:表示反射率数...原创 2020-04-27 23:00:09 · 12144 阅读 · 6 评论 -
Google Earth Engine(GEE)实例代码学习三十六——利用哨兵Sentinel-2(QA60)去云(sentinel 2)
主要操作是按位与运算bitwiseAnd()筛选像元其不同位数表示含义如下Bit 10: Opaque clouds0: No opaque clouds 透明云层1: Opaque clouds present 不透明云层Bit 11: Cirrus clouds0: No cirrus clouds 没有卷云1: Cirru...原创 2020-04-26 22:51:12 · 7200 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习三十五——利用Landsat8质量评估波段(QA)去云(Landsat8 Surface Reflectance))
Bit 0: FillBit 1: ClearBit 2: WaterBit 3: Cloud ShadowBit 4: SnowBit 5: Cloud//创建一个函数进行去云掩膜处理function maskL8sr(image) { //<<表示二进制左移几位 // 二进制第三位表示有云阴影,第五位表示有云。 var cloudShadowBitMask...原创 2020-04-26 22:25:33 · 7321 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习三十四——利用Landsat质量评估波段(QA)去云(Landsat457 Surface Reflectance))
影像去云处理本文分享Landsat4,5,7利用其从CFMASK算法生成的质量评估波段QA进行去云处理。质量评估波段(QA)是从CFMASK算法生成的关于像元质量的波段单位为二进制。主要操作是按位与运算bitwiseAnd()筛选像元其不同位数表示含义如下Bit 0: FillBit 1: ClearBit 2: WaterBit 3: Cloud ShadowBit 4: Sn...原创 2020-04-26 13:16:00 · 10905 阅读 · 10 评论 -
Google Earth Engine(GEE)实例代码学习三十三——矢量要素转栅格(Reduce To Image)
本文分享如何将创建的矢量要素集转为栅格数据,并选择某一属性作为像元值//创建一个矢量要素集,并赋予属性值var fc = new ee.FeatureCollection([ ee.Feature( ee.Geometry.Rectangle( -122.4550, 37.8035, -122.4781, 37.7935), {'value': 0}...原创 2020-04-25 21:06:09 · 4490 阅读 · 4 评论 -
()Google Earth Engine(GEE)实例代码学习三十一——利用MODIS土地分类产品(MCD12Q1)对Landsat影像分类
本文分享如何利用MODIS全球土地分类产品(MCD12Q1)通过采样点实现Landsat影像土地利用类型分类//选取一块研究区var geometry = ee.Geometry.Polygon( [[[29.972731783841393, 31.609824974226175], [29.972731783841393, 30.1103838183110...原创 2020-04-24 22:29:14 · 4701 阅读 · 3 评论 -
Google Earth Engine(GEE)实例代码学习三十——监督分类(Classification)
监督分类与CRAT进行土地类型分类本文分析如何利用选取训练样本进行土地类型分类,本利用CRAT分类回归树训练分类样本计算混淆矩阵//选取城镇代码为0,植被代码为1,水体代码为0类别训练样本var urban = ee.FeatureCollection( [ee.Feature( ee.Geometry.Point([-122.408981323242...原创 2020-04-24 21:48:48 · 8870 阅读 · 7 评论 -
Google Earth Engine(GEE)实例代码学习二十九——绘制时间序列影像的折线图(Image Time Series)
本文分享绘制研究区长时间序列数据集的折线图,x轴表示时间,y轴表示各波段的均值。并以交互的形式当用户在折线图上点击某天数据并显示出该日期的影像。//绘制感兴趣研究区var sanFrancisco = ee.Geometry.Rectangle(-122.45, 37.74, -122.4, 37.8);//选择Landsat8大气顶层反射率影像按时间选择影像,选择波段var l...原创 2020-04-23 21:39:57 · 6614 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习二十八——绘制波谱响应曲线(Image Spectral)
本文主要分享如何绘制某像元的光谱曲线,以两种形式表达,第一个为x轴表示各波段,第二个为x为波长,表示为光谱相应曲线//选取Landsat8 大气顶层反射率影像var landsat8Toa = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA');var COLOR = { PARK: 'ff0000',//红色 FARM: '0000ff',...原创 2020-04-23 21:09:18 · 5751 阅读 · 13 评论 -
Google Earth Engine(GEE)实例代码学习二十七——创建折线图(Elevation Profile)
海拔高度折线图本文主要分享创建点要素并绘制其海拔高度折线图//获取数字高程影像var elevation = ee.Image('CGIAR/SRTM90_V4');//创建9个点要素数组var waypoints = [ ee.Feature( ee.Geometry.Point([-121.7353, 46.78622]), {'name': 'Parad...原创 2020-04-23 20:40:40 · 1709 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习二十六——绘制直方图(Elevation Histogram )
本文主要分享如何利用GEE提供有关图表函数ui.Chart.image.histogram()绘制所选区域海拔高度直方图// 获取数字高程影像,绘制研究区var elevation = ee.Image('CGIAR/SRTM90_V4');var colorado = ee.Geometry.Rectangle(-109.05, 37, -102.05, 41);// 创建一个直方图v...原创 2020-04-23 20:20:19 · 3002 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习二十五——计算面要素区域面积(Computed area filter.)
计算面要素面积本文主要分享如何利用GEE提供函数area()计算面要素面积,并将其作为字段添加,再按一定规则进行搜索面要素//添加美国行政边界要素数据集var counties = ee.FeatureCollection('TIGER/2016/Counties');// 利用GEE提供函数计算面积var countiesWithArea = counties.map(function...原创 2020-04-23 19:53:09 · 6001 阅读 · 3 评论 -
Google Earth Engine(GEE)实例代码学习二十四——创建缓冲区(Buffer)
矢量数据缓冲区本文主要分享如何创建矢量点要素的缓冲区//创建一个数组由三个点要素组成var stations = [ ee.Feature( ee.Geometry.Point(-122.42, 37.77), {'name': '16th St. Mission (16TH)'}), ee.Feature( ee.Geometry.Point(-122.42...原创 2020-04-23 19:39:15 · 2744 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习二十三——创建矢量数据集(From Polygons)
创建多边形FeatureCollection本文分享如何创建多边形矢量数据集,并显示在图像上//创建一个由两个多边形组成的矢量数据集var fc = ee.FeatureCollection([ // 创建矢量为面要素其坐标 ee.Feature( ee.Geometry.Polygon({ coords: [[-109.05, 41], [-109.05...原创 2020-04-23 19:26:51 · 2106 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习二十二_——Landsat影像集最小云量合成(simpleComposite)
Landsat最小云量复合本文主要分享如何利用GEE提供算法simpleComposite()进行全球Landsat影像数据集最小云量合成。//选择Landsat8影像数据集var l8 = ee.ImageCollection('LANDSAT/LC08/C01/T1');//利用时间选取影像,单位与Landsat原始影像保持一致var composite = ee.Algorithm...原创 2020-04-22 17:22:16 · 4578 阅读 · 4 评论 -
Google Earth Engine(GEE)实例代码学习二十一——创建GIF缩略图
创建区域GIF本文分享如何创建澳大利亚区域NDVI变化GIF缩略图//创建包含澳大利亚区域的矩形var rect = ee.Geometry.Rectangle({ coords: [[110, -44], [155, -10]], geodesic: false});Map.addLayer(rect);Map.centerObject(rect, 3);// 选择MOD...原创 2020-04-22 16:49:23 · 1083 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习二十——利用波段线性拟合(linearFit)
夜间灯光数据线性拟合本文分享如何利用影像波段实现线性拟合。linearFit()计算斜率和截距,输入数据第一个为x第二个为y//创建一个函数:获取每张图像的"年"与1990年差值,作为一个波段添加到数据集中,作为线性拟合的参数function createTimeBand(img) { var year = img.date().difference(ee.Date('1990-01-...原创 2020-04-22 16:13:16 · 4444 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习十九——筛选影像集(Filtered Composite)
根据时间位置筛选影像本文主要分享如何利用时间以及区域进行影像数据集筛选,主要是利用有关Filter的函数//创建一个选取影像所在区域var polygon = ee.Geometry.Polygon({ coords: [[[-109.05, 37.0], [-102.05, 37.0], [-102.05, 41.0], // Colorado [-109.05...原创 2020-04-21 21:08:29 · 3336 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习十八——利用表达式计算影像集(Expression Map)
本文分享如何利用自己创建表达式计算影像集,计算表达式为NDVI和SAVI//筛选影像数据集ar collection = ee.ImageCollection('LANDSAT/LE07/C01/T1_TOA') .filterDate('2002-11-01', '2002-12-01');//创建一个计算影像集的表达式函数_NDVI,选取波段名必须与影像波段名匹配var NDV...原创 2020-04-21 20:57:32 · 2927 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习十七——矢量裁剪影像(clipped Composite)
本文分享如何利用矢量的属性进行影像的裁剪,利用美国州的矢量(featurecollection)裁剪Landsat影像//筛选一个数据集var collection = ee.ImageCollection('LANDSAT/LE07/C01/T1') .filterDate('2000-04-01', '2000-07-01');// 取影像集的中值var median = coll...原创 2020-04-21 20:41:59 · 7331 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习十六——绘制经纬网(Pixel Lon Lat)
绘制像元经纬网本文主要分享如何在图上显示经纬网//创建具有两个带的图像,分别称为“经度”和“纬度”,分别包含每个像素的经度和纬度(以度为单位)。var img = ee.Image.pixelLonLat().multiply(60.0);print(img)// 理解为设置经纬网宽度img = img.subtract(img.floor()).lt(0.05);// 绘制经纬线...原创 2020-04-21 19:06:41 · 1526 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习十五——计算像素面积(pixelArea)
GEE获取单个像素覆盖面积Image.pixelArea()函数以较高的纬度显示单个像素覆盖的缩小区域。创建一个图像,其中每个像素的值就是其面积。说实话这个我没理解,每个像素覆盖面积不是一样的吗?如果有懂得的请留言告诉我。很短的代码var img = ee.Image.pixelArea();Map.setCenter(0, 0, 3);Map.addLayer(img, {min: ...原创 2020-04-19 22:54:23 · 5037 阅读 · 3 评论 -
Google Earth Engine(GEE)实例代码学习十四——影像非线性对比度增强(polynomial)
GEE利用多项式实现影像对比度增强本文分享如何用多项式实现MODIS影像对比度增强——polynomialGEE提供polynomial()这个函数表示从常数项开始按次数递增的多项式,使用给定的系数计算每个像素的多项式放代码看看//加载MODSI地表反射率数据,真彩色合成var img = ee.Image('MODIS/006/MOD09GA/2012_03_09').select([...原创 2020-04-19 22:36:41 · 768 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习十三——零交叉点(zeroCrossing)
GEE零交叉点(zeroCrossing)找海拔超过1000的像素先来看看什么是零交叉点,说实话看完这个介绍吧我还是不懂!我就单纯看图理解吧,从运行结果看感觉像探测边缘,但结果为一个个像素这个算子的作用就是从图像中提取出零交叉点。所谓零交叉点,是指在正弦函数图像中的过零点,也就是上一刻为正,下一刻就变成负的那个点,这样一想自然就是x轴上的点了。但是在图像中稍微有些不同。那么在图像中什么是...原创 2020-04-19 22:15:53 · 1878 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习十二——霍夫变换(Hough Transform)提取几何图形
GEE了利用霍夫变换提取几何图形本文利用GEE提供的Hough Transform函数探测线或圆等几何图形。先来看看霍夫变换是什么?1、霍夫变换检测直线原理霍夫变换,英文名称Hough Transform,作用是用来检测图像中的直线或者圆等几何图形的。一条直线的表示方法有好多种,最常见的是 y=mx+b 的形式。 假设有一幅图像,经过滤波,边缘检测等操作,怎么把这张图片中的直线提取出来...原创 2020-04-19 21:33:01 · 1027 阅读 · 0 评论 -
Google Earth Engine(GEE)实例代码学习十一——影像全色波段融合提高分辨率(HSV Pan Sharpening)
利用全色波段提高影像分辨率本文分享如何利用Landsat8全色波段提高影像分辨率//筛选Landsat8影像云覆盖最少影像var image = ee.Image(ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA') .filterDate('2017-01-01', '2017-12-31') .filterBounds(ee.Geometry...原创 2020-04-19 20:16:35 · 5381 阅读 · 6 评论 -
Google Earth Engine(GEE)实例代码学习十——计算像元周围像元个数(connectedPixelCount)
计算像元周围像元个数(connectedPixelCount)本文主要分享GEE函数connectedPixelCount,统计你的目标像元周围有多少个像元//搜索MODIS地表反射率产品,选择波段一将反射率缩小为原来倍数var img = ee.Image('MODIS/006/MOD09GA/2012_03_09') .select('sur_refl_b01...原创 2020-04-19 19:45:47 · 3272 阅读 · 5 评论 -
Google Earth Engine(GEE)实例代码学习九——指定影像波段范围显示(clamp)
.本文分享如何显示指定波段范围——clamp()代码实例为高程数据,显示高程值在1000-2000范围的影像值var image = ee.Image('CGIAR/SRTM90_V4');var clamped = image.clamp(1000, 2000);Map.setCenter(-121.753, 46.855, 9);Map.addLayer(image, {min: ...原创 2020-04-19 18:57:09 · 3200 阅读 · 3 评论 -
Google Earth Engine(GEE)实例代码学习八——Canny边缘检测
本文主要分享GEE提供边缘检测函数——‘CannyEdgeDetector’利用NDVI检测植被边缘//加载Landsat5大气层反射率书籍,计算NDVIvar image = ee.Image('LANDSAT/LT05/C01/T1_TOA/LT05_031034_20110619');var ndvi = image.normalizedDifference(['B4','B3'])...原创 2020-04-19 17:29:07 · 1770 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习七——影像区域信息统计
本文分享如何统计一个地区的信息//得到数字高程数据var image = ee.Image('CGIAR/SRTM90_V4');var poly = ee.Geometry.Rectangle([-109.05, 41, -102.05, 37]);//绘制一个矩形区域//统计这个矩形区域高程最大值,设置分辨率Wie200var max = image.reduceRegion({ ...原创 2020-04-19 16:25:07 · 4627 阅读 · 2 评论 -
Google Earth Engine(GEE)实例代码学习五——计算山体阴影(HillShade)
标题本文分享利用数字高程模型SRTMS数据,模拟太阳方位角由0到360度变化的山体阴影。首先引入计算山体阴影的计算公式二、山体阴影计算方法山体阴影的计算公式如下(1) Hillshade = cos(Zenith) * cos(Slope)+cos(Azimuth - Aspect) * sin(Slope) * sin(Zenith)其中,Zenith是太阳天顶角的的弧度数,Sl...原创 2020-04-18 22:26:08 · 3712 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习四——表达式计算(Expression)
标题——表达式本文分享如何单张影像计算表达式——‘Expression’实例代码为计算MODIS地表反射率影像EVI。上文利用GEE提供的函数便捷化计算了归一化差分指数,这里主要是计算自己的表达式。//加载MODIS地表反射率数据其单位为*10000,所以这里需要*0.0001var img = ee.Image('MODIS/006/MOD09GA/2012_03_09').multi...原创 2020-04-18 18:56:32 · 5314 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习三——归一化差分指数(Normalized Difference)
标题本文主要分享利用影像各波段如何计算归一化差分指数——‘Normalized Difference’这里例子为计算NDVI//加载MODIS地表反射率影像,位置为全球范围var img = ee.Image('MODIS/006/MOD09GA/2012_03_09');//计算公式:normalizedDifference(A, B),表示 (A - B) / (A + B)//计...原创 2020-04-18 18:08:38 · 4692 阅读 · 1 评论 -
Google Earth Engine(GEE)实例代码学习 二
本文主要分享如何已知影像名或影像ID,得到影像并加以显示。GEE实例代码“Image—From Name”// 这里影像为“2000-02-11-2000-02-22”全球高程数据,//这里应为单张影像而不能为影像集var image = ee.Image('CGIAR/SRTM90_V4'); // 自定义显示范围中心Map.setCenter(-110, 40, 5);// 显示...原创 2020-04-18 17:11:43 · 3144 阅读 · 0 评论