Bitirme Projesi 1 : İlk Doküman

Hazırlıkla beraber, 4 yılın ardından son sınıf olmanın vermiş olduğu profesyonel öğrencilik unvanını hak edip etmediğimi bilmiyorum doğrusu. Ama aktif öğrencilikten emekli olmak üzereyim. Aşağı yukarı on beş yıldır öğrenciyim ve emekli olmam için yapmam gereken tek şey iyi bir bitirme projesine sahip olmak.

Sanırım ben iyi bir bitirme projesine sahibim.  

Projeyi tanımlamak namına oluşturduğum ilk dokumanı paylaşmak istiyorum.


Catch Me If You Can

Konu Başlığı :

Kapalı bir alanda insan tespit ve yeniden tanıma sistemi

Amaç :

Kapalı bir alanda bir kamera tarafından görüntülenmiş olan bir insanın sisteme bağlı başka bir kamera tarafından görüntülenmesi durumunda bu kişinin tanınması işlemini gerçekleştirmek amaçlanmaktadır. Bu amaç doğrultusunda görüntü işleme teknikleri kullanılarak insanların tespiti ve insanları birbirinden ayırarak işaretlenmesi gerçekleştirilecektir. Bu amaçlara ulaşıldıktan sonra sistemden elde edilen veriler ile sistem eğitilerek daha doğru sonuçlar elde etmek hedeflenmektedir.

Yapılacak İşlemler :

1.       Okuldaki mevcut kamera sisteminin öğrenilmesi:
Bu sistemin nasıl çalıştığı ve kontrol edildiği öğrenilerek projede kullanılmak üzere kameralardan veri toplamak.

2.       Uygulamanın geliştirilmesi:
Uygulama geliştirerek kameralardan alınan verileri ve proje amacına uygun şekilde işlenmiş olan verileri kullanıcı ile paylaşmak.

a.       İnsanları tanıyarak diğer olgulardan ayırmak:
Kamera tarafından yakalanan olgunun insan olup olmadığını tespit etme işlemi gerçekleştirilecektir.

b.       İnsanları birbirinden ayırmak ve etiketlemek:
Bu aşamada kişileri birbirinden ayırmak amacıyla farklı algoritmalar geliştirilebilir. Kişilik analizi yaparak oluşturulmuş yeni profiller birbirinden ayırmak için etiketlenecektir. Kişileri birbirinden ayırmak için oluşturulacak profilleri belirlemek amacıyla insanları fiziksel olarak birbirinden ayıran bazı nitelikler kullanılacaktır. Bu algoritmaların sağlanması için aşağıda belirtilen nitelikler kullanılabilir;
i.         Eğer kişinin yüzü yeterince net bir şekilde görüntülenmişse yüz hatları
ii.       (Yeterince güvenilir bir nitelik olmasa da) kişinin boyu, giyimi ve buna benzer nitelikleri
iii.     Kişinin yürüyüş biçimini anlamlandırarak oluşturulacak özellikler (Bu nitelendirme yönteminin uygulanabilirliği hakkında fikir sahibi değilim. Ancak araştırmalarım sonucunda insanların yürüyüş biçimlerinin büyük oranda birbirinden farklı olduğunu öğrendim.)

c.       Uygulamayı en az iki kamera ile gerçeklemek:
Bu aşamada kişilerin başka kameralarda görüntülenmesi durumuna karşılık uygulamanın oluşturacağı tepki şekillendirilecektir. Bu aşama projenin ana hattını oluşturmaktadır.

d.       Etiketlenen insanlar başka bir kamera tarafından görüntülendiğinde işaretlemek:
Daha önce karşılaşılmış verilerle ve bu verilerden elde edilen bilgilerle karşılaştırılarak daha önce sistem tarafından görüntülenmiş bir profil sergileyen insanlar işaretlenecektir. Böylece yeninden görüntülenmiş olan profiller eskisi ile eşleştirilmiş olacaktır.

e.       Kullanıcının seçmiş olduğu bir resimdeki kişi farklı kameralarda var ise o kişiyi tanımak:
Yukarıdaki kısımlar gerçekleştirildikten sonra kullanıcı tarafından seçilmiş bir kişinin farklı kameralar tarafından görüntülenip görüntülenmediği tespit edilip belirtilecektir.

3.       Oluşturulan sistem kullanılarak veri toplanması ve sistemin eğitilmesi:
Bu aşamada; sistemin daha sağlıklı ve doğru sonuçlar üretmesini sağlamak amacıyla veri toplamak ve sisteme bu veriyi kullanarak yeni çıkarımlarda bulunabilme yeteneği kazandırmak amaçlanır.
a.       Oluşturulmuş olan sistemin eğitimi için veri toplamak.
b.       Algoritma seçerek gerçeklemek ve sistemi eğitmek.

Kullanılacak Yapılar :


1.       Python: Kullanılacak olan programlama dili
2.       OpenCV: Görüntü işleme için kullanılacak olan kütüphane
3.       Keras: Derin öğrenme için kullanılacak olan kütüphane


Yararlanılacak Kaynaklar:

1.       Computer Vision: Algorithms and Applications by Richard Szeliski
2.       Deep Learning by Ian GoodFellow, Yoshua Bengio and Aaron Courville
3.       Python Documentations (https://www.python.org/doc/ )
4.       OpenCV Documentation (http://opencv.org/ )
5.       Keras Documentation (https://keras.io/ )


Yorumlar

Bu blogdaki popüler yayınlar

İşletim Sistemleri Günlüğüm-2 : PROCESS DURUMLARI (PROCESS STATES)

Bilgem Çakır ile Röportaj (Deneyim Mühim…)

Bitirme Projesi 5 - Rapor - Önceki Çalışmalar, Metot