单窗算法的地表温度反演:谷歌地球引擎GEE代码
本文介绍在GEE中基于Landsat遥感影像实现地表温度(LST)单窗算法反演的代码。
1 背景知识
基于遥感数据的地表温度(LST)反演目前得到了广泛的应用,尤其是面向大尺度、长时间范围的温度数据需求,遥感方法更是可以凸显其优势。目前,基于各类遥感数据源的地表温度反演方法不断得以改进,精度亦不断提升。而利用遥感图像处理软件,对地表温度加以反演,其操作整体较为繁琐,尤其是需要处理大量遥感数据时,其数据下载、操作步骤与结果保存等,都是很大的问题。因此,本文介绍一种基于谷歌地球引擎(Google Earth Engine,GEE)的地表温度反演算法及其代码。
该方法基于Landsat 4/5/7/8卫星反演地表温度。基于该算法,我们可以直接在GEE中获取遥感图像、计算LST,并选择下载结果文件,非常方便快捷。
本文所依据的文献为:Google Earth Engine Open-Source Code for Land Surface Temperature Estimation from the Landsat Series,发表于Remote Sensing。
2 算法介绍
该论文基于Statistical Mono-Window(SMW)算法,对地表温度加以求解。其中,简单地说,SMW算法即是通过简单的线性关系,对由单热红外波段所得的大气表观亮温与地表温度之间的经验关系加以表示,从而计算得到LST。

3 代码
代码在这里。
点击链接,浏览器将自动进入你的GEE帐号;而代码则将会自动出现在左侧Script的Reader中:

其中,modules为计算LST的综合代码库,我们仅仅需要修改、运行其下方example_1.js或example_2.js的内容即可;其中,依据作者的注释我们可以知道,example_1.js用以计算单时相LST,而example_2.js则为多时相LST。
我们就以example_1.js为例。其中,在代码的这一部分:
// select region of interest, date range, and landsat satellite
var geometry = ee . Geometry . Rectangle([-8.91, 40.0, -8.3, 40.4]);
var satellite = 'L8' ;
var date_ start = '2018-05-15' ;
var date_ end =' 2018-05-31' ;
var use_ ndvi= true;
由上到下分别是修改ROI区域(即需要计算LST的区域)、基于的卫星(即Landsat 4/5/7/8)、所依据遥感图像开始和结束的时间,以及是否引入NDVI计算。大家在实际操作时,依据自己的需要自行修改这部分内容即可。
4 效果
在这里,我们将作者原定的位于美国的ROI修改为武汉市局部地区,以此为例执行代码,效果如下:

其中,黑色区域是我的ROI,底图便是已经计算出的温度数据图层了(由此可知,代码默认计算整个可见范围的LST,这里的ROI仅仅是方便我们查看、对比感兴趣区域内是否各栅格点均有LST数据)。整个代码执行的过程仅仅需要几秒钟,和用遥感图像处理软件操作比起来真的快了很多。
随后,依据需要自行选择下载结果数据的范围、保存方法等即可。是不是非常方便~
最后,大家在使用上述代码时,也要记得按照论文作者的相关要求来,需要规范引用的场合要引用清楚,尊重大家的劳动成果。
单窗算法的地表温度反演:谷歌地球引擎GEE代码的更多相关文章
- 基于Google Earth Engine的全国地表温度反演
国内研究landsat8温度反演的人员很多,但是现有算法一般都是一景为例子,进行开展. 这有一个局限性,当研究的尺度很大时,就需要比较大的运算量了,例如全省温度,全国温度,全球温度,当然大家可能会说, ...
- 全自动Landsat影像温度反演软件开发
许久没有更新遥感类软件开发了,都有点生疏了,这一次我带来了一个老的算法,新的东西, 为什么这么说呢,我们知道Landat8.Landsat5等影像,单个影像去做温度反演,并没有什么太大的难度, 但是呢 ...
- Reverse反转算法+斐波那契数列递归+Reverse反转单链表算法--C++实现
Reverse反转算法 #include <iostream> using namespace std; //交换的函数 void replaced(int &a,int & ...
- UVA 1619/POJ2796 滑窗算法/维护一个单调栈
Feel Good Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 12409 Accepted: 3484 Case T ...
- ARCGIS进行地理配准并加载到谷歌地球中查看
普通的地图图片如何能让其附有经纬度坐标和投影信息,如何能将普通的地图图片加载到诸如谷歌地球等相关的三维地球软件当中进行生产或学习使用呢,这就要用到gis当中常用的一种功能,叫做地理配准.地理配准并不复 ...
- 【谷歌浏览器】【谷歌地球】【Adobe 软件】离线安装包的下载地址
因为某些原因?我们需要下载谷歌浏览器的离线安装版,找了好几次地址了,这次自己记录一下吧! 主要就是加两个参数,standalone 就是离线安装吧,platform 就是平台版本吧,哈~ 离线32位: ...
- 谷歌地球 Google Earth v7.3.2.5495 专业版
谷歌地球(Google Earth,GE)是一款谷歌公司开发的虚拟地球软件,它把卫星照片.航空照相和GIS布置在一个地球的三维模型上.谷歌地球于2005年向全球推出,被<PC 世界杂志>评 ...
- OpenLayers加载谷歌地球离线瓦片地图
本文使用OpenLayers最新版本V5.3.0演示:如何使用OpenLayer加载谷歌地球离线瓦片地图.OpenLayers 5.3.0下载地址为:https://github.com/openla ...
- 在CAD中插入谷歌地球卫星地图
本文主要介绍如何在CAD中插入谷歌地球卫星地图,作为参照光栅图像.谷歌地球卫星地图使用“迈高图-地图数据下载器”(以下简称:迈高图)下载.迈高图会给出相关插入参数(插入点和缩放比例),保证插入卫星地图 ...
- 机器学习算法的基本知识(使用Python和R代码)
本篇文章是原文的译文,然后自己对其中做了一些修改和添加内容(随机森林和降维算法).文章简洁地介绍了机器学习的主要算法和一些伪代码,对于初学者有很大帮助,是一篇不错的总结文章,后期可以通过文中提到的算法 ...
随机推荐
- kvm虚拟机添加在线快照
1-1.创建默认快照--一般为一串数字 virsh snapshot-create 虚拟机名称 1-2.创建自定义名称快照 virsh snapshot-create-as 虚拟机名称 快照名称 2. ...
- vue3.0的生命周期函数
stetup(){}在 生命周期函数 系列中的优先级 〇setup(){ //优先级最高 处于created生命周期之前的函数,是无法访问data,methods中的数据是无法访问到的,setup中的 ...
- BLE目录
CH58x/CH57x 蓝牙从机篇(Peripheral) CH573 CH582 CH579蓝牙从机(Peripheral)/主机(Central)例程讲解一(蓝牙主从机收发数据接口说明) CH57 ...
- ArcEngine(平板电脑墨迹错误代码。多次调用 RtpEnabled (异常来自 HRESULT:0x80040239))问题未有效解决
测试数据库中的要素无法执行ITopologicOperater接口下的方法,错误如图 暂记,错误未解决 tip: 1.随便移动一个节点 也不报错/ 2.手动按照他的节点画一个也不报错 3.bufer参 ...
- 学习记录--C++组合+依赖+依赖倒置
组合关系:表示类之间的关系是整体与部分的关系.即has a / contains a的关系 在面向对象程序设计中,将一个复杂对象分解为简单对象的组合. 在代码中,体现为将一个或多个类的对象作为另一个类 ...
- 基于 Gitlab + Harbor + K8s + Kuboard 的 CI 实践
CI/CD 概念 CI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法.CI/CD 的核心概念是持续集成.持续交付和持续部署.作为一种面向开发和运维团队的解决方案,CI/CD 主要 ...
- KMP 自动机,孤独的自动机(同时也是CF1721E的题解)
给定字符串 \(s\),以及 \(q\) 个串 \(t_i\),求将 \(s\) 分别与每个 \(t_i\) 拼接起来后,最靠右的 \(|t_i|\) 个前缀的 border 长度.询问间相互独立. ...
- InnoDB 索引深入剖析
InnoDB页 将数据划分为若干个页(page),以页作为磁盘和内存之间交互的基本单位,InnoDB中页的大小一般为 16KB.也就是在一般情况下,一次最少从磁盘中读取16KB的内容到内存中,一次最少 ...
- vue-router面试题
1.vue-router怎么重定向页面? 答:路由中配置redirect属性 2.vue-router怎么配置404页面? 答:path: '*' 是对的 但是应该放在最后一个 3.切换路由时,需要保 ...
- JsonCpp JSON格式处理库的介绍和使用(面向业务编程-文件格式处理)
JsonCpp JSON格式处理库的介绍和使用(面向业务编程-文件格式处理) 介绍 JSON是一种轻量级的数据交换格式,它是一种键值对的集合.它的值可以是数字.字符串.布尔值.序列. 想知道更多有关J ...