U-Net ile Arazi Segmentasyonu: Derin Öğrenme ile Haritaların Yeni Dili

Arazi Segmentasyonu Nedir, Neden Önemlidir?
Arazi segmentasyonu, uydu görüntüleri ya da hava fotoğrafları gibi uzaktan algılama verilerinde farklı arazi türlerini (örneğin orman, tarım arazisi, su, şehir alanları) sınıflandırma işlemidir. Bu işlem, tarım arazilerinin yönetiminden şehir planlamasına, doğal afet izlemelerinden çevresel korumaya kadar birçok alanda kritik rol oynar.
Örneğin, bir belediye, hangi bölgelerin yapılaşmaya açık olduğunu anlamak isteyebilir; bir tarım şirketi, ekili alanları analiz etmek ve rekolte tahmini yapmak için segmentasyon modellerinden faydalanabilir. Tüm bu uygulamalarda, uydu görüntüsünden anlamlı veriyi otomatik olarak çıkarmak gerekir. İşte burada devreye, derin öğrenmenin güçlü araçlarından biri olan U-Net giriyor.
Görüntü Segmentasyonu Nedir?
Görüntü segmentasyonu, bir görüntüyü piksellerine kadar ayırarak her piksele bir sınıf atama işlemidir. Bu işlem, görüntüdeki nesneleri veya bölgeleri tanımayı sağlar. Segmentasyon, genellikle ikiye ayrılır:
Semantic segmentation: Her piksel, bir sınıfa (örneğin “tarla”, “orman”, “su”) ait olacak şekilde etiketlenir. Aynı sınıfa ait tüm nesneler aynı etiketle temsil edilir.
Instance segmentation: Sadece sınıf bilgisi değil, aynı zamanda her nesnenin ayrı bir örneği (instance) olarak tanımlanması sağlanır. Örneğin, birden fazla ağacın her biri farklı ID ile ayrılır.
Arazi segmentasyonunda genellikle semantic segmentation yeterlidir. U-Net de bu tür problemler için son derece uygundur.
U-Net Mimarisi Nedir?
U-Net, 2015 yılında biyomedikal görüntüler için geliştirilmiş bir convolutional neural network (CNN) mimarisidir. Ancak zamanla, segmentasyon problemlerinde o kadar başarılı olmuştur ki, uydu görüntüleri gibi başka alanlara da hızlıca uyarlanmıştır.
U-Net’in Yapısı:
U-Net mimarisi adını “U” şeklindeki yapısından alır ve temel olarak iki ana bölümden oluşur:
Encoder (İniş Yolu): Bu kısımda görüntü, konvolüsyon ve max pooling katmanları ile giderek küçültülerek yüksek seviyeli özellikler çıkarılır. Görüntüdeki genel yapılar bu aşamada öğrenilir.
Decoder (Çıkış Yolu): Bu kısımda, önceki özellik haritaları upsampling işlemiyle tekrar büyütülür. Buradaki amaç, her pikselin sınıfını doğru şekilde tahmin etmektir.
En önemli fark yaratan bileşen ise skip connections adı verilen bağlantılardır. Encoder tarafında elde edilen düşük seviyeli özellikler, decoder tarafında aynı boyutta olan katmanlarla birleştirilir. Böylece, hem genel hem de yerel bilgiyi birleştiren güçlü bir çıktı elde edilir. Bu özellikle segmentasyon gibi konum hassasiyeti gerektiren görevlerde çok işe yarar.
U-Net ile Arazi Segmentasyonu Nasıl Yapılır?
Uygulamada U-Net ile arazi segmentasyonu yapmak birkaç temel adımdan oluşur:
1. Veri Seti
Arazi segmentasyonu için çeşitli uydu görüntü veri setleri mevcuttur. Örneğin:
DeepGlobe Land Cover Classification
ISPRS Vaihingen
SpaceNet
Bu veri setlerinde RGB (ya da multispektral) görüntüler ve karşılık gelen etiket haritaları (ground truth) bulunur. Etiket haritalarında her pikselin hangi sınıfa ait olduğu bilgisi yer alır.
2. Veri Ön İşleme
Görüntüler sabit boyuta kırpılır (örneğin 256x256).
Piksel değerleri normalize edilir (0-1 aralığına çekilir).
Etiket haritaları one-hot encoding şeklinde hazırlanır (örneğin: orman → [1, 0, 0], tarla → [0, 1, 0], vb.)
Data augmentation (döndürme, yansıtma, zoom gibi) uygulanarak veri artırılır.
3. Model Eğitimi
U-Net mimarisi PyTorch veya TensorFlow gibi kütüphanelerle kolayca kurulabilir. Eğitim süreci aşağıdaki gibidir:
Loss Function: Çoğunlukla categorical crossentropy ya da Dice loss kullanılır. Dice loss, segmentasyonun doğruluğunu daha iyi ölçebilir çünkü sınıflar arasındaki dengesizliği daha az etkilenir.
Optimizer: Adam, en sık kullanılan optimizer’dır.
Evaluation Metrics:
IoU (Intersection over Union)
Accuracy (piksel başına doğruluk)
F1-Score (özellikle dengesiz veri için)
4. Tahmin ve Görselleştirme
Model eğitildikten sonra test görüntüleri üzerinden tahminler yapılır. Sonuçlar, orijinal görüntünün üzerine renkli maske olarak bindirilerek görselleştirilir. Böylece orman, tarla, su gibi bölgeler renklerle kodlanarak hızlıca analiz edilebilir hale gelir.
Uygulama Örneği: U-Net ile Tarım Alanı Tespiti
Diyelim ki bir tarım arazisinin haritasını çıkarmak istiyorsunuz. Uydu görüntülerinden alınan görüntülerde tarla, orman, yol gibi alanları segmentlere ayırmak için eğitilmiş bir U-Net modeli kullanırsınız. Model size her pikselin hangi sınıfa ait olduğunu söyler. Bu çıktılar sayesinde;
Tarım yapılan alanın yüz ölçümü hesaplanabilir.
Hangi tarlaların sulama ihtiyacı olduğu belirlenebilir.
Hastalık riski taşıyan bitki örtüsü tespit edilebilir.
Bu işlemler önceden manuel olarak saatler süren analizler gerektirirken, U-Net gibi yapay zeka modelleri sayesinde dakikalar içinde yapılabilir hale geliyor.
U-Net’in Gücü ve Gelecek Yönelimler
U-Net, arazi segmentasyonu gibi karmaşık görüntü işleme problemlerinde hem doğruluk hem de verimlilik açısından kendini ispatlamış bir mimaridir. Özellikle konum hassasiyeti ve detaylı sınıflandırma gerektiren durumlarda skip connection’ları sayesinde üstün performans gösterir.
Bununla birlikte, gelecekte Transformer tabanlı modellerin (örneğin SegFormer) ya da hibrit mimarilerin U-Net’in yerini alabileceği düşünülmektedir. Ancak eğitim verisinin sınırlı olduğu durumlarda, basitliği ve etkili yapısı nedeniyle U-Net hâlâ ilk tercihlerden biridir.
Arazi segmentasyonu, sadece yapay zekâ araştırmacılarının değil, aynı zamanda çevre bilimcilerin, şehir plancılarının ve tarım mühendislerinin de ihtiyaç duyduğu bir konudur. Bu alanda U-Net gibi modeller, görüntülerden anlam çıkarma sürecini otomatikleştirerek karar alma mekanizmalarını güçlendiriyor. Eğer siz de bu alana ilgi duyuyorsanız, basit bir U-Net modeliyle başlayarak büyük farklar yaratabilirsiniz.