NDVI諧波擬合(基于GEE實現)

在遙感影像中,我們常用 NDVI(歸一化植被指數)來衡量地表植被的綠度。它簡單直觀,是生態監測、農情分析的基礎工具。但你是否注意到:

NDVI 雖然“綠”,卻常常“亂”。

因為云層、觀測頻率、天氣干擾,NDVI 的時間序列往往是鋸齒狀斷裂的,很難反映植物真實的生長節奏。

那么,能不能讓 NDVI 曲線變得平滑、優雅?更重要的是,讓我們看出植物一年中什么時候最綠、什么時候開始變黃?

答案就是:諧波擬合(Harmonic Regression)

我們用一套簡單的數學模型——正弦函數 + 余弦函數的組合,就可以模擬 NDVI 的自然波動,就像聽診器一樣,聽出綠地的“心跳”與“節奏”。

這套方法不僅可以:

  • 去除 NDVI 的噪聲、缺值干擾

  • 提取“年最大 NDVI 值”與“峰值出現時間”

  • 還可以看出城市、公園、農田中綠意的季節差異

一串函數,就能復刻大地的春夏秋冬。

我們在 GEE(Google Earth Engine)中完成了這項分析,原始 NDVI 和諧波擬合 NDVI 的對比圖已經生成。未來我們還可以進一步提取出“綠期長度”、“相位差異”等生態指標。

📌 想獲取腳本 or 全套實操教學?歡迎關注【全域智圖】公眾號。

部分代碼,完整代碼關注公眾號// 1. 設置研究區域(成都點位,可自行替換)
var region = ee.Geometry.Point([104.07, 30.67]);
Map.centerObject(region, 8);// 2. 加載 MODIS NDVI 數據(MOD13Q1)
var modis = ee.ImageCollection('MODIS/006/MOD13Q1').filterDate('2020-01-01', '2021-01-01').filterBounds(region).select('NDVI').map(function(img) {return img.multiply(0.0001).copyProperties(img, ['system:time_start']);});// 3. 添加時間變量(以天為單位)
var withTime = modis.map(function(img) {var t = ee.Date(img.get('system:time_start')).difference(ee.Date('2020-01-01'), 'day');return img.addBands(ee.Image.constant(t).rename('t').toFloat());
});print(chart);
// 9. 顯示 NDVI 原始圖像(選擇其中一個時間點)
var exampleRaw = modis.filterDate('2020-07-01', '2020-07-15').median();
Map.addLayer(exampleRaw, {min: 0.1, max: 0.8, palette: ['white', 'green']}, '原始 NDVI');// 10. 顯示擬合 NDVI(同一時期)
var exampleFitted = fittedSeries.filterDate('2020-07-01', '2020-07-15').median();
Map.addLayer(exampleFitted, {min: 0.1, max: 0.8, palette: ['white', 'blue']}, '擬合 NDVI');

擬合NDVI

真實NDVI

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

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

相關文章

基于Python+YOLO模型的手勢識別系統

本項目是一個基于Python、YOLO模型、PyQt5的實時手勢識別系統,通過攝像頭或導入圖片、視頻,能夠實時識別并分類不同的手勢動作。系統采用訓練好的深度學習模型進行手勢檢測和識別,可應用于人機交互、智能控制等多種場景。 1、系統主要功能包…

黑馬點評--短信登錄實現

短信登錄 導入黑馬點評項目 導入資料中提供的SQL文件 其中的核心表有: tb_user :用戶表 tb_user_info :用戶詳情表 tb_shop:用戶信息表 tb_shop_type:商戶類型表 tb_blog:用戶日記表(達人…

AWS EC2實例安全遠程訪問最佳實踐

EC2 遠程連接方案對比 遠程訪問 Amazon EC2 實例主要有以下四種方式: Secure Shell (SSH) 遠程訪問AWS Systems Manager 會話管理器適用于 Linux 實例的 EC2 Serial ConsoleAmazon EC2 Instance Connect SSH 遠程訪問 SSH(Secure Shell)廣…

Idea如果有參數,怎么debug

如上圖,輸入輸出路徑是需要運行的時候給參數。 那么 FileInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); 給上面的代碼給參數的步驟為 1.在類名或者方法名上右鍵,選擇More Run/Debug…

Oracle Apps R12——報表入門2:單表——報表開發流程

☆開發思路 開發表報代碼流程中有幾個重要的組件和重要的知識點需要搞懂,才能得心應手。報表通常是通過表格的形式來存在的,我們一般在開發代碼的時候在【輸出】中打印HTML,Css格式的表格,并把查詢到的數據插入其中,即可完成一個報…

Servlet的繼承關系和生命周期

1.繼承關系: javax.servlet.Servlet接口->javax.servlet.GenericServlet抽象類 ->javax.servlet.http.HttpServlet抽象子類 2.相關方法: javax.servlet.Servlet: (1)void init(config) -初始化方法 &…

PEFT庫PromptTuningConfig 配置

PEFT庫 PromptTuningConfig 配置 "Prompt Tuning"的參數高效微調 PromptTuningConfig 核心參數解析 1. task_type="CAUSAL_LM" 作用:指定任務類型為因果語言模型(Causal LM)。說明:因果語言模型從左到右生成文本(如GPT系列),這與任務需求匹配(模…

【438. 找到字符串中所有字母異位詞】

Leetcode算法練習 筆記記錄 438. 找到字符串中所有字母異位詞 438. 找到字符串中所有字母異位詞 思路就是我們要找和p相同的詞,可以先排個序,每次取一個和p的size長度相同的窗口去滑動,符合就記錄,不符合繼續滑動。 public List&l…

React Hooks底層執行邏輯詳解、自定義Hooks、FiberScheduler

React Hooks底層執行邏輯詳解 React Hooks 在表面上看像普通的函數調用,背后卻隱藏著一套復雜而高效的運行時機制。要理解 React Hooks 的底層執行邏輯,需要從 React 如何管理組件的狀態與副作用入手。 🧠 一、React 為什么引入 Hooks&#…

Windows命令實用工具——tcping 命令工具安裝及基礎使用

Windows命令實用工具——tcping 命令工具安裝及使用 一、tcping 命令簡介二、tcping 的安裝1、tcping 官網下載安裝包2、將軟件包復制到 Windws 系統的 System32 目錄下面3、查看 tcping 命令是否安裝成功 三、tcping 工具簡單使用方法 一、tcping 命令簡介 tcping 的主要功能…

智慧化工園區安全風險管控平臺建設方案(Word)

1 項目概況 1.1 園區概況 1.1.1 XX化工園區簡況 1.1.2 企業現狀 1.1.3 園區發展方向 1.1.4 園區信息化現狀 1.2 項目建設背景 1.2.1 政策背景 1.3 項目建設需求分析 1.3.1 政策需求分析 1.3.2 安全生產監管需求分析 1.3.3 應急協同管理需求分析 1.3.4 工業互聯網安…

【動手學深度學習】2.3. 線性代數

目錄 2.3. 線性代數1)標量2)向量3)矩陣4)張量5)張量的基本性質6)降維7)點積8)矩陣-向量積9)矩陣-矩陣乘法10)范數11) 小結 2.3. 線性代數 本節將…

如何在項目當中使用redis進行范圍搜索

目錄 如何將地理位置數據保存到 Redis 中以支持范圍查詢 Redis 中的 GEO 類型是什么? 如何保存 GEO 數據到 Redis 分段解釋: RedisKey.POSTS_ANIMALS_LOCATIONS new Point(longitude, latitude) 如何進行范圍搜索 Redis GEO 范圍搜索核心語句 1…

物聯網低功耗保活協同優化方案:軟硬件與WiFi網關動態聯動

目錄 一、總體方案概述 二、架構組成 2.1 系統拓撲 2.2 硬件端(MCU + WiFi 模組) 2.3 WiFi 網關 2.4 云端服務器 三、低功耗保活技術設計模式 3.1 模式一:定時喚醒 + MQTT 保活 3.1.1 設備端 3.1.2 優勢 3.2 模式二:網關保活代理 + 本地網絡喚醒 3.2.1 網關功能…

UniApp+Vue3微信小程序二維碼生成、轉圖片、截圖保存整頁

二維碼生成工具使用uqrcode/js,版本4.0.7 官網地址:uQRCode 中文文檔(不建議看可能會被誤導) 本項目采用了npm引入方式,也可通過插件市場引入,使用上會略有不同 準備工作: 安裝:pnpm…

Zenmap代理情況下無法掃描ip

原因是開了代理會報錯 error “only ethernet devices can be used for raw scans on Windows” 在掃描參數后加 -sT -Pn,但會導致結果太多 例如:nmap -sT -T4 -A -v -Pn 10.44.2.0/24 如果你只是想找沒人用的IP,你不需要搞復雜的原始層掃描&…

將多個值關聯到同一個 key的map(key可以重復的map)示例

在 Java 中&#xff0c;標準的 Map 接口要求 key 必須唯一&#xff0c;如果需要 key 可重復 且保持 插入順序 的數據結構&#xff0c;可以使用以下方案&#xff1a; 1. 使用 List<Map.Entry<K, V>> 最直接的方式是用鏈表存儲鍵值對&#xff0c;允許重復 key&…

Arthas(阿爾薩斯)

一、Arthas 是什么&#xff1f; Arthas&#xff08;阿爾薩斯&#xff09;是阿里巴巴開源的一款 Java 在線診斷工具&#xff0c;基于 Java Agent 和字節碼增強技術實現。它無需重啟 JVM&#xff0c;即可動態追蹤代碼執行、實時查看 JVM 狀態、修改代碼邏輯&#xff0c;是生產環…

深入解讀Qwen3技術報告(三):深入剖析Qwen3模型架構

重磅推薦專欄&#xff1a; 《大模型AIGC》 《課程大綱》 《知識星球》 本專欄致力于探索和討論當今最前沿的技術趨勢和應用領域&#xff0c;包括但不限于ChatGPT和Stable Diffusion等。我們將深入研究大型模型的開發和應用&#xff0c;以及與之相關的人工智能生成內容&#xff…

UE4游戲查找本地角色數據的方法-SDK

UE4中&#xff0c;玩家的表示通常涉及以下幾個類&#xff1a; APlayerController: 代表玩家的控制邏輯&#xff0c;處理輸入等。 APawn: 代表玩家在世界中的實體&#xff08;比如一個角色、一輛車&#xff09;。APlayerController 控制一個 APawn。 ACharacter: APawn 的一個…