单窗算法的地表温度反演:谷歌地球引擎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代码)
本篇文章是原文的译文,然后自己对其中做了一些修改和添加内容(随机森林和降维算法).文章简洁地介绍了机器学习的主要算法和一些伪代码,对于初学者有很大帮助,是一篇不错的总结文章,后期可以通过文中提到的算法 ...
随机推荐
- java map重写 转大写、转驼峰
/** * @author admin * @Description * 转大写 */ public class HashMapUpper<V> extends HashMap<St ...
- [Unity移动端]真机调试
一.Android Studio 1.log打印 打开AS,新建一个工程,点击左下角的Logcat,如下图,1是设备(支持模拟器,如果是真机的话,需要usb连接电脑,真机要是usb调试模式),2是包名 ...
- baodoumi yml配置
上次因为自增,发现配置没生效, 修改后如下 # 配置mybatis-plus, 参考:com.baomidou.mybatisplus.autoconfigure.MybatisPlusPropert ...
- Less8-Less10 时间注入
Less-8和Less-5使用的是一样的布尔盲注,为了学习,这里我们使用时间盲注 Less-8 这里使用到了mysql中的if语句,格式为if(条件,正确执行,错误执行) 实例如图: sleep(秒速 ...
- 如何建设私有云原生 Serverless 平台
随着云计算的普及,越来越多的企业开始将业务应用迁移到云上.然而,如何构建一套完整的云原生 Serverless 平台,依然是一个需要考虑的问题. Serverless的发展趋势 云计算行业从 IaaS ...
- Tesseract5+OpenCV4(VS2017+win10)实现OCR识别
一.环境配置 较之前采用cppan进行编译的方式,vcpkg的方式已经发生了许多变化,带来的最大不同就是便捷. 对于在NuGet中能够找到的Vcpkg的export,真的实现了开箱即用 这样的话对于普 ...
- Go语言:利用 TDD 测试驱动开发帮助理解数组与动态数组(切片)的区别
Array VS Slice 数组允许你以特定的顺序在变量中存储相同类型的多个元素. 对于数组来说,最常见的就是迭代数组中的元素. 我们创建一个 Sum 函数,它使用 for 来循环获取数组中的元素并 ...
- 基于深度学习的智能PCB板缺陷检测系统(Python+清新界面+数据集)
摘要:智能PCB板缺陷检测系统用于智能检测工业印刷电路板(PCB)常见缺陷,自动化标注.记录和保存缺陷位置和类型,以辅助电路板的质检.本文详细介绍智能PCB板缺陷检测系统,在介绍算法原理的同时,给出P ...
- Java面试——写一个生产者与消费者
更多内容,前往个人博客 一.通过synchronize 中的 wait 和 notify 实现 [1]我们可以将生产者和消费者需要的方法写在公共类中 1 package com.yintong.con ...
- SQL优化---慢SQL优化
于2023.3.17日重写,之前写的还是太八股文太烂了一点逻辑都没有,这次重新写了之后,感觉数据库优化还是很有必要的,之前觉得不必要是我年轻了. 一.如何定位慢SQL语句 1.通过慢查询日志查询已经执 ...