Heyelan Duyarlılık Analizi: CBS ile Risk Zonlaması
Heyelan, Türkiye'de depremden sonra en çok can ve mal kaybına yol açan ikinci doğal afettir. Karadeniz kıyı şeridi, Doğu Anadolu dağlık alanları ve Ege'nin dik yamaçları özellikle yüksek riskli bölgeler arasındadır. Heyelan duyarlılık analizi, bir bölgede heyelan oluşumunu tetikleyebilecek doğal ve beşerî faktörleri CBS katmanları olarak değerlendirip her noktaya risk skoru atayan mekansal bir yaklaşımdır. Bu rehberde hangi veri katmanlarının kullanıldığı, nasıl sınıflandırıldığı ve QGIS ile Python'da ağırlıklı çakışma analizinin adım adım nasıl yapıldığı anlatılmaktadır.
Heyelanı Etkileyen Faktörler
Heyelan duyarlılığı tek bir değişkene bağlı değildir; birden fazla fiziksel faktörün bir arada olumsuz koşul oluşturmasıyla ortaya çıkar:
- Eğim (Slope): En kritik faktör. %30'un üzerindeki eğimler yüksek riskli kabul edilir.
- Bakı (Aspect): Kuzey ve kuzeybatı yamaçlar daha az güneş alır, nem tutarak zemin dayanımını azaltır.
- Litoloji (Kaya Türü): Kil, şist ve volkanik tüf gibi zayıf kayaçlar ayrışmaya duyarlıdır.
- Arazi Örtüsü: Ormansızlaşma kök tutuşunu azaltır, drenajı bozar.
- Yağış: Şiddetli yağış gözenekli suyu artırıp zemin basıncını yükseltir.
- Akarsu Mesafesi: Dere yataklarına yakın yamaçlar taban aşınımından etkilenir.
- Deprem ivmesi: Sismik titreşim yamaçları istikrarsızlaştırır.
Veri kaynakları: Copernicus DEM (30 m, ücretsiz), MTA Jeoloji Haritaları, ESA Copernicus Arazi Örtüsü (CORINE 2018), AFAD yağış gözlem verileri, Açık Afet Veri Platformu heyelan envanteri.
1. DEM'den Türetilen Katmanlar
Sayısal Yükseklik Modeli (DEM), birden fazla kritik katmanın kaynağıdır. QGIS'te Raster → Analiz → DEM (Arazi Modelleri) ya da Python ile:
import richdem as rd import numpy as np import rasterio dem = rd.LoadGDAL("copernicus_dem_30m.tif") # Eğim (derece cinsinden) egim = rd.TerrainAttribute(dem, attrib="slope_degrees") rd.SaveGDAL("egim.tif", egim) # Bakı (0-360 derece) baki = rd.TerrainAttribute(dem, attrib="aspect") rd.SaveGDAL("baki.tif", baki) # Tepe Islak Dizini (TWI) — drenaj yoğunlaşması twi = rd.TerrainAttribute(dem, attrib="TWI") rd.SaveGDAL("twi.tif", twi)
2. Her Faktörün Sınıflandırılması (1–5 Skoru)
Her katman, heyelan duyarlılığına katkısına göre 1 (düşük risk) ile 5 (çok yüksek risk) arasında sınıflandırılır:
| Faktör | Sınıf | Skor |
|---|---|---|
| Eğim | <10° | 1 |
| Eğim | 10°–20° | 2 |
| Eğim | 20°–30° | 3 |
| Eğim | 30°–40° | 4 |
| Eğim | >40° | 5 |
| Litoloji | Sert magmatik | 1 |
| Litoloji | Kireçtaşı | 2 |
| Litoloji | Şist / fillit | 4 |
| Litoloji | Kil, alüvyon | 5 |
| Arazi örtüsü | Yoğun orman | 1 |
| Arazi örtüsü | Tarım alanı | 3 |
| Arazi örtüsü | Çıplak toprak | 5 |
3. Ağırlıklı Çakışma Analizi
Tüm faktörler 1–5 arasında sınıflandırıldıktan sonra literatürden ve uzman görüşünden türetilen ağırlıklarla çarpılıp toplanır:
import numpy as np import rasterio def oku(dosya): with rasterio.open(dosya) as src: return src.read(1).astype(float), src.profile egim, profil = oku("egim_sinif.tif") litoloji, _ = oku("litoloji_sinif.tif") arazi, _ = oku("arazi_sinif.tif") yagis, _ = oku("yagis_sinif.tif") akarsu, _ = oku("akarsu_mesafe_sinif.tif") # Ağırlıklar (toplamı 1.0) duyarlilik = (egim * 0.30 + litoloji * 0.25 + arazi * 0.20 + yagis * 0.15 + akarsu * 0.10) profil.update(dtype=rasterio.float32) with rasterio.open("heyelan_duyarlilik.tif", "w", **profil) as dst: dst.write(duyarlilik.astype(np.float32), 1)
4. Doğrulama: ROC Eğrisi ile Model Başarısı
Duyarlılık haritasının doğruluğunu ölçmek için bilinen heyelan noktaları kullanılır. Heyelan envanter noktalarının %70'i model oluşturmak, %30'u doğrulama için ayrılır. ROC (Receiver Operating Characteristic) eğrisi altındaki alan (AUC) 0.70'in üzerindeyse model kabul edilebilir, 0.85'in üzerindeyse mükemmel kabul edilir.
from sklearn.metrics import roc_auc_score, roc_curve import matplotlib.pyplot as plt # y_true: 1=heyelan var, 0=yok (doğrulama seti) # y_score: o noktanın duyarlılık harita değeri auc = roc_auc_score(y_true, y_score) fpr, tpr, _ = roc_curve(y_true, y_score) plt.plot(fpr, tpr, label=f"AUC = {auc:.3f}") plt.plot([0,1],[0,1],"--", color="grey") plt.xlabel("Yanlış Pozitif Oranı"); plt.ylabel("Doğru Pozitif Oranı") plt.title("Heyelan Duyarlılık Modeli — ROC Eğrisi") plt.legend(); plt.tight_layout(); plt.savefig("roc.png", dpi=150)
Faktör Ağırlıkları Özet Tablosu
| Faktör | Veri Kaynağı | Ağırlık |
|---|---|---|
| Eğim | Copernicus DEM 30 m | %30 |
| Litoloji | MTA Jeoloji Haritası | %25 |
| Arazi örtüsü | CORINE 2018 | %20 |
| Yıllık yağış | MGM / ERA5 | %15 |
| Akarsu mesafesi | DEM türevli | %10 |
AHP ile ağırlık belirleme: Uzman görüşü yoksa Analitik Hiyerarşi Süreci (AHP) yöntemiyle faktör ikili karşılaştırması yapılarak ağırlıklar matematiksel olarak türetilebilir. Python'da pyAHP veya ahpy kütüphaneleri bu hesaplamayı kolaylaştırır.
Heyelan Risk Analizi Projenizde Profesyonel Destek
CBS tabanlı heyelan duyarlılık haritalaması, afet risk yönetimi ve mekansal modelleme konularında uzman kadromuzdan destek alın.
Ücretsiz Danışmanlık AlınKaynaklar
- Yalcin, A. ve ark. (2011). A GIS-based comparative study of frequency ratio, analytical hierarchy process, bivariate statistics and logistics regression methods for landslide susceptibility mapping. Catena, 85(3), 274–287.
- Copernicus DEM — spacedata.copernicus.eu
- CORINE Land Cover 2018 — land.copernicus.eu