02.02.2023 • 12:18
Uzay Araştırmaları
Çok uzun bir süredir düşük çözünürlüklü bir fotoğrafta yüksek çözünürlüklü fotoğraf elde etme çabası içindeyiz. Bu amaçla bulunmuş yöntemleri ve algoritmaları genel olarak ikiye ayırmayı uygun buluyorum. İlki enterpolasyon bazlı konvansiyonel yöntemler olarak karşımıza çıkıyor. Daha modern algoritmalarsa yapay zeka algoritmalarının gelişmesiyle ortaya çıkıyorlar. Özellikle görüntü işlemede başarı sağlayan Convolutional Neural Network (CNN) ve verilen örneklere benzer çıktılar üretmeleriyle ön plana çıkan Generative Adversarial Network (GAN) tabanlı algoritmaların bu konuda başarılı olduğunu söyleyebiliriz.
Bilgisayarlar fotoğrafları tensörler olarak görürler. Klasik bir fotoğrafın kırmızı, yeşil ve mavi için üç kanalı bulunur. Yani, fotoğraf 256x256 piksel ise bu fotoğraf bilgisayarda (256x256x3)’lük bir tensör olarak tutulur.
256x256’lık fotoğrafı 1024x1024’lük bir fotoğrafa genişletmek istediğimiz noktada önce 1024x1024’lük bir tuvale gereriz. Bunun sonucunda doğal olarak içerisindeki veriyi bilmediğimiz pikseller oluştururuz. Konvansiyonel yöntemlerde bu piksellerin değerleri var olan piksellerin verilerinden enterpolasyon (sofistike bir ortalama alma yöntemi diyebiliriz) kullanılarak çıkartılabilir. Bu tarz yöntemlere bilinear enterpolasyon, bicubic enterpolasyon gibi yöntemleri de dahil edebiliriz.
Bu tarz konvansiyonel modeller eğitim verisine ihtiyaç duymazlar ve genelde daha hızlı sonuçlar verirler.
Bu tür yöntemlere başka bir örnekse Deep Image Prior (Deep Image Prior, Dmitry Ulyanov et al. 2017) algoritmasıdır. Deep Image Prior denoising, SR gibi işlemler için kullanılan başka bir algoritmadır.
Yapay Zeka modellerini diğerlerinden ayıran iki ana etmen vardır. Bu modeller diğerlerine göre çok daha karmaşıklardır ve bir eğitim datasından öğrenerek sonuca ulaşırlar.
Genel görüntü işleme konularındaki başarısı nedeniyle, bu konuda da ciddi ilk denemeler CNN mimarisiyle gerçekleştirilmiştir. (Image Super-Resolution Using Deep Convolutional Networks, Chao Dong et al. - 2014).
Sonrasında yine görüntü işleme konusunu takip ederek, görüntü işlemede büyük başarılar sağlayan ResNet, SR işlemleri için eğitilmiştir(SRResNet, Ledig et al. 2017). Son olarak yeni örnekler (fotoğraflar) çıkarma görevlerinde başarı sağlayan GAN mimarisi ile denemeler yapılmıştır.
Şu anda en çok başarı sağlayan iki model olarak SRResNet ve SRGAN’ı dikkate alabiliriz.
Genel kullanımdaki Yapay Zeka SR modelleri başarılı olmalarına rağmen öğrenme hedefleri genellikle fotoğraflar üzerinedir. Bu nedenle uydu fotoğrafları üzerine ince ayar gerektirebilirler.
Uydu fotoğrafları için elimizdeki farklı bir araçsa Pan Sharpening’dir.
Optik Uydu sensörleri belli bir S/N (signal to noise ratio) üzerine çalışmak için tasarlanırlar. Bu nedenle sensörlerin tasarımı sırasında spectral ve spatial verilerin kalitesi arasında bir seçim yapma gereksinimi doğar. Spectral olarak daha başarılı (daha dar bir ışık spectrum’unu yakalayabilenler) olan sensörler, spatial (görüntüleme) olarak daha düşük çözünürlüğe sahipken, spectral olarak geniş ışık dalgalarını alan (yani bu dalgalar arasında ayrım yapamayan) sensörler yüksek çözünürlüğe sahip olabilmektedirler.
Örnek olarak Airbus’ın Pléiades Neo uydularının görüntüleme bantlarını inceleyebiliriz.
Burada görebildiğimiz gibi Panchromatic sensörler daha geniş bant genişliğinde ışığa duyarlı olmalarına karşın 0.3 m resolution ile görüntü yakalayabilmektelerken, spectral olarak özelleşmiş sensörlerin resolution’ı daha düşüktür.
Pan Sharpening yüksek çözünürlüklü tek kanal (örneğin panchromatic) resimlerin, daha düşük çözünürlükte de olsa spectral resimlerle birleştirilerek keskinleştirilmesi ve netleştirilmesi için kullanılan bir metoddur. Pan Sharpening diğer SR algoritmaları için bir başlangıç noktası oluşturmak için de kullanılabilir. Hatta iki ayrı uydudan alınan verilerin aynı şekilde netleştirilmesi için de kullanılması mümkündür. (Fusion of Landsat 8 OLI and Sentinel-2 MSI Data, Qunming Wang, et al.).
Pan Sharpening uydu resimlerinde Object Detection’dan, Semantic Segmentation’a birçok hedef için zeka modellerinin başarısını yükseltmektedir:
Improving Object Detection of Remotely Sensed Multispectral Imagery Via Pan-sharpening, Feng Chen et al. – 2020
The Impact of Pan-Sharpening and Spectral Resolution on Vineyard Segmentation through Machine Learning, Eriita G. Jones et al. – 2020
Genellikle uydu resimleri söz konusu olduğunda Pan Sharpening sonrası amaca uygun çeşitli yapay zeka modelleri denenmektedir.
Görüntü işlemede başarılı olmuş modellerin uydu görüntüleme sistemlerinde kullanılmasının önünde hiçbir engel yoktur. Ancak görüntü işleme modellerinin büyük bir çoğunluğu ImageNet ve Coco gibi fotoğraf veri kümeleri üzerine öğrenim gördüklerinden, bu tür fotoğrafları işlemede daha başarılı olabilirler. Yalnız tabii ki, bu modellerin uydu görüntülerine uygulanması ince ayarlar ve transfer learning’le gayet mümkün olmaktadır. (Satellite and Scene Image Classification Based on Transfer Learning and Fine Tuning of ResNet50, Amsa Shabbir et al. 2021).
Genel görüntü işlemede araştırılan birçok model uydu görüntüleri için de kullanılabilir:
Semantic Segmentation bir görüntüdeki piksellerin hangi sınıfa ait olduğunun ölçümünü yapmaya çalışan bir görüntü işleme problemidir. Otonom araba algoritmalarında bolca kullanılan bir yöntemdir.
Semantic Segmentation uydu görüntülerinde; tarım, orman, şehir, yol gibi alanların birbirinden ayrıştırılması ve bu ayrıştırma üzerinden istatistik çalışmalarının yapılması için kullanılabilir.
Bu tarz modellerin farklı tarihlerde kullanılması durumunda tarımın bir bölgede nasıl geliştiği izlenebilir, doğal afetlerin sonuçları üzerine analizler yapılabilir.
Semantic Segmentation klasik bir görüntü işleme problemidir, çözümünde genellikle CNN tabanlı algoritmalar kullanılır. Yakın dönemde transformer modelleriyle de iyi ilerlemeler kaydedilmiştir. Bu konuda öne çıkan bir algoritma olaran Swin Transformer, RedNet ve U-Net’i gösterebiliriz.
Object Detection görüntü işleme konusunda çok karşılaşılan başka bir konudur. 2006 yılında ImageNet veri kümesiyle başlayan ve daha sonra Coco gibi veri kümelerinin ortaya çıkmasıyla devam eden canlılık, görüntü işleme alanını kısa sayılabilecek bir sürede hızlı bir şekilde ileri taşıdı. Bu sırada ortaya çıkan CNN gibi mimariler sadece görüntü işlemede değil, neredeyse tüm yapay zeka konularında kullanılmaya başlandı.
Object Detection ve Instance Segmentation bir resimde bulunan farklı objeleri yakalayıp, sınıflandırmak için kullanılan yöntemlerdir.
Object Detection algoritmaları veri etiketlemenin ve bulmanın kolaylığı itibariyle Instance Segmentation’dan daha kolay eğitilebilirler. Object Detection için başarılı algoritmalar arasında CNN, ResNet'i, Instance Segmentation için ise Mask RCNN’i sayabiliriz. İki yaklaşımın da uydu görüntülemede kullanılması mümkündür. Ancak uydu görüntülerinde etiketleme problemleri nedeniyle şu anda Object Detection’ın genellikle daha başarılı olduğunu söylemek gerekir.
Yukarıda da açıklandığı gibi, uydu görüntüleri üzerinde yapay zeka süreçleri eğer mümkünse Pan Sharpening’le başlamalıdır. Pan Sharpening’le netleştirilmiş ve keskinleştirilmiş görüntüler üzerine düşünülen konulardaki yapay zeka modelleri üzerine çalışılmalı ve sonuçlar karşılaştırılmalıdır. Burada dikkat edilmesi gereken nokta yapay zeka modellerinin eğitim verisine “overfit” olmasının engellenmesidir. Yağmur ormanları görüntüleriyle eğitilmiş bir modelin Türkiye’de çalışması beklenemez. Bu nedenle çalışılacak bölgeye uygun veri hazırlanıp model seçimi üzerine çalışılmalı ve sonuçlar değerlendirilmelidir. Tabii sadece bölgesel değil, dönemsel farklılıklar da göz önünde bulundurulmalıdır. Ağustos ayındaki görüntülerle, şubat ayındaki görüntülerin farkının model tarafından öğrenilmesi isteniyorsa, iki dönemden de görüntülerin eğitim verisinde bulunması gerekebilmektedir.
Uydu verileri üzerinden tarım topraklarının gelişiminin incelendiği bir proje yapıldığını farz edelim. Bu durumda tabi ki tüm Dünya’nın uydu görüntülerini incelememiz mantıklı olmayacaktır. Tarımsal toprakların bulunduğu bölgeleri incelememiz gerekecektir.
Bu amaçla önce tarım yapılan toprakların koordinatlarının çıkarılması gerekecektir. Bu konuda üç yöntem izleyebiliriz.
· Bir Semantic Segmentation yöntemiyle tarım arazilerinin keşfi ve takibi
· Vegetation Index gibi spektral veriden çıkarılan indekslerin yüksek olduğu yerlerin incelenmesi
· Manuel olarak incelenecek yerlerin belirlenmesi
İlk madde için eğitilmiş bir modele ihtiyacımız varken, ikinci madde ormanlarla tarım arazilerini karıştırabilmektedir. Üçüncü maddeyse bir insan eforuna ihtiyaç duymaktadır. Yani mühendislik çalışmalarının hepsinde olduğu gibi burada da seçimler yapmamız ve bu seçimlerin avantaj ve dezavantajlarıyla projeye devam etmemiz gerekecektir. Sonrasında seçilen bölgelerdeki tarım arazilerinin yine benzer yöntemlerle ayrıştırılması ve dönemsel değişikliklerin takip edilmesi gerekecektir. Yeni verilerle modellerin yeniden eğitimlerinin sağlanması için gerekli MLOps yapıları kurulmalı ve sistemin devamlılığı sağlanmalıdır. Sonrasında ise ortaya çıkan bilgilerden bir analitik ortamında fayda sağlanması için çalışmalar yapılmalıdır.
Uydu görüntüleme sistemlerinin yarattığı verinin boyutu ve frekansı nedeniyle bu tarz projeleri AWS gibi bulut servis sağlayıcılarında yapmak hem performans hem de maliyet açısından avantaj sağlamaktadır. Ayrıca yapay zeka modellerinin birçoğu gelişmiş ekran kartlarında eğitilmekte olduklarından yine bu konuda da büyük bulut servis sağlayıcılarından yararlanmak maliyetlerinizi olabildiğince azaltacaktır.
NOVADSA DevOps & AI Manager
Mert Tomruk
“Beraber çalışma kararı vereli yıllar oldu. Geride bıraktığımız yıllar içerisinde ekibin kurumları değişse de aynı dili konuşma ve her zaman çözümden yana olma yaklaşımları değişmedi. Bu yaklaşımları nedeniyle de dostlarımıza güvenle tavsiye edebildik. “
Projeleriniz hakkında konuşalım!
Tomtom Mahallesi, Nuri Ziya Sokak, No: 16, Kat: 4 Beyoğlu / İSTANBUL
+90 212 245 30 53