QGIS Plugins: Semi-Automatic Classification Plugin (SCP) Nedir?
Semi-Automatic Classification Plugin (SCP), QGIS içinde tam donanımlı bir uzaktan algılama laboratuvarı kurar: uydu görüntüsü indirmeden atmosferik düzeltmeye, eğitim alanı toplamaktan makine öğrenmesi tabanlı sınıflandırmaya, doğruluk değerlendirmesinden çok-zamanlı değişim tespitine kadar tüm iş akışını tek bir ücretsiz eklenti içinde birleştirir. Bu rehber, SCP'nin her modülünü — kavramsal arka planı, pratik adımları ve akademik titizlik gerekliliklerini içerecek şekilde — mümkün olan en kapsamlı biçimde ele alır.
1. SCP Nedir ve Neden Önemlidir?
Semi-Automatic Classification Plugin (SCP), İtalyan araştırmacı Luca Congedo tarafından geliştirilen ve QGIS'i eksiksiz bir uzaktan algılama iş istasyonuna dönüştüren, tamamen ücretsiz ve açık kaynaklı bir eklentidir. Congedo, SCP'yi doktora tezi kapsamında geliştirmiş ve zamanla akademik camianın en çok kullandığı açık kaynak sınıflandırma araçlarından birine dönüştürmüştür. SCP'nin temel felsefesi şudur: ticari yazılımların (ENVI, ERDAS Imagine) sunduğu uçtan uca iş akışını — indirme, ön işleme, sınıflandırma, doğrulama, değişim tespiti — hiçbir lisans maliyeti olmadan tek bir ortamda sunmak.
"Yarı otomatik" (semi-automatic) adlandırması, sürecin bazı adımlarının (görüntü indirme, atmosferik düzeltme, band hesaplamaları) tam otomatik yürütülürken, sınıflandırmanın kalbindeki eğitim alanı (training area) seçiminin analistin uzmanlığına ve arazi bilgisine dayanmasından gelir — SCP bu insan girdisini sistematikleştirir, ortadan kaldırmaz.
Akademik atıf notu: SCP'yi kullanan yayınlarda Congedo'nun (2021) yazılım makalesine atıf yapılması akademik camiada standart hale gelmiştir (bkz. Bölüm 15/Kaynaklar). Bu, hem yazılımın sürdürülebilirliğine katkı sağlar hem de metodolojinizin tekrarlanabilirliğini güçlendirir.
2. Desteklenen Uydu ve Sensör Verileri
SCP'nin en güçlü yönlerinden biri, düzinelerce uydu/sensör ürününü doğrudan tanıması ve bunların band adlandırma, çözünürlük ve meta veri farklılıklarını otomatik yönetmesidir:
| Sensör / Ürün | Çözünürlük | Tipik Kullanım |
|---|---|---|
| Landsat 5/7/8/9 | 30 m (15 m pankromatik) | Uzun dönemli (1984'ten günümüze) arazi örtüsü değişim analizi |
| Sentinel-2 (MSI) | 10/20/60 m | Yüksek temporal frekans (5 gün), tarım ve orman izleme |
| Sentinel-1 (SAR) | 10 m | Bulut örtüsünden etkilenmeyen radar tabanlı analiz, sel/nem tespiti |
| Sentinel-3 | 300 m–1 km | Okyanus rengi, kara yüzey sıcaklığı, geniş alan izleme |
| ASTER | 15–90 m | Jeoloji, mineral haritalama (termal bantlar) |
| MODIS | 250 m–1 km | Günlük küresel izleme, NDVI zaman serisi, yangın tespiti |
| GOES | 0.5–2 km | Meteorolojik izleme, gerçek zamanlı hava durumu |
Her sensör için SCP, hangi bandın hangi dalga boyu aralığına (mavi, yeşil, kırmızı, NIR, SWIR, termal) karşılık geldiğini önceden tanımlanmış "band setleri" içinde tutar; bu, kullanıcının hangi bandın "kırmızı" hangi bandın "NIR" olduğunu ezberlemesi gerekmeden band matematiği yapabilmesini sağlar.
3. Kurulum ve İlk Ayarlar
Arama kutusuna: Semi-Automatic Classification Plugin
→ Eklentiyi Yükle
Kurulum sonrası SCP, kendi dock (yan panel) arayüzünü açar. İlk kullanımdan önce yapılması gereken temel ayarlar:
- Working Directory (Çalışma Dizini): SCP'nin ara ürünleri (geçici bantlar, maskeler, rapor dosyaları) buraya yazılır; büyük görüntülerle çalışırken yeterli disk alanı olan bir dizin seçilmelidir.
- RAM Ayarı: SCP Ayarlar sekmesinden işlem için ayrılacak bellek miktarı yapılandırılabilir; büyük mozaik veya çok bantlı görüntülerde bu değerin artırılması işlem hatalarını önler.
- Temp Directory: Geçici dosyalar için ayrı bir hızlı disk (SSD) belirtmek, büyük veri işlerken performansı artırır.
4. Uydu Görüntüsü İndirme
SCP'nin "Download Products" sekmesi, USGS EarthExplorer (Landsat) ve Copernicus Data Space Ecosystem (Sentinel) hesaplarınızla doğrudan kimlik doğrulama yaparak arama, önizleme ve indirme yapmanızı sağlar — tarayıcıdan manuel indirme ve dosya yönetimi gereksinimini ortadan kaldırır.
- İlgili servis için ücretsiz hesap oluşturun (USGS veya Copernicus Data Space Ecosystem).
- SCP'nin ilgili sekmesine kullanıcı adı/şifrenizi girin.
- Çalışma alanınızı harita üzerinde bir dikdörtgenle veya mevcut bir vektör katmanla tanımlayın.
- Tarih aralığı ve maksimum bulut örtüsü yüzdesi gibi filtreleri ayarlayın.
- Sonuç listesinden sahneleri önizleyip seçin ve indirin; SCP dosyaları otomatik olarak sensöre özgü klasör yapısında düzenler.
Bulut filtresi stratejisi: Tek bir "temiz" sahne bulmak zor olduğunda, farklı tarihlerden alınan görüntüleri mozaikleyerek (mosaic) bulutsuz bir kompozit oluşturmak, tek sahne aramaktan daha verimli olabilir.
5. Radyometrik ve Atmosferik Düzeltme
Ham uydu verisi, sensörün ölçtüğü ham sayısal değerleri (DN — Digital Number) içerir; bu değerler doğrudan karşılaştırılabilir fiziksel büyüklükler değildir. Sınıflandırma ve çok-zamanlı karşılaştırma öncesi iki aşamalı bir düzeltme gerekir:
Radyometrik Kalibrasyon: DN → TOA Reflektans/Radyans
Her sensörün meta verisinde bulunan kazanç (gain) ve ofset (offset) katsayıları kullanılarak DN değerleri, atmosfer üstü (Top of Atmosphere — TOA) reflektans veya radyans değerlerine dönüştürülür. SCP bu dönüşümü meta veri dosyasından (MTL.txt Landsat için, MTD*.xml Sentinel-2 için) otomatik okuyarak gerçekleştirir.
Atmosferik Düzeltme: TOA → Yüzey Reflektansı
TOA reflektans, atmosferdeki su buharı, aerosol ve gaz moleküllerinin saçılma/soğurma etkisini hâlâ içerir. SCP, en yaygın kullanılan basit ama etkili yöntemlerden birini sunar:
- DOS1 (Dark Object Subtraction): Görüntüdeki en koyu pikselin (derin gölge, temiz su gibi) teorik olarak sıfıra yakın reflektans taşıması gerektiği varsayımına dayanır; bu karanlık nesnenin gözlenen değeri, atmosferik saçılma katkısı olarak kabul edilip tüm görüntüden çıkarılır. Hesaplama yükü düşük, çok sahne için pratik bir çözümdür.
- 6S Modeli entegrasyonu: Daha fiziksel temelli, atmosfer parametrelerini (aerosol optik derinliği, su buharı) modelleyen gelişmiş bir yöntemdir; SCP'nin bazı sürümlerinde harici 6SV kütüphanesiyle entegrasyon desteklenir. Daha doğru ama hesaplama açısından daha maliyetlidir.
Ne zaman gerekli, ne zaman değil? Tek bir zaman dilimindeki basit bir sınıflandırma için atmosferik düzeltme genellikle sonucu çok değiştirmez. Ancak çok-zamanlı değişim tespiti veya farklı sahneler arası spektral karşılaştırma yapıyorsanız, atmosferik düzeltme atlanamaz bir adımdır — aksi halde atmosferik koşul farkları gerçek arazi değişimiyle karıştırılabilir.
6. Bulut Maskeleme
Bulut ve bulut gölgesi pikselleri, sınıflandırma sonuçlarını ciddi biçimde bozar (bulutlar genellikle "kentsel alan" veya "kar" ile karışabilir). SCP iki yaklaşım sunar:
- Sentinel-2 SCL (Scene Classification Layer) bandı: Copernicus'un kendi sağladığı ön-sınıflandırılmış maske bandı; bulut, bulut gölgesi, kar, su gibi sınıfları doğrudan içerir ve SCP bu bandı okuyarak otomatik maskeleme yapabilir.
- Landsat QA/Fmask benzeri bant tabanlı maskeleme: Landsat ürünlerindeki kalite değerlendirme (QA) bandı üzerinden bulut/gölge/kar bitleri okunarak maske üretilir.
Üretilen maske, sınıflandırma öncesi ilgisiz pikselleri NoData olarak işaretlemek veya mozaikleme sırasında en temiz pikseli seçmek için kullanılır.
7. Band Set Oluşturma ve Band Calc
Band Set, SCP'nin farklı bantları (aynı sahnenin ayrı dosyalar halindeki B2, B3, B4, B8 gibi bantları) tek bir sanal çok bantlı görüntü olarak ele almasını sağlayan temel veri yapısıdır. Bir kez oluşturulduğunda, sonraki tüm işlemler (sınıflandırma, band matematiği, ROI toplama) bu Band Set üzerinden yürütülür.
Band Calc aracı, bantlar arası matematiksel ifadelerle yeni indeksler türetmenizi sağlar. En yaygın örnek NDVI (Normalized Difference Vegetation Index) hesabıdır:
Band Calc'ta üretilen NDVI/NDWI/NDBI gibi indeksler, hem görsel yorumlama hem de sınıflandırma algoritmalarına ek "bant" olarak beslenerek sınıf ayrımını güçlendirmek için kullanılabilir — özellikle bitki örtüsü alt tiplerini ayırt etmede etkilidir.
8. Eğitim Alanları (ROI) ve Spektral İmza Toplama
Denetimli sınıflandırmanın kalbi, analistin haritada bildiği arazi örtüsü tiplerini (orman, su, tarım, kentsel, çıplak toprak vb.) temsil eden eğitim alanları (Region of Interest — ROI) çizmesidir. SCP'de bu süreç:
- Her arazi örtüsü sınıfı için bir Macroclass ID ve Class ID tanımlanır (örn. Macroclass 1 = Bitki Örtüsü, Class 1.1 = Orman, Class 1.2 = Tarım).
- Görüntü üzerinde, o sınıfa ait olduğunu bildiğiniz homojen alanlarda çokgen ROI'ler çizilir.
- Her ROI çizildiğinde SCP, o alanın spektral imzasını (spectral signature) — her bantta ortalama reflektans değerini — otomatik hesaplayıp "Training Input" dosyasına (.scp uzantılı) kaydeder.
- Spektral imza grafiği penceresinden, farklı sınıfların bantlar arası ayrışıp ayrışmadığı görsel olarak kontrol edilir.
ROI kalitesi = sınıflandırma kalitesi: Karışık pikseller içeren (örn. orman kenarındaki geçiş alanı), çok küçük veya yanlış yorumlanmış ROI'ler, ne kadar gelişmiş bir algoritma kullanırsanız kullanın sonucu doğrudan bozar. Her sınıf için en az birkaç yüz piksel içeren, homojen ve mekansal olarak dağılmış (görüntünün farklı bölgelerinden) ROI toplamak, tek büyük bir ROI'ye güvenmekten daha sağlam sonuç verir.
9. Sınıflandırma Algoritmaları
ROI'ler ve spektral imzalar hazır olduğunda, SCP birkaç farklı sınıflandırma algoritması sunar:
| Algoritma | Çalışma Mantığı | Avantaj | Dezavantaj |
|---|---|---|---|
| Minimum Distance | Her pikseli, spektral imza ortalamasına Öklid mesafesi en yakın sınıfa atar | Basit, hızlı | Sınıf varyansını dikkate almaz, örtüşen sınıflarda zayıf |
| Maximum Likelihood (ML) | Her sınıfın çok değişkenli normal dağılım varsayımıyla olasılık yoğunluğunu hesaplar, en yüksek olasılıklı sınıfı atar | İstatistiksel temeli güçlü, klasik uzaktan algılamada standart | Normal dağılım varsayımı her zaman geçerli değil, yeterli ROI örneklemi gerektirir |
| Spectral Angle Mapping (SAM) | Piksel spektrumu ile referans spektrum arasındaki açısal farkı ölçer; parlaklık farkına duyarsızdır | Aydınlanma/gölge farklarına dayanıklı | Yalnızca spektral şekli dikkate alır, genlik bilgisini göz ardı eder |
| Random Forest (scikit-learn entegrasyonu) | Çok sayıda karar ağacının oylamasıyla sınıf ataması yapan topluluk (ensemble) yöntemi | Yüksek doğruluk, karmaşık/doğrusal olmayan sınıf sınırlarında güçlü, aşırı öğrenmeye (overfitting) görece dayanıklı | Kara kutu niteliği, hiperparametre ayarı gerektirir |
Pratik öneri: Klasik akademik karşılaştırmalar ve basit senaryolar için Maximum Likelihood iyi bir başlangıç noktasıdır. Karmaşık, heterojen arazi örtüsü olan alanlarda (örn. kentsel-kırsal geçiş bölgeleri) Random Forest genellikle belirgin şekilde daha yüksek doğruluk sağlar; bu nedenle son yıllarda akademik yayınlarda Random Forest tercih oranı artmaktadır.
10. Doğruluk Değerlendirmesi (Accuracy Assessment)
Bir sınıflandırmanın "iyi" olduğunu iddia etmek için sayısal kanıt gerekir. SCP, sınıflandırma sonucunu eğitim alanlarından bağımsız referans (doğrulama) noktalarıyla karşılaştırarak bir karışıklık matrisi (confusion matrix) üretir.
| Referans: Orman | Referans: Tarım | Referans: Kentsel | Toplam | Kullanıcı Doğruluğu | |
|---|---|---|---|---|---|
| Sınıflandırılan: Orman | 85 | 8 | 2 | 95 | 89.5% |
| Sınıflandırılan: Tarım | 6 | 78 | 5 | 89 | 87.6% |
| Sınıflandırılan: Kentsel | 1 | 4 | 91 | 96 | 94.8% |
| Toplam | 92 | 90 | 98 | 280 | |
| Üretici Doğruluğu | 92.4% | 86.7% | 92.9% |
Bu matristen türetilen dört temel metrik:
- Genel Doğruluk (Overall Accuracy): Doğru sınıflandırılan piksellerin toplam piksellere oranı — yukarıdaki örnekte (85+78+91)/280 ≈ %90.
- Üretici Doğruluğu (Producer's Accuracy): Gerçekte o sınıfa ait olan piksellerin ne kadarının doğru tespit edildiği (ihmal hatası — omission error'ın tersi).
- Kullanıcı Doğruluğu (User's Accuracy): Bir sınıf olarak etiketlenen piksellerin ne kadarının gerçekten o sınıfa ait olduğu (yanlış dahil etme hatası — commission error'ın tersi).
- Kappa Katsayısı: Rastgele şansla elde edilebilecek uyumu dışlayarak düzeltilmiş bir uyum ölçüsüdür; 0 (rastgele) ile 1 (mükemmel) arasında değişir; >0.80 genellikle "mükemmel uyum" olarak yorumlanır.
Metodolojik titizlik: Referans noktalarını eğitim alanlarıyla aynı kaynaktan veya örtüşecek şekilde seçmek, doğruluk değerlerini yapay olarak şişirir (veri sızıntısı — data leakage). Referans noktaları, mümkünse bağımsız bir kaynaktan (yüksek çözünürlüklü görüntü, saha ziyareti, resmi arazi örtüsü haritası) ve rastgele veya tabakalı rastgele örnekleme ile seçilmelidir. Akademik yayınlarda bu ayrım metodoloji bölümünde açıkça belirtilmelidir.
11. Sınıflandırma Sonrası İşleme
Ham sınıflandırma çıktısı genellikle "tuz-biber" (salt-and-pepper) gürültüsü içerir — tek piksellik yanlış sınıflandırılmış noktalar. SCP birkaç sonrası işleme aracı sunar:
- Sieve (Elekleme): Belirlenen bir piksel eşiğinin altındaki küçük, izole yamaları çevresindeki baskın sınıfla birleştirir; haritayı görsel ve istatistiksel olarak daha temiz hale getirir.
- Class Reclassification: Çok sayıda alt sınıfı (örn. "yaprak döken orman" ve "iğne yapraklı orman") daha genel bir üst sınıfa ("orman") birleştirme.
- Sınıflandırma Raporu: Her sınıfın kapladığı alan (hektar/km²) ve toplam görüntüye oranını özetleyen otomatik rapor üretimi.
12. Değişim Tespiti (Land Cover Change)
SCP'nin "Land Cover Change" modülü, iki farklı zaman dilimine ait sınıflandırma haritalarını karşılaştırarak bir geçiş matrisi (transition matrix) üretir: hangi sınıfın hangi sınıfa, ne kadar alanda dönüştüğünü gösterir (örn. "150 hektar tarım alanı kentsel alana dönüşmüş"). Bu analiz;
- Kentsel yayılma (urban sprawl) hızını ölçmek,
- Ormansızlaşma (deforestation) oranını nicelleştirmek,
- Tarım alanı kaybını izlemek
gibi çalışmalarda temel araçtır. Doğru bir değişim tespiti için her iki zaman dilimindeki görüntülerin aynı atmosferik düzeltme yöntemiyle işlenmiş, benzer mevsimsel koşullarda (aynı fenolojik dönem) alınmış ve aynı sınıflandırma şeması (aynı Macroclass/Class ID yapısı) kullanılarak üretilmiş olması gerekir.
13. Zaman Serisi ve Vejetasyon İndeksleri
Tek bir sınıflandırma anlık bir görüntü sunarken, çok-zamanlı NDVI serileri mevsimsel/yıllık dinamikleri ortaya çıkarır. SCP'nin Band Calc ve Band Set araçları, farklı tarihlerden NDVI rasterları üreterek bir zaman serisi oluşturmayı ve bunları bir "stack" (yığın) halinde birleştirmeyi destekler; bu yığın üzerinde piksel bazlı trend analizi (örn. yıllar içinde NDVI'de düşüş = bitki örtüsü stresi) yapılabilir.
Daha derinlemesine zaman serisi/trend analizi ve mevsimsellik ayrıştırması için Zaman Serisi Analizi ve ARIMA yazımızdaki istatistiksel yöntemler, piksel bazlı NDVI serilerine de uygulanabilir.
14. Batch Processing ve Otomasyon
Çok sayıda sahneyi (örn. 10 yıllık yıllık Landsat serisi) tek tek işlemek yerine, SCP'nin batch (toplu işlem) araçları ve QGIS Processing Toolbox entegrasyonu ile iş akışları otomatikleştirilebilir. SCP'nin çekirdek işlevlerinin çoğu, Processing algoritmaları olarak da mevcuttur ve Python'dan tetiklenebilir:
Neden önemli? Akademik bir çalışmada 5-10 yıllık bir zaman serisini manuel olarak tek tek işlemek hem zaman alıcı hem hataya açıktır. Betikleştirilmiş bir iş akışı, hem tekrarlanabilirliği (reproducibility) garanti eder hem de metodolojinin başka bir araştırmacı tarafından doğrulanmasını kolaylaştırır.
15. SCP vs Diğer Araçlar ve Akademik Atıf
| Araç | Maliyet | Güçlü Yön | Sınırlama |
|---|---|---|---|
| SCP (QGIS) | Ücretsiz | Uçtan uca iş akışı, QGIS entegrasyonu, akademik camiada yaygın kabul | Masaüstü kaynaklarıyla sınırlı, çok büyük alanlarda yavaşlayabilir |
| Google Earth Engine | Ücretsiz (araştırma/eğitim) | Petabayt ölçekli arşiv, bulut işlem gücü, JavaScript/Python API | Öğrenme eğrisi, internet bağımlılığı, sınırlı offline kullanım |
| ENVI | Ticari (yüksek) | Gelişmiş atmosferik düzeltme (FLAASH), hiperspektral analiz araçları | Lisans maliyeti, akademik bütçe kısıtı |
| eCognition | Ticari (yüksek) | Nesne tabanlı görüntü analizi (OBIA), segmentasyon | Piksel tabanlı SCP'den farklı bir paradigma, yüksek maliyet |
Akademik atıf: SCP kullanılan çalışmalarda Congedo, L. (2021). "Semi-Automatic Classification Plugin: A Python tool for the download and processing of remote sensing images in QGIS." Journal of Open Source Software, 6(64), 3172 makalesine atıf yapılması standart uygulamadır. Bu atıf, hem yazılımın akademik meşruiyetini güçlendirir hem de metodolojinizin şeffaflığını artırır.
Uzaktan Algılama ve Sınıflandırma Projelerinizde Uzman Destek
Uydu görüntüsü sınıflandırması, doğruluk değerlendirmesi ve değişim tespiti analizlerinizde uzman ekibimizden destek alın.
Ücretsiz Danışmanlık AlınKaynaklar
- Congedo, L. (2021). Semi-Automatic Classification Plugin: A Python tool for the download and processing of remote sensing images in QGIS. Journal of Open Source Software, 6(64), 3172.
- Congedo, L. SCP Documentation. fromgistors.blogspot.com
- Chavez, P. S. (1996). Image-Based Atmospheric Corrections — Revisited and Improved. Photogrammetric Engineering and Remote Sensing, 62(9), 1025–1036. (DOS yöntemi)
- Congalton, R. G., & Green, K. (2019). Assessing the Accuracy of Remotely Sensed Data: Principles and Practices (3rd ed.). CRC Press.
- Breiman, L. (2001). Random Forests. Machine Learning, 45(1), 5–32.
- Bkz. ayrıca: Uydu Görüntüsü Sınıflandırması yazımız — daha genel yöntem karşılaştırması için.