Lewati ke isi
Profil penulisSeri Buku GIS Kehutanan dan Pertanian/ M3
Tampilkan bagian untuk:

BAB 3: Membaca Irama Alam: Musim, Tren, dan Anomali

#Studi kasus: "Mana yang memang begitu, mana yang berubah?"

Kepala Seksi menunjuk grafik sawah di Beta yang naik turun. "Ini rusak?" Anda menggeleng. Sawah memang naik turun: tanam, tumbuh, panen. Sebaliknya, hutan seharusnya hampir datar. Bila hutan ikut naik turun, itu patut dicurigai. Untuk membedakan "irama biasa" dari "perubahan sungguhan", Anda perlu mengenal irama tiap tutupan lahan.

#Konsep: irama dalam tiga kalimat

Tiap tutupan lahan punya sidik jari musiman, seperti detak jantung orang berbeda-beda: hutan berdetak tenang, sawah berdetak cepat dan tinggi. Tren adalah arah umum jangka panjang, naik atau turun, setelah irama musiman diabaikan. Anomali adalah selisih pada satu tanggal dari kondisi "biasanya", dan itulah tanda awal bahwa sesuatu tidak beres.

Istilah baru bab ini:

  • Fenologi: pola musiman kehidupan tumbuhan (tumbuh, puncak, layu).
  • Amplitudo: selisih nilai tertinggi dan terendah dalam deret.
  • Tren: kemiringan garis lurus terhadap waktu.
  • Anomali: selisih nilai satu tanggal dari nilai "biasa" piksel itu.
  • Metrik deret waktu: angka ringkas dari satu deret (rata-rata, amplitudo, tren, dan sebagainya).
Ilustrasi 3.1: Sidik jari musiman
Skema: NDVI rata-rata hutan alam, hutan tanaman, dan pertanian sepanjang 24 tanggal

#Peringatan tentang "biasa"

Data latihan hanya dua tahun. Untuk menyebut sesuatu "biasa", pemantauan sungguhan memerlukan banyak tahun, agar variasi antar-tahun (misalnya tahun kering) ikut terhitung. Di bab ini, "biasa" didefinisikan sederhana: rata-rata piksel itu sendiri sepanjang deret. Cukup untuk belajar, belum cukup untuk laporan resmi.

#Bagian A: QGIS

#Bagian A: Menghitung metrik deret waktu di QGIS

A.1 Metrik dengan alat bawaan

Alat Cell statistics bisa menghitung dari banyak layer: rata-rata, minimum, maksimum, simpangan baku, dan rentang (range). Ini cukup untuk amplitudo (statistik Range) dan ketidakstabilan (Standard deviation). Pada tumpukan satu berkas, pisahkan band ke layer terpisah lebih dulu, atau pakai berkas per tanggal dari Bab 2.

A.2 Tren dengan GRASS r.series

Untuk tren, alat r.series (Processing Toolbox ► GRASS ► Raster) punya metode slope: kemiringan garis lurus per piksel.

PYTHON
# Tren per piksel dengan GRASS (perlu penyedia GRASS aktif di QGIS)
processing.run("grass:r.series", {"input": berkas_ndvi_bersih, "-n": False, "method": 13, "output": out})

method 13 adalah slope. Lampirkan semua berkas NDVI menurut urutan tanggal. Hasil uji (lewat qgis_process di QGIS 4.0.2): cocok dengan hitungan NumPy pada pengamatan bersih, selisih terbesar sekitar 5 kali sepuluh pangkat minus sembilan. [terbukti]

A.3 Seluruh metrik sekaligus (Skrip 3.1)

PYTHON
# SKRIP 3.1 (cuplikan; berkas lengkap: skrip/3_1_metrik_deret.py)
x, gt, prj = U.baca_tif(os.path.join(U.HASIL, "NDVI_isi.tif"))   # 24 band tanpa lubang
rata, mini, maks = x.mean(0), x.min(0), x.max(0)
amplitudo = maks - mini
hc = hari - hari.mean()                                           # waktu dalam hari
kemiringan = (hc[:, None, None] * (x - rata)).sum(0) / (hc ** 2).sum()
tren_tahun = kemiringan * 365.0                                   # perubahan NDVI per tahun
puncak = hari[x.argmax(0)]                                        # hari saat NDVI tertinggi
anomali = x - rata[None]                                          # tiap tanggal dikurangi rata-rata piksel

Skrip ini menghasilkan metrik_ndvi.tif (7 band) dan anomali_ndvi.tif (24 band). Rata-rata per kelas acuan:

KelasNDVI rata-rataAmplitudoTren per tahun
Hutan alam0,860,10-0,004
Hutan tanaman0,770,10-0,006
Pertanian0,500,46-0,027
Terbuka0,110,06-0,001
Deforestasi0,640,59-0,281
Terbakar0,820,23-0,022
Panen hutan tanaman0,610,51-0,200

[terbukti: dihitung dari data sintetis]

Cara membacanya: hutan alam dan hutan tanaman punya amplitudo kecil dan tren nyaris nol, itulah "tenang". Pertanian beramplitudo besar tetapi trennya kecil: bergelombang, namun tidak ke mana-mana. Deforestasi dan panen hutan tanaman menonjol dengan tren sangat negatif.

Ilustrasi 3.2: Metrik pada peta
Tiga peta: NDVI rata-rata, amplitudo, dan tren NDVI per tahun

Perhatikan sisi lain: deforestasi dan panen hutan tanaman sama-sama bertren negatif besar. Metrik tren saja tidak bisa membedakan keduanya. Pembeda itu datang dari peta kawasan hutan tanaman (Bab 4).

A.4 Anomali sebagai alarm dini

Pada 16 September 2024, rata-rata anomali NDVI di bekas terbakar adalah -0,115, sedangkan di hutan stabil hanya -0,015. Anomali tanggal itu sudah menunjukkan petak mana yang aneh, bahkan sebelum Anda tahu penyebabnya. [terbukti: dihitung dari data sintetis]

Hasilnya: Anda punya sidik jari tiap piksel dan alarm anomali.

#Bagian B: ArcGIS Pro

#Bagian B: ArcGIS Pro

Pro punya alat khusus: Generate Trend Raster (kelompok Image Analyst Tools, perlu ekstensi Image Analyst).

  1. Siapkan raster multidimensi (Cloud Raster Format, multidimensional mosaic dataset, atau raster dari netCDF, GRIB, atau HDF).
  2. Jalankan Generate Trend Raster. Dimensi analisis: waktu.
  3. Pilih jenis tren (line_type): LINEAR, POLYNOMIAL, HARMONIC, MANN-KENDALL, atau SEASONAL-KENDALL. Untuk deret musiman, jenis HARMONIC dan SEASONAL-KENDALL cocok. Untuk tren sederhana seperti di buku ini, pakai LINEAR.
  4. Parameter keluaran opsional mencakup rmse, r2, dan slope_p_value. Hasilnya berupa raster multidimensi berformat CRF.

Dokumentasi Esri menyebut kelima jenis tren dan format CRF tersebut. Cocokkan dengan versi Anda. [CEK]

#Bagian C: ArcMap 10.8

#Bagian C: ArcMap 10.8

ArcMap tidak punya padanan untuk Generate Trend Raster maupun raster multidimensi.

  1. Amplitudo dan simpangan baku: Cell Statistics dengan statistik RANGE dan STD pada banyak raster.
  2. Tren: tidak ada alat siap pakai yang saya ketahui. Alternatif: hitung kemiringan dengan Raster Calculator memakai rumus kuadrat terkecil, atau pakai skrip ArcPy dengan NumPy. [CEK]

#Cek paham

  1. Mengapa pertanian beramplitudo besar bukan tanda masalah?
  2. Mengapa tren saja tidak cukup untuk menyimpulkan deforestasi?
  3. Apa kelemahan "biasa" yang dihitung dari dua tahun data?

Jawaban:

  1. Amplitudo besar adalah sidik jari musiman sawah (tanam sampai panen). Masalah baru muncul bila iramanya menyimpang dari yang biasa.
  2. Panen hutan tanaman yang terencana juga bertren sangat negatif. Perlu data pendukung seperti peta kawasan hutan tanaman.
  3. Variasi antar-tahun belum terwakili. Tahun yang kebetulan kering bisa terbaca sebagai anomali padahal normal.

#Kesalahan umum

  • Menghitung tren memakai nomor urut, bukan hari. Kemiringannya menjadi miring sendiri bila selang tanggal tidak sama.
  • Menghitung tren pada deret mentah berawan. Awan menjatuhkan nilai dan merusak kemiringan. Bersihkan atau tambal dulu.
  • Menafsirkan anomali sebagai bukti. Anomali hanya alarm. Penyebabnya harus ditelusuri.
  • Mencampur kelas bertren berbeda dalam satu rata-rata. Hitung per kelas.

#Ringkasan dan latihan

Ringkasan: hutan tenang, sawah bergelombang, dan lahan yang berubah bertren tajam. Metrik ringkas (rata-rata, amplitudo, tren) dan anomali mengubah deret panjang menjadi angka yang mudah dibandingkan.

Latihan:

  1. Jalankan Skrip 3.1. Buka metrik_ndvi.tif dan beri simbologi band 4 (amplitudo). Petak mana yang paling berirama?
  2. Ubah Skrip 3.1 agar menghitung tren pada deret mentah tanpa tambalan. Bandingkan hasilnya.
  3. Hitung band hari_puncak untuk sawah di Alpha dan di Beta. Apakah puncaknya bersamaan?

#Tabel perbandingan: pola musim dan tren

LangkahQGISArcGIS ProArcMap 10.8Status
Amplitudo, simpangan bakuCell statisticsCell StatisticsCell StatisticsDokumentasi dibaca
Tren linearGRASS r.series (slope) atau NumPyGenerate Trend Raster (LINEAR)Tidak ada padananQGIS terbukti; Pro: dokumentasi
Tren musimanNumPy (skrip sendiri)HARMONIC, SEASONAL-KENDALLTidak ada padananPro: dokumentasi
AnomaliAljabar raster atau NumPyRaster multidimensi [CEK]Raster CalculatorQGIS terbukti