• Sonuç bulunamadı

TEKNOFEST İSTANBUL HAVACILIK, UZAY VE TEKNOLOJİ FESTİVALİ YAPAY ZEKA YARIŞMASI KRİTİK TASARIM RAPORU. AYASOFT Takımı

N/A
N/A
Protected

Academic year: 2022

Share "TEKNOFEST İSTANBUL HAVACILIK, UZAY VE TEKNOLOJİ FESTİVALİ YAPAY ZEKA YARIŞMASI KRİTİK TASARIM RAPORU. AYASOFT Takımı"

Copied!
6
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

TEKNOFEST İSTANBUL

HAVACILIK, UZAY VE TEKNOLOJİ FESTİVALİ

YAPAY ZEKA YARIŞMASI KRİTİK TASARIM RAPORU

AYASOFT Takımı

TAKIM ÜYELERİ: Mücahit ARDUÇ, Hüseyin Burak KURT, Melih Gazi ÜLKER, Emrullah ÇELİK, Askar BOZCAN, Mehmet Emir ARSLAN, Mehmet ŞANSAL,

Yusuf İslam HAMAMCI

(2)

İçindekiler

1. Takım Şeması ... 3

2. Proje Mevcut Durum Değerlendirmesi ... 3

3. Algoritmalar ve Sistem Mimarisi ... 4

3.1 Algoritmalar ... 4

3.2 Sistem Mimarisi ... 4

4. Özgünlük ... 5

5. Sonuçlar ve İnceleme ... 5

6. Kaynakça ... 6

(3)

1. Takım Şeması

Ayasoft AI Takımı bir koordinatör, bir yardımcı koordinatör ve 6 üye olmak üzere toplam sekiz kişiden müteşekkildir. Koordinatörler Makine ve Elektrik Elektronik

mühendisliklerinden lisans mezunu olup hali hazırda çeşitli savunma sanayi şirketlerinde mühendis olarak çalışmaktadırlar. Kalan 5 üye ODTÜ’de lisans eğitimine Elektrik-Elektronik Mühendisliği alanında devam etmektedir. Diğer 1 üye ise ODTÜ KKK’de Bilgisayar

Mühendisliğine devam etmekte olup üniversitedeki bir toplantı aracılığıyla takımımıza yeni katılmıştır. Takım içindeki tüm üyeler şartnamede belirtilen, önceden kaydedilmiş görüntüler üzerinden yapılacak nesne tespiti için yazılması planlanan algoritmalar üzerinde çalışmaktadır.

Koordinatörler, organizasyonu yönlendirirken aynı zamanda elde ettikleri tecrübelerle alt dönemdeki üyelere kendilerini geliştirme hususunda yardımcı olmaktadırlar.

Mücahit Arduç (Koordinatör) BOUN Elektrik - Elektronik Müh. Mezun

Burak Kurt (Yardımcı Koordinatör) İTÜ Makine Müh. Mezun

Melih Gazi Ülker ODTÜ Elektrik - Elektronik Müh 1. Sınıf

Yusuf İslam Hamamcı ODTÜ Elektrik - Elektronik Müh 1. Sınıf

Mehmet Şansal ODTÜ Elektrik - Elektronik Müh 1. Sınıf

Mehmet Emir Arslan ODTÜ Elektrik - Elektronik Müh 1. Sınıf

Emrullah Çelik ODTÜ Elektrik - Elektronik Müh 1. Sınıf

Askar Bozcan ODTÜ KKK Bilgisayar Müh. 1. Sınıf

2. Proje Mevcut Durum Değerlendirmesi

Yapay Zeka sistemi tasarımımız Ön Tasarım Raporunda genel hatlarıyla düşünülmüş, birkaç alternatif göz önünde bulundurularak değerlendirilmiş ve pek ayrıntıya inilmemiştir.

Kritik Tasarım Raporu sürecinde, alternatif algoritmalar, kendi oluşturduğumuz modeller, eğitim ve test donanımları denenmiş, performansa göre ne kullanılacağına karar verilmiş, ayrıntılar netleştirilmiştir.

Öncelikle, Ön Tasarım Raporunda iki alternatif olarak sunulan algoritmalardan, YOLO’nun kullanılmasına karar verilmiştir. Bu kararda YOLO’nun kurulum, kullanım ve modül implementasyon kolaylığı etkili olmuştur. Yalnız, YOLO’nun versiyonu Ön Tasarım raporundakinden farklı olarak TinyYOLO yerine YOLO V3[1] versiyonu olacaktır. Çünkü yapılan denemelerden YOLO V3’ün extra SPP[2] modülü ile beraber kullanıldığında nesne tespitinde TinyYOLO’ya göre daha başarılı olduğu gözlemlenmiştir. SSD algoritması üzerinde de yine çalışmalar yapılmaktadır, yedek algoritma olarak tutulmaktadır.

Nesne Tespitinde kullanılacak modelin nasıl oluşturulacağı Ön Tasarım Raporunda belirtilmemişti. Süreç içerisinde bu konu da ele alındı ve açık kaynaklardan elde edilen farklı veri setleri YOLO’da çeşitli metodlar ve değerler ile eğitildi, modeller oluşturuldu.

Oluşturulan modeller nesne tespitinde denenerek en başarılı olanları seçildi. Nesne tespitinde yaşanan birtakım sıkıntıları halletmek, başarı oranını daha da yükseğe çıkarmak için özgün stratejiler geliştirildi. Geliştirme aşaması devam etmektedir.

(4)

Son olarak, yarışma esnasında internete bağlanılmayacağından dolayı test donanımı olarak Ön Tasarım Raporunda belirtililen bulut donanım hizmeti kullanılmaktan vazgeçildi. NVIDIA 1050 GTX ve 1060 GTX GPU’larına sahip iki bilgisayarımız performans ve hız açısından yeterli geldiğinden bunlar ile yarışmaya girilmeye karar verildi.

3. Algoritmalar ve Sistem Mimarisi

3.1 Algoritmalar

Yapılan testler ve alınan sonuçlar doğrultusunda Yolo V3 algoritması kullanılması kararlaştırılmıştır.

YOLO Algoritması; YOLO derin öğrenme (deep learning) destekli bir nesne tespit algoritmasıdır. YOLO nesne tespiti için üç aşamalı bir payplayn (pipeline) kullanır. Bu aşamalar şunlardır; Resmi yeniden boyutlandırma, resmi nöron ağıyla boyutlandırma, analiz edilmiş görüntüye “non-max suppression” işlemi uygulama. Resim ilk önce 640x640

boyutlarında (ya da 32’nin herhangi bir katı) olacak şekilde yeniden boyutlandırılır. Daha sonra yeniden boyutlandırılan resim nöron ağı tarafından nesne tespiti için analiz edilir. Bu aşamada kullanılan sinir ağı mimari olarak 24 evrişimsel katmandan (convolutional layer) ve 2 tam bağlantılı katmandan (fully connected layer) oluşur. Evrişimsel katmanlar öznitelik

çıkarımı yaparken, tam bağlantılı katmanlar çıktı (output) ihtimallerini ve sınırlayıcı kutu koordinatlarını tahmin eder. En son aşamada işlenmiş görüntüde algoritmanın birden fazla kez algıladığı ve bu yüzden birden fazla kez sınırlayıcı kutu ile çevrelediği nesne var mı diye kontrol edilir, eğer varsa bu kutulardan en uygunu seçilir ve diğerleri silinir. Bu işleme

“nonmax suppression” denir.

3.2 Sistem Mimarisi

Ağ katman sayısı 24+2 ‘dir. Ağ metodu olarak Evrişimli sinir ağları (Convolutional Neural Network) kullanır. Derin öğrenme metodunu kullanır. Aktivasyon fonksiyonu ReLU’dur.

SPP Modülü:

(5)

4. Özgünlük

Yenilikler:

Object detection modelleri genelde küçük objeleri bulmakta zorlanıyor. O yüzden geliştirilen farklı farklı çözümler mevcut. Bunlardan biri YOLOv3 için kullandığımız SPP modülüdür (Spatial Pyramid Pooling)[2]. SPP modülü, Yolo’nun evrişimsel (convolutional) katmanlarından sonra üretilen öznitelikleri (feature) farklı ölçeklerde toplayarak (max pooling ile), obje algılayan katmanlara devredilir.

Modeli test ederken, bazen false positive durumu olduğunu fark ettik. Fakat bu false positivelerin boyutu normal objelerden çok daha küçüktü. Örneğin, yerdeki bir taşı insan gibi algılama durumu mevcuttu. Bunu önlemek için bir “alpha” hiperparametresi eklendi. Eğer [(algılanan objenin boyutu)/(görüntünün boyutu) < alpha] ise, o zaman o obje algılanmış sayılmaz. Test videolarında alpha için bulunan en iyi değer %0.045 olarak tespit edilmiştir.

Nesnelerin algılanmasında kareler(frame) arasında bazen oluşan tespit edememe (false negative) sorununun çözümü için Kalman filtresinin kullanılmasına karar verildi.

Kalman filtresi yardımıyla nesnenin önceki karelerdeki hareket bilgisi kullanılarak nesne tespit edilemeyen karelerdeki nesne pozisyonunun tahmin edilmesi planlandı.

Kalman filtresinin istenen sonucu vermemesi durumunda, Kalman filtresine alternatif metod olarak, aradaki yanlış negatif kareleri doldurmak için objelerin pozisyonunun gelecek kareler ve geçmiş karelerdeki pozisyonun ortalaması alınarak

hesaplanabilineceği düşünüldü.

KTR’den sonra yapılacaklar:

Model VisDrone veriseti üzerinde eğitildi, fakat VisDrone’da insan dağılımı Teknofest verisindeki dağılımdan daha sık olduğu görüldü. O nedenle farklı kaynaklardan ceri toplanıp (Teknofest verisi dahil) model finetune edilecektir.

Modele verilen görüntü boyutu 800x800’e yükseltilebilir.

5. Sonuçlar ve İnceleme

Ön tasarım raporunda belirlenen SSD[3] ve YOLO[4] algoritmaları eldeki veri setleri ile kullanılmış; kurulum, kullanım ve ekstra modül kolay ulaşılabilirliği sayesinde YOLOv3 kullanımına karar verilmiştir.

Eğitim ve test donanımı olarak bulut donanım hizmeti kullanılmasına karar verilmiş, Google Colab[5] ve Amazon AWS üzerinde durularak, tamamen ücretsiz olarak Nvidia Tesla k80 GPU desteği sağlayan Google Colab eğitim için tercih edilmiştir. Fakat yarışma anında internet erişimi olmayacağı için takım bilgisayarlarımızda test aşamasında kullanılmıştır.

(6)

Yapılan testler sonucunda kullanılan COCO verisetinin drone üzerinden çekilmiş görüntüler için eksik kaldığı tespit edilmiştir. Bunun üzerine yapılan araştırmalar sonucu VisDrone[6] verisetinin bu tip durumlar için uygun olduğu tespit edilmiş ve modelimiz VisDrone veriseti ile eğitilmiştir.

Modelimiz, Teknofest ekibi tarafından sağlanan verilerdeki ilk videoda test edildiğinde (şartnamede belirtilen ölçütlere göre hesaplandığında) toplam puanın 3152 olduğu tespit edilmiştir. Ayrıca ortalama precision değeri %85.5 ve recall değeri %75.4 olarak

hesaplanmıştır. Recall değeri düşük olduğundan ötürü KTR’den sonra toplanan fazladan veri ile düzeltilmeye çalışılacaktır.

Yarışma örnek videonun gelmesi ve yeni veriseti ile yapılan testler sonucu 100-150 metre irtifadan insanların tespiti beklenirken, nesne tespit modelleri bunun için yetersiz kaldığı gözlemlendi. Yolo V3 için üretilmiş SPP (Spatial Pyramid Pooling) modülü çok küçük

gözüken nesnelerin tespitini sağlayarak problemin üstesinden geldi.

Eldeki veriseti T3 Vakfı tarafından paylaşılan ve soru cevap grubunda belirtildiği üzere paylaşılacak olan yeni videolar ile geliştirilerek daha yüksek performanslı bir kullanım

sağlanacak.

6. Kaynakça

1. Redmon, J.; Farhadi, A. (2018) Yolov3: An Incremental Improvement. W. Liu et al.,

“SSD: Single Shot MultiBox Detector,” in 2016 European Conference on Computer Vision (ECCV), Amsterdam, The Netherlands, 2016, vol. 9905, pp. 21–37.

2. Huang, Zhanchao & Wang, Jianlin. (2019). DC-SPP-YOLO: Dense Connection and Spatial Pyramid Pooling Based YOLO for Object Detection.

3. Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng- Yang Fu, and Alexander C. Berg. SSD: Single shot multibox detector. In ECCV, 2016 4. Redmon, Joseph, and Ali Farhadi. "YOLO9000: better, faster, stronger." In

Proceedings of the IEEE conference on computer vision and pattern recognition, pp.

7263-7271. 2017. https://pjreddie.com/media/files/papers/YOLOv3.pdf 5. Google. Google Colabs, https://colab.research.google.com/

6. Visdrone Dataset, http://aiskyeye.com/

Referanslar

Benzer Belgeler

Hava Soğutma Sistemi Hava+Sıvı Soğutma Kara Elektrik Motor Gücü 120 kW Kara Sürüş Maksimum Hız 90 km/h.. Kara Sürüş Süresi

Geçen süre boyunca tasarladığımız planda nesne tespitini insan ve araç diye ayırmakla kalmayıp bu nesneleri de alt nesne gruplarına bölerek daha doğru sonuçlar elde

Bu gözlemler ışığında bir sonraki aşamaya kadar; daha derin (katman sayısı fazla) modellerin geliştirilmesiyle model tahmin performansının yükseltilmesi,

Sözü edilen bu noktalar; eğitim ve test verisinin ayrılması aşamasında gerçekleştirilen oran farklılıkları, verinin ayrıldığı sınıf sayısı, modelin eğitimi

Araç tam otonom olup, karadaki seyir halinde trafik ışıklarını, yayaları ve diğer araçları algılaması, havada ise iniş ve kalkış için gerekli yolcu

Nesne tanıma modellerinin ilk etaptaki genelleme kabiliyetini görmek adına eğitim kümesi sadece komite tarafından verilen veri ile oluşturulmuş, test verisine ise

Elde edilen sonuca göre motor çıkış gücü ile helikopterin gerekli toplam gücü için çizilen iki grafik 400 km/sa’lik hız değerinden daha büyük bir

Aracın hava itki motorları, motor sürücüleri ve kontrol kartları sıvı soğutma sistemi ile soğutu- lurken; kara motorları hava soğutma sistemi ile soğutulacaktır.. Aracın