Otomatisasi Workflow Kompleks menggunakan Processing Modeler

Peringatan

A new version of this tutorial is available at Automating Complex Workflows using Processing Modeler (QGIS3)

Alur kerja GIS secara tipikal melalui banyak tahap - dengan sebuah tahap menghasilkan output sekunder yang digunakan di tahap berikutnya. Jika anda mengubah data input atau ingin mengoptimalkan sebuah paramaterm anda akan perlu menjalankan seluruh proses tadi secara manual. Beruntung, QGIS memiliki graphical modeler built-in yang dapat menolong anda mendefiniskan alur kerja anda dan menjalankannya dengan sebuah seruan. Anda dapat menjalankan alur kerja ini sebagai sebuah batch atau tumpukan banyak input.

Tinjauan Tugas

Tutorial ini menunjukkan bagaimana membangun sebuah model untuk mengekstrak area untuk kelas tertentu dari sebah raster land use atau raster pemakaian lahan yang sudah terklasifikasi.

Mendapatkan data

We will use the Global Mosaics of the standard MODIS land cover type data product from Global Land Cover Facility (GLCF) as an example.

Peringatan

As of 31 December 2018, GLCF has shut down its services and the files needed for this tutorial are no longer accessible.

You may directly download an archival copy of both the datasets from the links below if you wish to work on this tutorial:

LC_hd_global_2001.tif.gz

LC_hd_global_2012.tif.gz

Sumber Data [GLCF_MODIS]

Prosedur

Alur kerja kita untuk latihan ini akan terbagi menjadi tahap-tahap berikut.

  • Aplikasikan sebuah algoritma xxx pada inputan raster landcover. Ini akan mengurangi noise pada output kita dengan mengeliminasi pixel-pixel terisolir.

  • Mengkonversi hasil raster ke sebuah layer polygon.

  • Query sebuah nilai kelas dari tabel attribut layer poligon dan membuat sebuah layer poigon dari kelas tersebut.

Tahap-tahap berikut adalah meringkas proses untuk mengkoding proses di atas menjadi sebuah model dan menjalankannya pada dataset yang sudah diunduh.

  1. Luncurkan QGIS dan akses Processing ‣ Graphical Modeler....

../_images/1200.png
  1. Dialog Processing modeler berisi sebuah panel sebelah kiri dan kanvas utama. Pilih tab Inputs pada panel kiri dan drag + Raster layer ke kanvas.

../_images/2162.png
  1. Sebuah dialog Parameter definition akan muncul . Tekan Input dengan Parameter name dan tandai Yes untuk guilabel:Required . Klik OK.

../_images/397.png
  1. Anda akan melihat sebuah kotak dengan nama Input muncul di kanvas. Ini merepresentasikan raster landcover yang kita gunakan sebagai input. Langkah selanjutnya adalah untuk mengaplikasikan sebuah algoritma Majority filter . Pindah ke tab Algorithm dari sudut kiri-bawah. Cari algoritma dan anda akan menemukannya pada provider SAGA . Drag atau bawa ke kanvas.

Catatan

If you do not see this algorithm or any of the subsequent algorithms mentioned in thi tutorial, you may be using the Simplified Interface of the Processing Toolbox. Switch to the Advanced Interface by using the dropdown at the bottom of the Processing Toolbox in the main QGIS window.

../_images/462.png
  1. Sebuah dialog konfigurasi untuk Majority Filter akan dihadirkan. Biarkan nilai atau angka pada pengaturan awal dan klik OK.

../_images/560.png
  1. Anda akan melihat bahwa sekarang ada sebuah kotak baru bernama Majority Filter di kanvas dan ini terkoneksi dengan box Input . Ini terjadi karena algoritma Majority Filter memakai raster Input sebagai inputnya. Langkah berikut pada alur kerja kita adalah dengan mengkonversi output dari majority filter ke vektor. Temukan algoritma Polygonize (raster to vector)` dan drag ke kanvas.

Catatan

Box-box tersebut dapat dipindah dan diatur dengan mengkliknya dan mendragnya sambil menahan tombol kiri mouse. Anda juga dapat menggunakan roda-scroll untuk zoom-in dan out pada kanvas model-

../_images/657.png
  1. Pilih 'Filtered Grid' dari algoritma 'Majority Filter' sebagai nilai untuk Input layer. Klik OK.

../_images/756.png
  1. Langkah final pada alur kerja adal untuk melakukan query pada nilai kelas dan membuat layer baru dari fitur yang cocok. Temukan algoritma Extract by attribute dan drag ke kanvas.

../_images/854.png
  1. Pilih 'Vectorized' dari algoritma 'Polygonize (raster to vector)' sebagai Input Layer . Kita ingin mengekstrak pixel-pixel yang merepresentaikan Croplands atau lahan pertanian. Nilai pixel yang sesuai dengan kelas ini adalah 12. (lihat Code Values). Masukkan DN pada Selection attribute dan 12 untuk value. Karena output dari operasi ini akan menjadi hasil akhir, kita perlu memeberi nama outputnya. Masukkan vectorized class sebagai Output .

../_images/953.png
  1. Masukkan Model name dengan vectorize dan Group name sebagai raster . Klik tombol Save

../_images/1061.png
  1. Beri nama model vectorize dan klik Save.

../_images/11100.png
  1. ^Sekarang saatnya untuk meguji model kita. Tutup modeler dam pindah ke jendela utama QGIS. Akses Layer ‣ Add Layer ‣ Add Raster Layer....

../_images/1262.png
  1. Jelajahi file unduhan LC_hd_global_2001.tif.gz dan klik Open . Ketika raster terbuka, akses Processing ‣ Toolbox.

../_images/1359.png
  1. Temukan model yang baru saja dihasilkan pada Models ‣ raster ‣ vectorize . Dobel-klik untuk meluncurkan model.

../_images/1456.png
  1. Pilih LC_hd_global_2001 sebagai Input dan klik Run.

../_images/1552.png
  1. Anda akan melihat semua langkah-langkah tereksekusi tanpa ada input dari user. Ketika proses selesai, sebuah layer baru vectorized_class akan ditambahkan ke QGIS. Mari meningkatkan model sedikit. Klik kanan pada model vectorize vectorize dan pilih Edit model.

../_images/1649.png
  1. Pada step 12, kita melakukan hard-coding pada nilai 12 sebagai nilai kelas. Daripada itu, kita dapat menentukannya sebagai sebuah input parameter yang user bisa ubah. Untuk menambah hal ini, pindah ke tab Inputs dan drag + String ke model.

../_images/1745.png
  1. Masukkan Parameter Name sebagai Class. Masukkan ``12``sebagai Default value.

../_images/1843.png
  1. Sekarang kita akan mengubah algoritma Extract by attribute untuk menggunakan input ini daripada nilai hasil hard-koding tadi. Klik tombol Edit pada box Extract by attribute

../_images/1935.png
  1. Klik panah dropdown untuk Value dan pilih Class . Klik OK.

../_images/2030.png
  1. Anda akan melihat bahwa dari diagram model bahwa algoritma Extract by attribute sekarang menggunakan 2 input. Modeler memiliki sebuah shortcut untuk meluncurkan model dan mengujinya. Klik tombol Run dari toolbar

../_images/2163.png
  1. Perhatikan bahwa dialog model memiliki sebuah field baru yang dapat diedit bernama Class . Masukkan nilai 16 pada Class dan klik Run.

../_images/2230.png
  1. Ketika proses selesai, anda akan melihat bahwa dengan sebuah klik, kita dapat menjalankan sebuah alur kerja yang kompleks dan mengekstrak area untuk kelas 16.

../_images/2327.png
  1. Karena sekarang model kita sudah siap, kita dapat menjalankannya sama mudahnya pada raster baru. Buka file LC_hd_global_2012.tif.gz dengan mengakses Layer ‣ Add Layer ‣ Add Raster Layer... . Klik model vectorize` dari panel Processing Toolbox

../_images/2427.png
  1. Ambil layer LC_hd_global_2012 sebagai Input dan klik Run.

../_images/2526.png
  1. Ketika putput baru sudah terbuka, anda dapat membandingkan perbedaan pada lahan pertanian dari 2001 sampai 2012.

../_images/2623.png
  1. Selalu menjadi ide yang bagus untuk mendambah dokentasi pada model anda. Modeler memiliki built-in: guilabel:Help editor yang membolehkan anda untuk mencangkokkan help langsung di model. Kkik kanan pada model vectorize dan pilih Edit model.

../_images/2722.png
  1. Klik tombol Edit model help dari toolbar.

../_images/2821.png
  1. Pada dialog Help editor , pilih item apa saja dari panel Select element to edit dan masukkan teks help pada Element description . Klik OK . Help ini akan tersedia di tab Help saat anda meluncurkan model untuk dieksekusi.

../_images/2918.png

Model dapat menjadi penghemat waktu yang sangat baik dan membuat anda membuat alur kerja anda sekali dan menjalankannya berkali-kali. Anda dapat juga membagi model anda dengan user lain. File model tersimpan di direktori .qgis2 .Anda dapat mengirim file .model ke user lain yang dapat mengkopinya ke direktori yang sesuai pada komputer mereja dan model ini akan muncul pada Processing toolbox . Lokasi direktori model akan bergantung pada platform sebagai berikut: (ganti username dengan nama_login anda)

Windows

c:\Users\username\.qgis2\processing\models\

Mac

/Users/username/.qgis2/processing/models/

Linux

/home/username/.qgis2/processing/models/

If you want to report any issues with this tutorial, please comment below. (requires GitHub account)