Senin, 18 Januari 2021

Clip Raster Menggunakan Raster Calculator (QGIS 3.10.6)

 Bismillah...

Okay, kali ini saya akan mencoba membagikan tips sederhana bagaimana cara melakukan clipping raster menggunakan fitur raster calculator. Cara ini merupakan cara yang umum bahkan diberikan juga oleh tim pengembang qgis, klik disini. Meskipun begitu ternyata masih ada saja orang-orang yang kebingungan (seperti saya di beberapa minggu yang lalu), berikut bagaimana cara melakukan clipping raster tanpa mempunyai data vector.

Catatan: cara ini akan melakukan clipping berdasarkan nilai pada data raster itu sendiri, sehingga ini akan sangat berguna apabila kita ingin (contoh) memisahkan antara data topografi dan batimetri dari data DEM yang kita miliki. Namun tidak cocok apabila kita ingin melakukan clipping berdasarkan batas administrasi, dan lain sebagainya.

Asumsi saya disini teman-teman sudah tahu cara bagaimana mendownload data DEM dan menginputnya ke dalam lembar kerja QGIS. Untuk kesempatan ini saya menggunakan DEMNAS yang di download dari http://tides.big.go.id/DEMNAS/.


Masuk ke raster calculator, Raster - Raster Calculator



Membuat raster mask menggunakan perthitungan matematis sederhana. Dapat kita lihat DEM yang diinput memiliki nama TamanNasional_Komodo@1.
  • Asumsikan TamanNasional_Komodo@1 = a.
  • Masukkan persamaan log(a), klik log10 kemudian klik 2x pada nama layer yang DEM yang digunakan.
  • Berikan nama output layer yang diinginkan (contoh: TopoMask).


pada tahap log(a) akan menghasilkan nilai pangkatnya dalam bentuk raster, untuk batimetri yang menggambarkan kedalaman perairan mempunyai nilai elevasi negatif (di bawah permukaan laut) sehingga akan menghasilkan solusi berupa bilangan kompleks dan format ini tidak didukung sehingga akan menghasilkan no data untuk elevasi < 0 m.


Tahap selanjutnya kita akan coba mengekstrak data topografinya saja menggunkan raster mask yang telah dibuat tadi. Okey, sebut saja layer TopoMask sebagai b
  • Masuk kembali ke raster calculator.
  • Masukkan persamaan b/b*a.
  • Berikan nama output layer yang diinginkan (contoh: TopografiKomodo).

Dengan menggunakan persamaan tersebut akan terdapat dua respon
  1. untuk b yang mempunyai nilai, maka b/b akan menghasilkan nilai 1, kemudian 1*DEM = DEM (dimana a merupakan nilai elevasi dari data DEM).
  2. untuk b = nodatab/b akan menghasilkan nilai nodata maka nodata*DEM = nodata.


Apabila teman-teman ingin memperoleh data batimetrinya saja, maka dapat dilakukan dengan cara membalik nilai nya terlebih dahulu (topografi dibuat negatif) log(-a) selebihnya sama dengan cara di atas. Dengan demikian akan dihasilkan data raster batimetri dalam dengan nilai positif.

Catatan:
-Data topografi yang dihasilkan dengan cara ini akan bernilai > 0, hal ini dikarenakan pada tahap log(a) untuk a = 0, tidak terdefinisi sehingga hasilnya nodata.
-Apabila ingin melakukan clipping dengan nilai raster yang spesifik dapat digunakan cara lain seperti pada tautan berikut.
-Selalu cek tipe data raster teman-teman, apakah dalam bentuk 16-bit integer atau 32-bit float, dan sebagainya.

0 komentar:

Posting Komentar