資料載入中
跳到主要內容區塊

logo

內文查詢 網站導覽

文字大小

縮小 放大 English 中文
:::

電子報

新興科技應用
農村發展及水土保持署
無需學會JavaScript,ChatGPT讓你也能輕鬆下載GEE衛星影像!
期數 / 第71期
發布日期 / 2023.04.13
主筆 / 莊承穎
責任編輯 / 陳振宇、高百毅、詹婉妤

ChatGPT是由OpenAI開發的大型自然語言處理模型,可以透過自然、口語的方式與機器互動,獲得更逼真且貼近人類的對話結果。自ChatGPT問世以來,各行各業都紛紛想方設法應用它的智能,以便於發展出對於各個領域能有所幫助的應用。ChatGPT在文章寫作、資料庫整理、語言翻譯、甚至土木工程等領域都有著重要的應用,並且在未來可能因此改變人們熟悉的工作模式。由於ChatGPT在機器學習上的卓越表現,使得它成為當今最為先進的自然語言處理技術之一,擁有更廣泛的應用前景。
在衛星影像遙測的應用領域,如何取得所需關注的目標或時間區段的衛星影像,往往是一大門檻,且皆需要具備基本的程式編寫能力或相關背景知識,才能對衛星影像進行初步應用。除第65期電子報所介紹的DataCube外,最廣泛應用於衛星影像分析或處理的平台,當屬由Google提供的Google Earth Engine (GEE) 平台。然而,對於初學者而言,GEE平台使用的JavaScript語言可能尚有些複雜。

因此,本期電子報將介紹如何使用ChatGPT來簡化GEE衛星影像下載的流程,並以下載Landsat-8衛星的可見光影像作為案例示範 (圖1)。

圖1、ChatGPT與GEE聯合應用示意圖 (RTDT)
圖1、ChatGPT與GEE聯合應用示意圖 (RTDT)
衛星產品及光譜波段百百款

在進行衛星影像下載之前,建議使用者先透過GEE平台上方的搜尋列輸入欲查找的衛星 (如Landsat、Sentinel或MODIS等),平台會列出該衛星在GEE平台上,已提供使用的所有產品供使用者選擇或查找。以此先了解該衛星影像的產品種類及其所包含的多光譜波段,確保所下載的衛星影像符合研究或應用的需求,以提高研究或應用的效率和準確性 (圖2)。

圖2、GEE平台搜尋Landsat示意圖 (GEE)
圖2、GEE平台搜尋Landsat示意圖 (GEE)

本期電子報將以Landsat-8 眾多衛星產品中的TOA (Top-Of-Atmosphere) 影像為案例。使用者可以透過GEE搜尋列中輸入"Landsat/LC08/C01/T1_TOA"來查詢該產品的資料來源、屬性和引用說明。並在"BANDS"頁籤中,瀏覽並了解該產品影像中11個不同的光譜波段 (B1~B11) 的應用條件及基本資訊 (圖3)。
這些處理衛星影像資料時,所需的相關知識及步驟,是在下載和後續的分析以及加值使用中必不可或缺的背景知識。

圖3、GEE平台衛星資訊屬性示意圖 (RTDT)
圖3、GEE平台衛星資訊屬性示意圖 (RTDT)
應用ChatGPT下載Landsat-8衛星影像案例

初試ChatGPT程式碼撰寫模式

本期電子報欲透過ChatGPT提供將GEE平台上的Landsat-8衛星影像下載到本地端的方法與程式碼,以便於後續在QGIS或ArcGIS中分析使用。
因此,只需要輸入相關指令於ChatGPT的對話框中,ChatGPT將會從註冊和開啟GEE平台開始,到搜索衛星影像的方法,依順序分項列出GEE的操作步驟。讓曾有GEE操作經驗的使用者,可以透過這份說明完成衛星影像的下載 (圖4)。

圖4、ChatGPT提供之GEE平台下載影像步驟 (ChatGPT)
圖4、ChatGPT提供之GEE平台下載影像步驟 (ChatGPT)

然而,並非所有使用者都熟悉GEE或JavaScript,故使用者可透過輸入ChatGPT指令,來編寫GEE能執行的JavaScript程式碼。以圖5為例,透過ChatGPT編寫之程式碼可下載2021年第一張位於N22.0, E113.5至N23.0, E114.5矩形範圍內的“Landsat/LC08/C01/T1_SR”影像,並將其儲存到使用者的Google Drive中。
然而,這段程式碼尚不完整,若僅將其複製到GEE平台上運行,可能無法順利產生所需下載的影像。

圖5、利用ChatGPT編寫GEE code示意圖 (ChatGPT)
圖5、利用ChatGPT編寫GEE code示意圖 (ChatGPT)


透過與ChatGPT對話,修改程式碼

對衛星而言,每個光波段對同一個區域所拍攝的成果皆是各自的一幅影像 (數值矩陣),以本案例欲下載可見光之衛星影像為例,每一幅可見光影像則是分別由紅 (Red)綠 (Green) 藍 (Blue) 光波段三幅影像疊合所組成。
在本案例中,透過與ChatGPT對話來對原始程式碼進行修改,如向ChatGPT補充「下載可見光影像」指令後,程式碼中的dataset部分即會增加對光譜的篩選 (select),並分別篩選光的波段,對應於衛星資料中的B4、B3和B2 (圖6第一段),也可依欲分析之情形自行修改,以下載其他波段的影像供後續的分析應用。
此外,也可加入如「將範圍控制於台北市」等敘述,來讓ChatGPT修改原始程式碼內的region坐標,控制影像成果的產出範圍。或是透過 ChatGPT 來達到調整影像的輸出解析度、坐標系統或儲存位置等其他設定 (圖6)。

圖6、ChatGPT修改GEE code後示意圖 (ChatGPT)
圖6、ChatGPT修改GEE code後示意圖 (ChatGPT)


執行完成後即可下載成果影像

本期電子報所提供的範例程式碼可以下載2021年位於台北市範圍內的第一張Landsat-8可見光影像,並以EPSG:4326座標系統及30 m解析度儲存於使用者的Google Drive中。在GEE平台執行完成後,使用者可以在介面右側的Tasks頁籤中找到執行成果,並透過點擊藍色按鈕 (Run) 進行下載,隨即可在雲端硬碟中設定的儲存路徑找到該影像,如圖7所示。

圖7、GEE平台執行完成後示意圖 (RTDT)
圖7、GEE平台執行完成後示意圖 (RTDT)
成果影像加值應用

下載完成後的影像 (.tif) 如圖8所示,可使用地理資訊軟體QGIS或ArcGIS打開檔案,透過左側的Table of Contents欄位及影像屬性視窗 (Properties),皆顯示此可見光影像是由紅色 (B4)綠色 (B3)藍色 (B2) 三幅影像所組成。並可透過此影像,觀察到該影像之雲覆區域、台北市都市圈範圍、淡水河輪廓及道路規劃等相關資訊。

透過與ChatGPT對話的方法,指引AI撰寫程式碼,不僅可以下載可見光三個波段的影像,還能透過程式碼的調整,下載其他波段的影像。舉例來說,在圖9中,利用經改寫的程式碼下載與圖8相同時間的近紅外光 (Near infrared)(B5)、短波紅外光 (Shortwave infrared)(B6及B7) 影像。接著,再透過ArcGIS對其不同波段上色,以繪製出假色影像。不僅能讓使用者直觀辨識差異,還能提供後續的指標應用,如NDVI和NDWI等。

如想瞭解其他GEE應用,請至電子報專區搜尋關鍵字「GEE」,有更多GEE應用說明與範例供參。

圖8、台北市Landsat-8可見光影像 (RTDT)
圖8、台北市Landsat-8可見光影像 (RTDT)
圖9、台北市Landsat-8紅外光假色影像 (RTDT)
圖9、台北市Landsat-8紅外光假色影像 (RTDT)
相關網站及應用成果連結
ChatGPT and Google Earth Engine: A Match Made in Heaven for Satellite Image Processing
Back To Top