İçeriğe geç

FISHACKATHON – DeePlank

  • Merhabalar, uzun zamandır hackathonlara katılmaktan zevk alıyorum. Aslında bu kadar başarılı olmamın sebebinin de bu olduğunu düşünüyorum. 2014 yılında ilk katıldığım hackathon ile şu an katıldığım hackathon arasında inanılmaz bir fark var. Her hackathon bilmediğim yeni bir şeyler öğrenmeme vesile oluyor ve sınırlarımı zorlamama sebep oluyor. Buralarda edindiğim tecrübeleri aslında uzun zamandır yazmayı düşünüyordum. Kısmet FISHACKATHON’a denk geldi. 🙂

FISHACKATHON nedir ? 

Fishackathon; Deniz ve bağlı araștırma alanlarında kalite, sürdürülebilirlik ve verimlilik için bașta yazılım olmak üzere teknolojik çözümlerin geliștirilmesine odaklanan özel bir hackathondur.
Bölgesel olarak suların ve suyla bağlantılı, canlı ve cansız unsurların daha adil hale gelmesine ve farkındalık yaratılmasına odaklanılmaktadır.
Amerika Birleșik Devletleri tarafından bașlatılmıș ve sponsorluğu üstlenilen; kar amacı gütmeyen uluslararası bir kuruluș olan Hackernest’ın operasyonunu üstlendiği, aynı anda 65’den fazla șehirde eș zamanlı olarak düzenlenen, dünyanın en büyük hackathonlarından biridir. – fishackathonizmir.com

 

Neler yaptık ? 

Öncelikle çok güzel bir etkinlikti. Emeği geçen herkesin eline sağlık. Bu etkinliğe Adroit Androids takımından arkadaşım olan Nehir ile beraber katıldık. Etkinlik “Dokuz Eylül Üniversitesi – Deniz Bilimleri Fakültesi” nde gerçekleşti. Diğer hackathonlardan farklı olarak bize üzerinde çalışmamız gereken araştırmacıların , bilim insanlarının , balıkçıların vb. günlük hayatta karşılaştığı vakalar verildi. Bu vakalardan bir tanesi zooplankton adı verilen canlıların araştırılması ve analizi üzerineydi. Biraz zor bir alan olduğunun farkındaydık ve bu konu hakkında hiçbir fikrimiz yoktu.

Mikroskoptan anlık olarak gelen zooplankton görüntüleri
Mikroskoptan anlık olarak gelen zooplankton görüntüleri

Daha sonradan orada bulunan ve zooplankton üzerine araştırmalar , analizler yapan Şengül Beşiktepe‘ye danıştık. Bizi zooplanktonlar üzerine araştırma yaptıkları labaratuvara götürdü ve orada kullandıkları yazılımları , nasıl analizler yaptıklarını gösterdi. Normalde zooplanktonları tek tek mikroskop üzerinden bulup , türünü tespit edip , biyokütlesini hesaplıyorlardı. Bütün bunları manuel olarak yapıyor ve uzun zaman sürüyordu

 

 

 

 

Deep Learning algoritması ile biz bu canlıları daha hızlı ayırt edebileceğimizi düşündük. Bunun yanında zooplanktonların biyokütle , uzunlukları , sayıları vb gibi parametreleri yazılımımız üzerinden otomatik olarak hesaplamayı hedefledik. Fakat bunları yapabilmek için bir çok zorluk vardı. Ama yapmak için de birçok nedenimiz vardı. Çalıştığımız labaratuvardaki bütün işleri manuel yapmayı sağlayan yazılım yurt dışında 75 bin dolardan satılıyormuş. Fakat İstanbul Teknik Üniversitesinde benzer bir yazılım geliştirilmiş. Yazılım oradan daha ucuza temin edilmiş.

Karışık bir biçimde bir çok tür bulunduran zooplanktonlar
Karışık bir biçimde bir çok tür bulunduran zooplanktonlar

Bizim yapacağımız çalışma hem türlerine ayıracak hem de birçok parametreyi hesaplayacak. Hiç beklemeden çalışmaya başladık. Şengül Beşiktepe hocamız bize belirli datasetleri verdi ve gece labaratuvarı kullanmamız için izin verdi.İlk hedefimiz sol tarafta gördüğünüz karışık zooplanktonların türlerini belirlemekti. Fakat elimizde bulunan datasetler çok kısıtlı ve internete  bulabileceğimiz hiçbir  dataset yok. Elimizde her türden ortalama 5-6 dataset var ve çok az. Yazdığımız algoritmamız gelen görüntüleri diğer datasetleri ile karşılaştırdığı için ne kadar çok dataseti o kadar fazla kesin sonuç oluyor. Tam 3 kere deep learning algoritmamızı baştan yazdık. 3 denememizde başarısız olduk.  Yazdığımız bütün algoritmalar tek tek bütün canlıları tanıyor , fakat bir resimde birden fazla zooplankton olunca ayırt edemiyordu. Gece Nehir ile beraber kolları sıvadık ve labaratuvara gidip daha fazla dataseti toplamak için mikroskop başına oturduk.

 

Labaratuvar'da dataseti topluyoruz. :)
Labaratuvar’da dataseti topluyoruz. 🙂

Burada kendi başımıza başımızda hiçbir profesyonel bulunmadan profesyonel mikroskop kullandık ve zooplanktonları analiz ettik. 10’larca dataseti topladık. Geliştirdiğimiz algoritmamız daha başarılı sonuçlar vermeye başladı. Şimdi başımızda daha büyük bir problem var. Zooplanktonlarının boylarının ve biyokütlelerinin hesaplanması. Biyokütleyi hesaplayabilmek için boylarını hesaplamamız gerekiyor. Boyunu hesaplayabilmemiz için araya mikroskop ile kaç kat büyütüldüğü gibi farklı parametreler giriyor. Aynı zamanda zooplanktonların dikenlerinin , antenlerinin hesaplanmaması gerekiyor. Bütün bunları yazılımın yapması çok zor.  İlk önce dikenleri , antenleri vb. küçük ayrıntıları yok etmeyi planladık. Bunun için de mikroskoptan gelecek görüntüleri HSV formatına çevirip küçük dikenleri yok etmeyi planladık. Yeter mi ? yetmez çünkü her diken , her anten veya her çıkıntı bütün zooplanktonlarda aynı şekilde değil. Bundan dolayı bazı resimlerde düzgün bir şekilde siliniyor,  bazı resimlerde silinmiyor.  Daha kesin sonuç alabilmek için HSV formatından

HSV formatına dönüştürülmüş bir calanoids türünde zooplankton

gelen verileri konturlemek gibi bir düşüncede bulunduk. Konturlemek bizim için hem küçük çıkıntıları yok edecek hem de daha düz bir görüntü verecek.  Gerçekten de işe yaradı. Bir yazılımda tam 3 farklı görüntü işleme yaptık. Geriye uzunluk hesaplama kaldı. Bir görsel üzerinden uzunluğu hesaplamayı başarabildiğimizde biyokütlesine ulaşabilecektik. Bunu manuel kullandıkları yazılımdan el ile seçip uzunluğunu hesaplayabiliyorlardı. Bizim yazılımımız konturlerken farklı renklere ayırdığı için aynı rengin en uzak mesafelerinden  bir birine çizgi çizerek kesişmesini sağlıyor ve bu uzaklık arasındaki mesafeyi bize pixel uzunluğu olarak veriyordu. Biz de bu pixel verilerini mikrometreye çevirdik. 1 mikrometre [μm] = 0.00377957517575025 pixel ‘e denk geliyor. Bu bilgiden yola çıkarak pixeli mikrometreye dönüştürerek mikroskobun kaç mikrometre zoom yaptığı gibi verileri alarak hesaplamayı başardık. Geriye kalan diğer parametreleri çok basit şekilde hesapladık.

 

Yaptığımız yazılım araştırmacıların saatlerce uğraşarak analiz ettiği 10-15 zooplanktondan yüzlerce fazlasını dakikalar içerisinde analiz edebiliyor. Araştırmacılar eğer yazılımımızın yaptığı bir hatayı fark ederse el ile düzeltebiliyor. Aynı zamanda biz bunu sadece fotoğraflar olarak değil mikroskopların kameralarından anlık olarak gelebilecek görüntüleri de hesaplayabilecek şekilde geliştirmeye çalışıyoruz. Şu anda sadece anlık olan gelen görüntülerden sayısını hesaplayabiliyor. Deep learning algoritmamızda gelen görüntüleri veri tabanında bulunan datasetleri ile karşılaştırdığı için az da olsa bekleme süresi var. bundan dolayı anlık olarak çalıştırmak oldukça zor. Hackathon süremiz 36 saat olduğu için buradan yürümek yerine yazılımımızda bulunan diğer eksikliklere yoğunlaştık.

 

 

Back-end olarak python , Front-end olarak Visual Studio kullandık.

Şimdi FISHACKATHON global de ülkemizi temsil edeceğiz. 🙂

(Etkinlikte yaptığımız sunum dosyasına buradan ulaşabilirsiniz : https://docs.google.com/presentation/d/1S564Cy-1ck75v4cEV7hn2oW3QlkrPLO53wDB-CsfOLs/edit#slide=id.g30ef69b76f_0_117 )

Tarih:EtkinliklerProjelerim

3 Yorum

  1. TARIK BÜYÜKÖZTEKİN TARIK BÜYÜKÖZTEKİN

    Emeğinize sağlık umarım daha büyük platformlarda daha ileri çalışmalarla devam edersiniz 🖐🏽

  2. Merve Köse Merve Köse

    Emeğinize sağlık harika bir çalışma olmuş sizinle gurur duyuyoruz . Başarılarınizin devamini dilerim .😊

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir