(二)GEE基礎學習初探及案例詳解【20250330】

Google Earth Engine(GEE)是由谷歌公司開發的眾多應用之一。借助谷歌公司超強的服務器運算能力以及與NASA的合作關系,GEE平臺將LandsatMODISSentinel等可以公開獲取的遙感圖像數據存儲在谷歌的磁盤陣列中,使得GEE用戶可以方便的提取、調用和分析海量的遙感大數據資源。GEE在設計之初就是為了服務科研人員而構建的,因此在概念上可以將GEE視為一種工具,類似于菜刀之于廚師或者獵槍之于獵手,而不應該將其當作一種復雜的計算機編程平臺。

詳見小編博客:Google Earth Engine概述

?GEE中通用地理學思維

👀空間發現

GEE與谷歌公司的另一款名為Google Earth的軟件具有類似的空間發現功能,即可以展示地球表面客觀存在的現象和地貌。同樣的,GEE也具有類似的地理發現功能,我們利用Map.setCenter()命令將GEE的觀察窗口移動到對應的位置,同時將GEE的底圖設置為衛星圖像,具體命令如下所示。

  1. 點擊GEE底圖框右上角的衛星圖像按鈕;

  2. 在Code Editor中輸入"Map.setCenter(116.39, 39.91)"指令;

  3. 觀察結果。

GEE具有與其他常見的地理/地圖軟件產品相類似的"觀察地球"的功能,但是GEE與其他產品的顯著不同點在于其依靠命令而不是點擊進行操作。這種操作方式相對Google Earth來說較為繁瑣,而且不符合人的操作直覺,但正是這種基于指令的操作方式給予了GEE更大的自由空間,讓用戶能夠更加靈活的對地理數據進行分析和處理。

👀空間疊加

GEE與其他地理信息系統(GIS)平臺類似的地理思路還包括圖層疊加。在分析地理問題時,常常需要考慮某一種或幾種因素(因)對目標因素(果)的影響。這種影響關系在GIS系統中常常表現為將不同圖層疊加后獲得結果圖層的過程。例如,利用坡向數據增強高程數據顯示效果的過程就可以看作是疊加坡度和高程數據得到結果圖層的過程。在ArcGIS中增強背景地區高程數據的顯示的具體操作如下:

  • 加入中國的DEM數據;
  • 加入中國行政區數據;
  • 利用屬性篩選北京的行政區邊界;
  • 利用北京行政邊界對中國的DEM數據進行裁剪,得到"DEM_Beijing";
  • 利用工具箱中的"hillshade"工具處理"DEM_Beijing"得到"Hillshade_Beijing";
  • 在"顯示工具欄"中將"Hillshade_Beijing"的透明度調整為70%;
  • 得到結果。

將上述操作實施在GEE中的代碼如下。可以看出GEEArcGIS在操作思路上幾乎是完全相同的,因此可以將ArcGIS的操作步驟作為注釋加入到代碼中。

// 加入DEM
var DEM = ee.Image('USGS/SRTMGL1_003');
// 加入中國行政邊界
var China_Provices = ee.FeatureCollection("projects/ee-xiaotang9527/assets/shp/China");
// 利用屬性篩選北京的行政區邊界
var Beijing = China_Provices.filterMetadata('name','equals','北京市').first().geometry();
// 利用北京行政邊界對中國的DEM數據進行裁剪,得到‘Beijing_DEM’
var DEM_Beijing = DEM.clip(Beijing);
// 利用工具箱中的'hillshande'工具處理'Beijing_DEM'得到'Beijing_Hillshande'
var HillShade_Beijing = ee.Terrain.hillshade(DEM_Beijing);
// 將地圖的顯示中心定位到北京,縮放界別調整為7
Map.centerObject(Beijing,7);
//將'HillShade_Beijing'的透明度調整為70%,得到結果
Map.addLayer(DEM_Beijing,{"bands":["elevation"],'min':0,"max":2500,"palette":["ff6a13","e8ff2d","60ff56"]},'DEM_Beijing');
Map.addLayer(HillShade_Beijing,{"opacity":0.7,"bands":["hillshade"],"gamma":1},'HillShade_Beijing')

在這里插入圖片描述

// 加入中國行政界線,并重命名為China_Provinces
var China_Provices = ee.FeatureCollection("projects/ee-xiaotang9527/assets/shp/China");
// 將顯示中心調整為China_Provinces,縮放級別調整為4
Map.centerObject(China_Provices, 4)
// 將China_Provinces以默認方式顯示在地圖上
Map.addLayer(China_Provices);   

在這里插入圖片描述

// 加入高程數據
var DEM = ee.Image("USGS/SRTMGL1_003");
// 加入坡度數據
var SLOPE = ee.Terrain.slope(DEM)
// 提取高程大于500m的區域"DEM_提取"
var DEM_Reclass = DEM.gt(500)
// 提取坡度小于10°的區域"SLOPE_提取"
var SLOPE_Reclass = SLOPE.lt(10)
// 利用工具將"DEM_提取"和"SLOPE_提取"疊加
var DEM_SLOPE_Intersect = DEM_Reclass.and(SLOPE_Reclass)
// 得到結果
Map.setCenter(116.39, 39.91, 3)
Map.addLayer(DEM_SLOPE_Intersect)

在這里插入圖片描述

空間數據的坐標:無論是柵格數據還是矢量數據,在空間分析的語境中都必不可少的涉及到"坐標"這一概念。"坐標"可以理解為位置系統,"坐標變換"可以理解為從一種位置系統向另一種位置系統的數學變換。在GEE中,當系統處理柵格數據時,首先確定柵格左上角的坐標,然后根據每個柵格的大小將柵格中的每個像素"鋪"在底圖上。在處理矢量數據時,矢量數據的空間屬性本質上是由點構成的,因此首先確定參考點的坐標,然后利用數學公式將其他點的坐標計算出來。

?GEE圖形用戶界面

GEE是一個主要依靠編碼命令進行空間分析和操作的平臺,但GEE也有適合界面操作的平臺:GEE的圖形用戶界面(Graphical User Interface, GUI)。GEE的GUI的優點在于符合人的操作直覺,并且對新用戶友好,缺點是功能較少,可以實現的空間分析有限。GEE的學習重點并不在GUI上,可以將本節作為一種過渡,一種從"點擊操作"到"命令操作"的適應過程。GEE的GUI主要由數據、計算、分析和顯示四部構成。其中計算和分析功能只有在申請GEE資格并且登陸以后才能完全使用。
在這里插入圖片描述

👀GUI的運算功能

在工作區加入數據后,利用Add computation工具可以對加入的數據進行進一步的處理。GUI的計算類型一共有5種,分別用于波段添加,掩膜處理,像素運算,鄰域處理以及地形處理。

  • 波段添加的作用在于將若干柵格數據集合成復合數據,例如可以將SLOPE波段加到DEM波段上,可以得到一個包含SLOPE和DEM的數據集。
  • 掩膜處理的目的在于告訴GUI圖像的哪些部分參與運算,哪些部分不參與運算。
  • 像素運算的目的在于挑選出合適的像素以及對像素進行數學處理,例如像素運算的閾值篩選可以篩選出高程小于900m的像素,而像素運算的表達式運算可以利用公式(Band5-Band4)/ (Band5+Band4)計算出Landsat8系列圖像的NDVI值。
  • 鄰域運算可以對圖像進行邊界提取,卷積以及差分計算。
  • 地形計算可以計算出高程圖像的坡度、坡向和山體陰影。

👀GUI的分析功能

GEE的GUI中的分析功能是完全服務于遙感圖像分類的。GUI分析功能由訓練分類器,交叉驗證和分類對比三個功能組成,其中訓練分類器功能是GUI分析功能的核心。

?GEE應用程序編程接口

GEE的應用程式編程接口(Application Programming Interface, API)是GEE的核心功能所在,也是GEE用戶最為關注的平臺,與GUI相比,API可以調用GEE平臺中的所有數據和功能。可以說,學習GEE就是學習GEE的API。GEE的API界面主要由4個部分構成,分別是"代碼及個人文件欄",“程序編寫框”,“數據報告欄"和"結果呈現框”。

  • 代碼及個人文件欄的主要作用是存放用戶代碼,提供GEE自帶的代碼格式規范(可以理解為幫助文件),以及管理用戶個人數據(用戶可以將自己的柵格或矢量數據上傳至這里,供分析和使用)。
  • 程序編寫框是 GEE 用戶執行操作的主界面,可以把程序編寫框理解為一個文本編輯器,在進行命令代碼編寫時,程序編寫框會根據代碼格式自動對代碼進行上色和報錯處理。
  • 數據報告欄是GEE用戶獲取程序運行結果的重要窗口。通常情況下,運行結果以圖像的方式顯示在結果呈現區,但對于一些屬性或者統計類的報表信息,只能通過數據報告欄進行查詢;同時,程序的運行調試也常常會利用數據報告欄對分步結果進行查看。
  • 結果呈現欄是API中面積占比最大的區域,其主要作用是對空間數據進行呈現。
    在這里插入圖片描述

參考資料:GEE學習文檔(王金柱)

多謝!多謝!
筆者不才,請多交流!!!

歡迎大家關注預覽我的博客Blog:HeartLoveLife
能力有限,敬請諒解!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/75056.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/75056.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/75056.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

redhat認證是永久的嗎

?認證有效期 ?紅帽認證一般有效期為3年?(如RHCSA、RHCE、RHCA等),從通過考試之日起計算。 ?例外:部分基礎或工程師認證(如Red Hat Certified Engineer)有效期為三年時間,以官方最新政策為準…

git --- cherry pick

git --- cherry pick cherry pick cherry pick Cherry Pick 是 Git 中的一個操作,它允許你選擇某個分支的某次(或多次)提交,并將其應用到當前分支,而不會合并整個分支的所有更改。 cherry pick 的作用 只提取某個特定的…

妙用《甄嬛傳》中的選妃來記憶概率論中的乘法公式

強烈推薦最近在看的不錯的B站概率論課程 《概率統計》正課,零廢話,超精講!【孔祥仁】 《概率統計》正課,零廢話,超精講!【孔祥仁】_嗶哩嗶哩_bilibili 其中概率論中的乘法公式,老師用了《甄嬛傳…

AI 的出現是否能替代 IT 從業者?

AI 的出現是否能替代 IT 從業者? AI 的快速發展正在深刻改變各行各業,IT 行業也不例外。然而,AI 并非完全替代 IT 從業者,而是與其形成互補關系。本文將從 AI 的優勢、IT 從業者的不可替代性、未來趨勢等方面,探討 AI…

【leetcode100】有效的括號

1、題目描述 給定一個只包括 (,),{,},[,] 的字符串 s ,判斷字符串是否有效。 有效字符串需滿足: 左括號必須用相同類型的右括號閉合。左括號必須以正確的順序閉合。每個右括號都有一個對應的…

為什么使用Flask + uWSGI + Nginx 部署服務?

概述 在Python開發的web應用中,我們通常能夠看到flask、uWSGI、Nginx出現在一起,他們之間的關系是什么?為什么總是被應用在一起?  三者共同使用為了實現一個目的:客戶端向服務端發送數據請求,服…

接口等冪處理

介紹 ? 什么是等冪(Idempotency)? 等冪 無論這個操作被執行多少次,結果都是一樣的,不會因為多次執行而產生副作用。 通俗一點說:“點一次和點一百次,效果是一樣的。” ? 在接口中&#xff0…

P1090合并果子(優先隊列)

洛谷題目 這里使用的是優先隊列&#xff0c;非常簡單 首先讓我們一起來學習一下優先隊列&#xff08;默認是從大到小來排列&#xff09; 首先要使用頭文件 #include<queue> using namespace std; 然后聲明有限隊列 priority_queue<int> a; priority_queue&…

藍橋杯備考---->并查集之 Lake Counting

這道題就統計有多少個連通塊就行了 這時候我們又需要把二維轉成一維了&#xff0c;也就是把每一個格子都給一個編號 當我們合并連通塊的時候&#xff0c;其實是只需要四個方向的 因為我們是從上往下遍歷的&#xff0c;我們遍歷到某個位置的時候&#xff0c;它已經和上面部分…

React受控表單綁定

受控表單綁定 在 React 中&#xff0c;受控組件&#xff08;Controlled Component&#xff09;是指表單元素的值由 React 組件的 state 管理&#xff0c;React 通過 onChange 事件監聽輸入變化&#xff0c;并實時更新 state&#xff0c;從而控制表單輸入值。 為什么要使用受控…

8、linux c 信號機制

一、信號概述 1. 信號概念 信號是一種在軟件層次上對中斷機制的模擬&#xff0c;是一種異步通信方式。信號的產生和處理都由操作系統內核完成&#xff0c;用于在進程之間傳遞信息或通知某些事件的發生。 2. 信號的產生 信號可以通過以下方式產生&#xff1a; 按鍵產生&…

CSP-J 2019 入門級 第一輪(初賽) 完善程序(2)

【題目】 CSP-J 2019 入門級 第一輪&#xff08;初賽&#xff09; 完善程序&#xff08;2&#xff09; &#xff08;計數排序&#xff09;計數排序是一個廣泛使用的排序方法。下面的程序使用雙關鍵字計數排序&#xff0c;將n對10000 以內的整數&#xff0c;從小到大排序。 例如…

Vue3 項目通過 docxtemplater 插件動態渲染 .docx 文檔(帶圖片)預覽,并導出

Vue3 項目通過 docxtemplater 插件動態渲染 .docx 文檔&#xff08;帶圖片&#xff09;預覽&#xff0c;并導出 預覽安裝插件示例代碼項目目錄結構截圖實際效果截圖 動態渲染 .docx 文檔&#xff08;帶圖片&#xff09;&#xff0c;預覽、導出安裝插件docx 模板文件內容完整代碼…

養老更安心!智紳科技“智慧”養老系統,智在何處?

在老齡化趨勢不斷加劇的當下&#xff0c;養老問題成為全社會關注的焦點。 人們對于養老服務的需求日益增長&#xff0c;不僅期望能夠得到基本的生活照料&#xff0c;更渴望在安全、舒適、便捷的環境中安享晚年。 智紳科技的“智慧”養老系統應運而生&#xff0c;憑借其獨特的…

MySQL 當中的鎖

MySQL 當中的鎖 文章目錄 MySQL 當中的鎖MySQL 中有哪些主要類型的鎖&#xff1f;請簡要說明MySQL 的全局鎖有什么用&#xff1f;MySQL 的表級鎖有哪些&#xff1f;作用是什么&#xff1f;元數據鎖&#xff08;MetaData Lock&#xff0c;MDL&#xff09;意向鎖&#xff08;Inte…

vue前端代碼作業——待辦事項

美化樣式示意圖&#xff1a; 后端IDEA代碼示意圖&#xff1a; 代碼解釋&#xff1a; 1. isAllChecked 計算屬性的作用 isAllChecked 用于實現 “全選 / 全不選” 功能&#xff0c;它是一個 雙向綁定 的計算屬性&#xff08;因為 v-model 需要同時支持讀取和設置值&#xff09…

Oracle數據庫數據編程SQL<3.1 PL/SQL 匿名塊 及 流程控制中的條件判斷、循環、異常處理和隨機函數應用>

PL/SQL部分 在SQL的基礎上增加了一些過程化的控制語句。 過程化控制語句包括&#xff1a;類型定義、判斷、循環、游標、異常處理&#xff08;例外處理&#xff09; 目錄 PL/SQL匿名塊 一、匿名塊基本結構 1、匿名塊由三個部分組成&#xff1a; 2、注意事項&#xff1a; …

DeepSeek詳解:探索下一代語言模型

文章目錄 前言一、什么是DeepSeek二、DeepSeek核心技術2.1 Transformer架構2.1.1 自注意力機制 (Self-Attention Mechanism)(a) 核心思想(b) 計算過程(c) 代碼實現 2.1.2 多頭注意力 (Multi-Head Attention)(a) 核心思想(b) 工作原理(c) 數學描述(d) 代碼實現 2.1.3 位置編碼 (…

Git Reset 命令詳解與實用示例

文章目錄 Git Reset 命令詳解與實用示例git reset 主要選項git reset 示例1. 撤銷最近一次提交&#xff08;但保留更改&#xff09;2. 撤銷最近一次提交&#xff0c;并清除暫存區3. 徹底撤銷提交&#xff0c;并丟棄所有更改4. 回退到特定的提交5. 取消暫存的文件 git reset 與 …

前端知識點---事件監聽器里面的e.target跟this的區別,e.target在事件委托中的好處

文章目錄 ? 相同點? 不同點? 總結區別e.target與事件委托之間的關系 在事件監聽器中&#xff0c;e.target 和 this 有時是一樣的&#xff0c;但它們并不完全相同。 ? 相同點 當事件直接綁定到元素時&#xff1a; e.target 和 this 通常指向相同的元素&#xff0c;即事件綁…