Skip to content

Instantly share code, notes, and snippets.

@yusuf601
Last active June 16, 2026 13:14
Show Gist options
  • Select an option

  • Save yusuf601/e536e894a9dca0724973da64da2bdbb0 to your computer and use it in GitHub Desktop.

Select an option

Save yusuf601/e536e894a9dca0724973da64da2bdbb0 to your computer and use it in GitHub Desktop.

Rencana Rancangan Aturan Pelabelan (Rule-Based Labeling Plan)

1. Penentuan Parameter & Batas Nilai (Threshold Criteria)

Pembagian kriteria kesesuaian lahan tanaman nilam ke dalam 3 kelas didasarkan pada standar FAO/Djaenuddin.

Parameter Sesuai (Label 2) Sesuai Marginal (Label 1) Tidak Sesuai (Label 0)
Ketinggian (DEM) 10–700 mdpl 701–1000 mdpl <10 atau >1000 mdpl
Kelerengan (Slope) <15% 15–30% >30%
Curah Hujan 2000–3500 mm/tahun 1500–1999 atau 3501–4000 mm/tahun <1500 atau >4000 mm/tahun
SQ1 (Nutrisi Tanah) Skala 1 atau 2 Skala 3 Skala 4
SQ2 (Retensi Nutrisi) Skala 1 atau 2 Skala 3 Skala 4
SQ3 (Kondisi Perakaran) Skala 1 atau 2 Skala 3 Skala 4
SQ4 (Drainase / Oksigen) Skala 1 atau 2 (bebas genangan) Skala 3 Skala 4 (rawa/genangan parah)

2. Alur Algoritma Pelabelan Otomatis (Python Logic)

Logika pelabelan dilakukan secara bertingkat (hierarki kendala) untuk setiap titik sampel.

Tahap 1: Deteksi Tidak Sesuai (Label 0)

Jika salah satu kondisi berikut terpenuhi, langsung diberi label 0:

  • Ketinggian >1000 mdpl atau <10 mdpl
  • Kelerengan >30%
  • Curah hujan <1500 mm atau >4000 mm
  • Salah satu parameter tanah (SQ1, SQ2, SQ3, SQ4) bernilai 4 atau 0 (NoData/air)

Tahap 2: Deteksi Sesuai Marginal (Label 1)

Jika tidak masuk Label 0, tetapi memenuhi minimal satu kondisi berikut:

  • Ketinggian 701–1000 mdpl
  • Kelerengan 15–30%
  • Curah hujan 1500–1999 mm atau 3501–4000 mm
  • Salah satu parameter tanah bernilai 3

Tahap 3: Sesuai (Label 2)

Jika semua parameter berada pada kondisi optimal (tidak masuk Tahap 1 dan 2), maka diberi label 2.


3. Strategi Pengambilan Sampel (Sampling Strategy)

Untuk melatih model Random Forest, digunakan strategi sampling sebagai berikut:

  1. Batas Geografis
    Titik acak hanya diambil dalam wilayah daratan Kabupaten Konawe menggunakan file konawe_boundary.geojson, untuk menghindari titik jatuh di laut.

  2. Jumlah Sampel
    Menghasilkan sekitar 2.000–5.000 titik acak.

  3. Ekstraksi Fitur
    Untuk setiap titik:

    • Ambil nilai dari 8 raster utama
    • Hitung 5 indeks vegetasi (NDVI, EVI, dll.)
    • Total fitur: 15
  4. Output Data Latih
    Hasil akhir berupa pandas.DataFrame dengan:

    • 15 kolom fitur
    • 1 kolom label (target)

Langkah Selanjutnya

Silakan konfirmasi apakah nilai threshold di atas sudah sesuai, atau ada yang ingin disesuaikan (misalnya batas curah hujan atau ketinggian) sebelum masuk ke tahap pembuatan script.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment