BAB 1: Berhitung dengan Piksel: Aljabar Raster
#Studi kasus: "Seberapa tinggi pohonnya?"
Kepala Seksi membawa dua berkas hasil terbang drone: model permukaan (DSM) dan model tanah (DTM). Ia bertanya, "Berapa luas tajuk yang tingginya di atas lima meter?" Anda juga diminta menandai bagian citra yang hijau dan sehat. Dua pertanyaan itu terjawab dengan satu keterampilan: menghitung antar-raster.
#Konsep: aljabar raster dalam tiga kalimat
Aljabar raster adalah berhitung pada raster: rumus dijalankan di setiap piksel, pada letak yang sama, lalu hasilnya menjadi raster baru. Bayangkan dua lembar kertas berpetak yang ditumpuk. Anda mengurangkan angka di petak yang berimpit, dan jawabannya ditulis di lembar ketiga. Alat untuk melakukannya disebut Raster Calculator.
Istilah baru bab ini:
- Aljabar raster: rumus yang dijalankan per piksel.
- Ekspresi: rumus yang Anda tulis, misalnya
"A@1" - "B@1". - NoData: piksel tanpa nilai. Hasil hitungannya juga NoData.
- CHM (Canopy Height Model): tinggi tajuk = DSM dikurangi DTM.
- Perbandingan logika: ekspresi seperti
"x@1" > 5yang menghasilkan 1 (benar) atau 0 (salah).

Tiga aturan penting. Pertama, nama layer di ekspresi ditulis "nama_layer@nomor_band". Kedua, bila salah satu piksel masukan NoData, hasilnya NoData. Hal ini diuji pada penulisan buku ini. Ketiga, raster yang dihitung bersama sebaiknya satu sistem koordinat dan satu luas. Kalau ukuran pikselnya beda, hasil mengikuti ukuran yang Anda pilih.

#Bagian A: QGIS
#Bagian A: Raster Calculator di QGIS
#A1. NDVI dari Citra_Komposit
NDVI mengukur kehijauan. Rumusnya (NIR − R) ÷ (NIR + R). Di Citra_Komposit.tif, band 1 = merah (R) dan band 4 = inframerah dekat (NIR).
- Tambahkan
Citra_Komposit.tifdaripaket-data(Layer ► Add Layer ► Add Raster Layer). - Buka Raster ► Raster Calculator. Pada kotak ekspresi, ketik rumus berikut.
("Citra_Komposit@4" - "Citra_Komposit@1") / ("Citra_Komposit@4" + "Citra_Komposit@1")- Pada Output layer, pilih lokasi dan nama
ndvi.tif. Pada Output format, pilih GeoTIFF. - Pada Selected Layer Extent, pilih layer
Citra_Komposit@1agar luas dan ukuran piksel mengikuti citra. Klik OK. - Layer
ndvimuncul. Klik kanan ► Properties ► Information untuk melihat statistiknya.
Hasilnya, pada skrip uji: nilai NDVI terendah −0,26, tertinggi 0,90, rata-rata 0,34. Citra ini berisi tiga lajur tutupan. Rata-rata NDVI per lajur adalah 0,50; 0,56; dan −0,05. Lajur ketiga hampir tanpa vegetasi.
#A2. Perbandingan logika: mana yang hijau?
- Buka lagi Raster Calculator. Pilih layer
ndvi@1, lalu ketik:
"ndvi@1" > 0.3- Simpan sebagai
vegetasi.tif. Piksel dengan NDVI di atas 0,3 bernilai 1, sisanya 0.
Rata-rata raster 0/1 sama dengan bagian piksel bernilai 1. Hasil uji: rata-rata vegetasi.tif = 0,6666, artinya sekitar dua pertiga citra bervegetasi (dua dari tiga lajur). Ambang 0,3 hanyalah contoh. Tentukan ambang dari data dan tujuan Anda.
#A3. Tinggi tajuk: DSM dikurangi DTM
- Tambahkan
DSM_Drone.tifdanDTM_Drone.tifdaripaket-data. - Buka Raster Calculator. Ekspresi:
"DSM_Drone@1" - "DTM_Drone@1"- Simpan sebagai
chm.tif. Pilih extent dan ukuran piksel mengikutiDSM_Drone@1(0,5 m). - Buat satu lagi untuk tajuk tinggi, memakai layer
chm@1:
"chm@1" >= 5Hasil uji: CHM berkisar 0 sampai 13,96 m, rata-rata 2,60 m. Bagian piksel bertajuk 5 m atau lebih adalah 18,87%. Satu piksel 0,5 m x 0,5 m = 0,25 m², dan seluruh area 640.000 piksel (16 ha). Jadi luas tajuk tinggi = 3,02 ha.
Jawaban untuk Kepala Seksi: sekitar 3 hektare dari 16 hektare area contoh bertajuk 5 meter atau lebih.
#A4. Ekspresi bersyarat dan skrip
Fungsi if(kondisi, nilai_bila_benar, nilai_bila_salah) tersedia di Raster Calculator. Contoh: beri nilai 2 pada piksel tajuk tinggi dan 1 pada sisanya.
if("chm@1" >= 5, 2, 1)Semua langkah A1 sampai A3 sudah ditulis dalam skrip i2_01_aljabar_raster.py. Skrip memakai alat Processing native:rastercalc. Dengan skrip, Anda cukup mengganti jalur untuk mengulang analisis di data lain.
processing.run("native:rastercalc", {
"EXPRESSION": '"DSM_Drone@1" - "DTM_Drone@1"', "LAYERS": [dsm, dtm],
"CELL_SIZE": dsm.rasterUnitsPerPixelX(), "EXTENT": dsm.extent(), "CRS": dsm.crs(),
"OUTPUT": "C:/temp/hasil_i2/chm.tif"})#Bagian B: ArcGIS Pro
#Bagian B: ArcGIS Pro
Alat padanannya adalah Raster Calculator (Spatial Analyst), di panel Geoprocessing. Alat ini memakai Map Algebra. [CEK]
- Tambahkan
Citra_Komposit.tifke peta. Band muncul sebagai layer terpisah di panel Contents. [CEK] - Cari Raster Calculator di panel Geoprocessing. Klik dua kali. [CEK]
- Tulis ekspresi NDVI dengan fungsi
Float()agar pembagian tidak dibulatkan menjadi bilangan bulat. Nama band mengikuti yang tampil di daftar. [CEK] - Atur raster keluaran, lalu jalankan.
- Untuk CHM, kurangkan DSM dengan DTM dengan cara yang sama. Ekspresi logika seperti
chm >= 5menghasilkan 1 dan 0. [CEK]
Pro tidak memakai tanda @ untuk nomor band. Cara menulis band bergantung nama layer di Contents. [CEK]
#Bagian C: ArcMap 10.8
#Bagian C: ArcMap 10.8
Padanannya adalah Raster Calculator di Spatial Analyst Tools ► Map Algebra. Alat ini perlu ekstensi Spatial Analyst. [CEK]
- Aktifkan ekstensi lewat Customize ► Extensions ► Spatial Analyst. [CEK]
- Buka ArcToolbox ► Spatial Analyst Tools ► Map Algebra ► Raster Calculator. [CEK]
- Klik dua kali nama band di daftar layer agar tertulis di ekspresi. Bungkus pembagian dengan
Float(). [CEK] - Tentukan raster keluaran, lalu klik OK.
- Perbandingan seperti
"chm" >= 5menghasilkan 1 dan 0. [CEK]
#Cek paham
- Apa yang terjadi bila satu piksel masukan bernilai NoData?
- Mengapa rata-rata raster hasil
"x@1" > 0.3bisa dibaca sebagai bagian luas? - Bagaimana CHM dihitung?
Jawaban:
- Piksel hasil di letak itu juga NoData.
- Raster itu hanya berisi 0 dan 1. Rata-rata sama dengan jumlah piksel bernilai 1 dibagi jumlah piksel, jadi menunjukkan bagian yang memenuhi syarat.
- CHM = DSM − DTM, piksel demi piksel.
#Kesalahan umum
- Menulis nama layer tanpa `@nomor_band`. Ekspresi gagal. Pilih nama dari daftar layer di dialog, jangan diketik dari ingatan.
- Membagi bilangan bulat di perangkat yang membulatkan. Di Esri, bungkus dengan
Float(). Di QGIS Raster Calculator, hasil pembagian pada data ini sudah berupa desimal (terlihat pada NDVI di atas). - Menghitung dua raster yang beda sistem koordinat atau beda luas. Samakan dahulu, lalu hitung.
- Lupa mengatur luas dan ukuran piksel keluaran. Hasil bisa terpotong. Pilih layer acuan di Selected Layer Extent.
#Ringkasan dan latihan
Ringkasan: aljabar raster menjalankan rumus per piksel. NDVI, CHM, dan ambang 0/1 adalah tiga contoh. NoData menular ke hasil.
Latihan:
- Buat raster untuk piksel dengan CHM antara 2 dan 5 m. Petunjuk: gabungkan dua perbandingan dengan
AND. - Hitung bagian area bernilai NDVI di atas 0,5 pada
Citra_Komposit. Bandingkan dengan hasil ambang 0,3 dan jelaskan bedanya.
#Tabel perbandingan: aljabar raster
| Hal | QGIS | ArcGIS Pro | ArcMap 10.8 |
|---|---|---|---|
| Alat | Raster Calculator (Raster ► Raster Calculator, atau Processing) | Raster Calculator (Spatial Analyst) [CEK] | Raster Calculator (Map Algebra) [CEK] |
| Menulis band | "layer@2" | nama band dari daftar [CEK] | klik dua kali nama band [CEK] |
| Syarat | tanpa ekstensi | ekstensi Spatial Analyst [CEK] | ekstensi Spatial Analyst [CEK] |
| Bersyarat | if(k, a, b) | Con [CEK] | Con [CEK] |