前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Google Earth Engine(GEE)——影像进行数学运算(NDVI为例)!

Google Earth Engine(GEE)——影像进行数学运算(NDVI为例)!

作者头像
此星光明
发布2024-02-01 20:06:51
1770
发布2024-02-01 20:06:51
举报

数学运算符对图像带执行基本的算术运算。它们接受两个输入:两个图像或一个图像和一个常数项,它被解释为没有屏蔽像素的单波段常数图像。对于每个波段,按像素执行操作。

举一个简单的例子,使用陆地卫星图像,其中计算归一化植被指数(NDVI)的中会使用到add()subtract()以及divide()用于运营商:当然这里有集成号的内置函数可以使用: normalizedDifference()

仅考虑两个输入之间未屏蔽像素的交集并将其返回为未屏蔽,其他所有像素均已屏蔽。通常,如果任一输入只有一个波段,则它会用于另一个输入中的所有波段。如果输入具有相同数量的波段,但名称不同,则它们按自然顺序成对使用。输出波段以两个输入中较长的命名,或者如果它们的长度相等,则按第一个输入的顺序命名。输出像素的类型是输入类型的并集。下面这张图就是波段信息:在此示例的第二部分中,使用 计算平方差 image.pow(2)。有关处理基本算术、三角、幂、舍入、强制转换、按位运算等.

平方差结果

2008-1999的差异

代码:

代码语言:javascript
复制
//第一部分就是一个简单的NDVI的计算
// Load a 5-year Landsat 7 composite 1999-2003.
var landsat1999 = ee.Image('LANDSAT/LE7_TOA_5YEAR/1999_2003');

// Compute NDVI.
var ndvi1999 = landsat1999.select('B4').subtract(landsat1999.select('B3'))
  .divide(landsat1999.select('B4').add(landsat1999.select('B3')));



//第二部分就是运用5年的NDVI进行一个差值计算和平方差的计算并且以图形显示效果
// Load a 5-year Landsat 7 composite 2008-2012.
var landsat2008 = ee.Image('LANDSAT/LE7_TOA_5YEAR/2008_2012');

// Compute multi-band difference between the 2008-2012 composite and the
// previously loaded 1999-2003 composite.
var diff = landsat2008.subtract(landsat1999);
Map.addLayer(diff,
             {bands: ['B4', 'B3', 'B2'], min: -32, max: 32}, 'difference');

// Compute the squared difference in each band.
var squaredDifference = diff.pow(2);
Map.addLayer(squaredDifference,
             {bands: ['B4', 'B3', 'B2'], max: 1000}, 'squared diff.');
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com