2. Amaçlar
• Kameradan gelen data ile isim ve yüzleri öğrenip depolaması,
• El ve kol hareketlerini tanıyıp tepki verebilecek olması,
• Hafızaya atılan yüzleri tanıyabilmesi ve selamlaması,
• İnsanlarla etkileşime geçebilmesi ve tanıyamadığı kişilerin isimlerini
sorabilmesi,
• Küçük yer tarifleri yapabilmesi,
• Farklı diller ile etkileşimli olabilmesi...
3. https://github.com/patilnabhi/tbotnav
• Bu github sayfasında kullanacağımız kodların temelleri
yatıyor.Özellikle:
•Hand Gesture Recognition:
• fingers_recog.py - this node takes a input image and outputs an image with detected number of fingers
• get_hand_gestures.py - this node subscribes to a depth image /asus/depth/image_raw, processes the image using finger_recog.py and publishes the detected
number of fingers at the topic num_fingers. This node also outputs an image window showing the depth feed with hand and detected number of fingers.
• Face Recognition:
• train_faces.py - this node subscribes to a RGB image stream from webcam, detects faces, captures faces for training (using Fisherfaces algorithm) and saves the
trained data in a xml file, to be used in face recognition.
• face_recog.py - this node subscribes to RGB image stream from webcam, loads the trained data file from above and performs face recognition.
• gui_face.py - this node launches a simple GUI making it easier for users to input their name, captures their faces, train the data and finally run the recognition API
Kısmı işimize yarayacaktır.
4. Turtle Robot
• Bu open source bir robot projesi.Çoğu şeyi yapan, kendine ait
simülasyonu olan ve donanım için de bir guide bulunduran bir çok
amaçlı proje.
• Genel amacı kahve getirip götürmek gibi basit işlerin
otomatikleştirilmesi ve robotların yaygınlaştırılması.
• Yapımı iyi tarif edilmiş ve yeterli kişi sayısı sağlanırsa benzeri ve daha
iyisi ikinci dönem içerisinde finallerden evvel ve ya yaz stajından sonra
dahi yapılıp bitirilebilir.
• Projemizde bunun kullandığı birkaç fonksiyon ve kod çok güzel şekilde
alınabilir.
6. Eigenfaces for Recognition- Matthew Turk
• Yüz tanıma için öncü bir makale, alacağımız kodlar bu makale ve
çevreden bilgili kişilerle edineceğimiz bilgilerle ilerleyeceğiz.Eigenfaces
denilen yüzlerin ayırt edici özelliğini 3 boyuta gerek kalmadan
kullanabilmesi hoş ve başarıyı arttıran bir detay olacaktır.
• Şayet yapılması boyumuzu aşarsa klasik opencv ile de gidilebilir ancak
yüz tanıma olasılığını düşürme ihtimali bulunuyor.(Bununla ilgili birkaç
uzmana danışılacak.)
7. Neden eigenfaces makalesi?
• Oldukça basit bir anlatımla gerekli olan matematiksel formüller
verilmiş durumda.Bunlarla güzel bir model eğitilebilir ve yapay zekaya
giriş için de etkili bir nokta olacaktır.
• Ancak bu ikinci dönemin başında yetişecek bir hız olmayacaktır
doalyısıyla daha basit yöntem olan hazır fonksiyon ve modellerle
ilerleyeceğiz başta.
• Muhtemelen verdiğim github sayfası bunun için yeterli içerikte bilgiyi
içeriyor.
8. İsimler üzerine:
• Ses ile ilgili etkileşimli bir modül kurulacak olsa da isimlerin birbirine
yakın, değişken doğası ve aynı isimlerin bile farklı telaffuzları dolayısı
ile isimlerin bir kullanıcı arayüzüne girilmesi mantıklı olacaktır.
• Bu işler için hazır kullanılan bir arayüzü kullanabiliriz.Örneğin:
• https://github.com/phelix/nameGUI
• Kendi arayüzümüzü yazmak zor değil ancak öğrenmesi zaman
alabileceğinden hazır kullanmanın mantıklı olduğunu
düşünüyorum.Halihazırda çok daha fazlasını içeren arayüzler
bulunmakta.
10. Mimik ve duygu tanımlaması
• İyi bir data set ihtiyacımız var.(Örnek data set verilmiştir. Yapay veriye
pek açık değil.)
• Hazır bir model eğiteceğiz, Model emotional recognition üzerine
olabilir.(Örnek model verilmiştir.)
• Üzerine uzmanlığı olan birisine sahip değiliz.Bu konuyu detaylı bizzat
araştıracağım.
• Emotionel recognition için gerekli tek şey mimik değil aynı zamanda
ses özellikleri olacağından, iki farklı data set ihtiyacı doğuyor.Buna
çoklu model gerekli olacak.Hazırda bulunan örnekler var fakat ne
kadar çalıştıkları denedikten sonra görülecek.
11. Jest tanımlaması
• Yapacağımız ilk prototipte olma olasılığı daha yüksek bir özellik
olacaktır.
• Hazır birçok model ve oldukça fazla dataset var.
• Algılanan jestlere göre küçük hareketler yapması ya da komik cümleler
söylemesi rahatça programlanabilir.
12. Üçüncü amaç:Etkileşim
• En çok kodun gerekli olacağı bölme burası. Belirli cümleleri anlama ve
TTS algoritması da ayrıca gerekli olacak.
• İki farklı dil modu yapılacak.İlk prototip için ingilizce ile
başlanabilir.(Hazır data set ve model bulma açısından.)
• Kendine özgü bir karakteri olması sağlanabilir ve hatta direkt GPT API
ları kullanılarak uzun sohbetler gerçekleştirebilir.
• Tanımadığı kişilerin isimlerini sordurmakla işe başlar sonrasında daha
komplike modeller üretiriz.
13. Dördüncü amaç:Navigasyon
• Bu konu oldukça detaylandırılabilir ancak gerekli olacağını
düşünmüyorum.
• Kendi hazırladığımız yönergelerle hangi sınıfın hangi katın neresinde
olduğu iki boyutlu bir harita üzerinden oldukça rahat tarif edilebilir.
• Güzel görünmesi için frontend gerekli ancak ilk prototip için hiç lüzum
yok.
14. Farklı diller ile etkileşim adına
• Gpt bunu çoktan başardı.Gelen herkes kendi dilinde konuşup iletişim
kurabilir.Bunun işin içinden API kullanarak basit bir tutorial ile
çıkabiliriz.
• Ancak kendimiz geliştirmek istersek özellikle data bakımından çok
eksiğimiz olacaktır ve bununla özellikle ilgilenmek isteyen birileri
gerekecektir.