İİTME ENGELLİLER İÇİN EL HAREKETLERİNİ SES VE YAZIYA ...
Transcript of İİTME ENGELLİLER İÇİN EL HAREKETLERİNİ SES VE YAZIYA ...
TC.
HARRAN ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
BİTİRME PROJESİ ÖNERİSİ YAZILIM TASARIM RAPORU
İŞİTME ENGELLİLER İÇİN EL
HAREKETLERİNİ SES VE YAZIYA ÇEVİREN
UYGULAMA
HAZIRLAYAN
Mehmet Emin BEYAZBAŞ
Muhammed Kasım KEPENÇ
Barış ÖZ
DANIŞMAN
Ögr.Gör. Umut KURAN
Software Requirements Specification Report
1 Giriş
1.1 Problem Tanımı
Günlük hayatta işitme engelliler için iletişim olanağı çok zor olduğundan insanların onlarla
iletişime geçmesi çok zor oluyor. Onların da kendini anlatması ve bizim de onları anlamama
sorunu ortaya çıkıyor. Bir başka problemde kamu kurum ve kuruluşlarında yetersiz dil
bilgisinde kaynaklı anlaşamama, hiçbir resmi daire ve doktorda dertlerini anlatamadığı için
ailelerinden birisine yarı bağımlı oluyorlar. Bu da onlar için yaşamı zorlaştırıyor.
1.2 Amaç
Projenin amacı ise işitme engelli bireyleri günlük hayatta işaret dili bilmeyen insanlarla ağır
maliyetler olmadan uygulama aracılığıyla iletişim kurabilme olanağı sağlayacaktır. Böylelikle
insanlar arasındaki engel ortadan kalkmış olacaktır. Uygulama sayesinde karşılıklı iletişim
sağlanabilecektir.
1.3 Kapsam
Ürün işitme engelliler için işaret dilini ses ve yazıya çevirme uygulamasıdır.
Bu rapor “İşitme Engelliler İçin Ses ve Yazı ” projesinin yazılım gereksinimleri ve tüm girdi-
çıktıları ile ilgili ayrıntılı bilgileri içeren bir belgedir. Bu proje işitme engelli insanlar ve
onlarla iletişime geçen soysal hayattaki insanlar için çözüm imkanı sunacaktır.
1.4 Kullanıcı ve Literatür Araştırması
Potansiyel kullanıcılarımız işitme engelli veya işaret dilini öğrenmek isteyen
bireyler ve onlarla iletişime geçen bireyler.
Daha önceki çalışmalarda işitme engelliler için sensör kullanılarak eldiven yapılmıştır. Ancak
bu çok maliyetli ve yanında taşıması zor olduğundan dolayı pek tercih edilmemiştir.
1.5 Tanımlar ve Kısaltmalar
TERM DESCRIPTION
İE İşitme Engelliler (Doğuştan veya sonradan olan problemler nedeniyle
işitme duyarlılığın da meydana gelen azalmadır.)
SRS Software Requirements Specification.
Class Diagram UML Sınıf Diyagramı projemizdeki sınıfların, özelliklerinin ve birbirleri
arasındaki ilişkilerin gösterilmesi için kullanılır.
Use Case Diagram Use Case diyagramları Actors, Use Case ve Use Case 'ler arasındaki
ilişkilerden oluşmaktaır.
Sequence Diagram
İşlemlerin birbiri ve hangi sırada nasıl çalıştığını gösteren bir etkileşim
diyagramı
Matlab Çok paradigmalı sayısal hesaplama yazılımı ve dördüncü programlama dili
User Herhangi bir şeyi, özellikle bilgisayar ve onunla ilgili şeyleri kullanan
kimse.
Öğrenme Belli durumlar ve sorunlar karşısında tepki ve davranış oluşturma,
gerektiğinde bunları değiştirip yenilerini edinebilme yeteneği.
Android Stduio Android uygulamalarının geliştirildiği üst seviyeye sahip google tarafından
önerilen bir resmi programlama aracıdır.
LSB Alfabesi Duyma engelli kişiler tarafından kullanılan bir işaret dilinin alfabesidir.
Görüntü İşleme Dijital ortama aktarılmış görseller üzerinden ilgili ihtiyaca göre faydalı
bilgiler elde etmek için farklı teknikler ile özdeşleştirilebilen bir yöntemdir.
GUI Grafiksel bir kullanıcı arabirimi, kullanıcıların bilgisayarlarla yazmadan
daha fazla yolla programlarla etkileşimde bulunmalarını sağlayan bir
kullanıcı arabirimi türüdür.
ER Varlık - İlişki Diyagramı, bir veritabanındaki varlıklar arasındaki ilişkileri
gösteren özel bir grafiktir. ER diyagramları genellikle üç farklı bilgi türünü
temsil etmek için semboller kullanır. Kutular, varlıkları temsil etmek için
yaygın olarak kullanılır. Elmaslar normalde ilişkileri temsil etmek için
kullanılır ve ovaller özellikleri temsil etmek için kullanılır
IDE Entegre geliştirme ortamı
Yapay Sinir Ağları (YSA)
Yapay Sinir Ağları kısaca YSA olarak adlandırırsak; insan beyninin
çalışma yapısını taklit ederek geliştirilen yapay zeka tekniklerinden sadece
biridir
Dl4J Analiz ve derin öğrenme programı
Open Gl OpenGL (Open Graphics Library), Silicon Graphic Inc. tarafından
geliştirilmiş donanımın desteğini kullanarak 2D ve 3D grafikleri ekrana
çizdirmek amacıyla kullanılan bir grafik uygulama geliştirme arabirimidir
(API).
1.6 Referanslar
Türkiye Engelliler Derneği
Türkiye İşitme Engelliler Vakfı
http://tr.wikipedia.org/wiki/G%C3%B6r%C3%BCnt%C3%BC_i%C5%9Fleme
http://en.wikipedia.org/wiki/Image_processing
http://en.wikipedia.org/wiki/Digital_image_processing
http://en.wikipedia.org/wiki/Computer_vision
http://yzgrafik.ege.edu.tr/~tekrei/dosyalar/sunum/gi.pdf
1.7 Genel Bakış
Projenin konusunu seçmek
Bilgi toplamak
Bilimsel yöntem
Kontrollü deney yapmak ve sonuçları kaydetmek
Grafikler, Tablolar, Çizimler, Modeller
Yaptığını Göster
Rapor Yazma
Sunuş
Aşamalarından geçecektir
2 Genel Açıklama
Grup olarak işaret dilini ses ve yazıya çeviren yazılım geliştireceğiz. Biz , işitme
engellilerin kullandıkları işaret dilini anlık olarak ses ve yazıya çeviren yazılım programı
geliştireceğiz. Geliştireceğimiz program, işitme ve konuşma engelli kişilerin günlük
hayatlarında işaret dilini bilmeyenlerle iletişim kurmasını kolaylaştıracaktır. Kameradan
aldığımız görüntüden önce "nesne algılama" tekniği kullanarak elleri bulup, daha sonra bu el
figürlerinin "nesne sınıflandırma" tekniği kullanılarak ellerin o anki durumunun hangi
kelimeye denk geldiğini bilgisayardan öğreneceğiz. Bilgisayar görüntü işleme algoritmaları
ve derin öğrenme teknikleri ile kameradan aldıkları görüntülerde önce kullanıcının elini
algılayıp daha sonra bu elin şekline karşılık gelen harfi veya durumu seslendireceğiz.
Böylece, kamera önünde işaret dili ile konuşan kişinin ifade etmek istedikleri, uygulama
sayesinde yazılı metin haline gelecek ve sese dönüşecektir. Yazılım için gerekli veri setlerini
kullanacağız.
2.1 Ürün Perspektifi
Uygulamamız android studio kullanılarak önce matlab ortamında ve matlab üzerinde
denemeler yapılarak sistem geliştirilecek. Sistemi kurduktan sonra sistemi yapay sinir ağları
ile eğiteceğiz. Bunu nesne algılama ve sınıflandırma tekniği kullanarak işitme engelliler için
hareketi ses ve yazıya çeviren uygulama geliştirilecektir. Teknolojinin gelişmesiyle bu
yazılım daha prototip hale gelebilir
2.2 Ürünün İşlevleri
Uygulamayı başlatıyoruz
Üye ol veya giriş yapma ekranı
Giriş yapıldıktan sonra kamera açma ekranı veya LSF alfabesi eğitimi ve soruları
Kameraya girdikten sonra resim veya canlı kamera ile algılama başlayacaktır
Resim istenen durum ise ya resim seçerek ya da kameraya yönlendirerek işleme
devam edecektir.
Video istenecek ise kameraya yönlendirerek canlı olarak sesli ve yazılı yönlendirmeye
devam edecektir.
LSF alfabesi eğitimine girer ise istediği kelimeyi ya da istediği hareketi kameraya
gösterip analiz edebilir.
Çıkmak ister ise istediği şekilde uygulamadan çıkabilir.
2.3 Kısıtlamalar, Varsayımlar ve Bağımlılıklar
Kısıtlama bulunmamaktadır.
Lsf alfabesini öğrenmek isteyenler olabileceği gibi onlara rastlayanlarda mevcuttur.
Bu mevcudiyetin sonucunda uygulamayı indirebilirler.
Kamera ve internet bağlılığı olabilir. Eğer işlem telefon tarafından kolayca bilinen
alfabe ise sorun yok ama değil ise internetten ne olduğuna bakması gerekmektedir.
Uygulama kullanabilmek için kameraya erişim izni gerekmektedir. Bağımlılık olarak
nitelendirilebilir.
Donanım yetersizliği
Kullanıcı yetersizliği
Geliştirici yetersizliği
3 Özel Gereksinimler
Mevcut yazılım Android telefonlar üzerinden çalışmaktadır.
OPEN GL ve PYTHON yazılım diliyle yazılacaktır. Dl4j kütüphanesi ile yazılım analizi ve
gerekirse de derin öğrenmesini kullanacağız.
3.1 Arayüz Gereksinimleri
Tasarımda kullanıcı ara yüzüne gerek duyulmaktadır. Kullanıcı her zaman geçerli olan LSF
alfabesine uyacaktır. Ayrıca LSF alfabesi uygulamanın içinde de olacağı için her zaman
internete bağlı olarak anlık yanıt vermeye çalışacaktır.
3.2 İşlevsel Gereksinimler
Kameraya giriş çıkışların denetlenmesi,
Haberleşmenin sağlanması,
Görüntü işleme ve analiz,
3.3.1 Performans Gereksinimleri
Android işletim sistemi
512 mb Ram
Telefon kamerası
3.3.2 Tasarım kısıtlamaları
Hedefler & Amaçlar
➢ Güvenebilirlik:
Bu uygulama en düşük hata ile tasarlanacaktır ve girişler şifrelerle sağlanmış olacaktır. Mobil
cihazlar, günlük yaşamlarında insanlar için en vazgeçilmez nesnelerden biri olduğu için,
sistemimiz en az hata ile tasarlanmalıdır. Sistemin hata toleransını azaltmak için farklı tip ve
renklerde farklı el özelliklerine sahip bir veri kümesi içerecektir. Sistemin doğru çalışması
için en tehlikeli hatalar olan yanlış hatalar sistemde oluşmaz.
➢ Düşük Maliyetli
Sistemde bir web sunucu, halihazırda mobil cihaz pazarında mevcut olan mevcut teknolojilere
göre ucuz bir çözüm sunmaktadır.
➢ Sürdürülebilirlik:
Sistem kullanımdayken herhangi bir hata oluştu ve sistem kendini kurtarır ve düzgün bir
şekilde devam eder.
➢ Taşınabilirlik:
Sistem, web tabanlı bir sunucu olabilir ve android işletim sistemlerine sahip mobil cihazlara
uygulanacaktır
4 Veri modeli ve Tanımı
4.1 Verilerin Tanımı
Kamera ile gelen bilgiler uygun verilere çevirir, ilgili eylem gerçekleştirilir
4.1 Veri sözlüğü
TERM DESCRIPTION
İE İşitme Engelliler (Doğuştan veya sonradan olan problemler nedeniyle
işitme duyarlılığın da meydana gelen azalmadır.)
SRS Software Requirements Specification.
Class Diagram UML Sınıf Diyagramı projemizdeki sınıfların, özelliklerinin ve birbirleri
arasındaki ilişkilerin gösterilmesi için kullanılır.
Use Case Diagram Use Case diyagramları Actors, Use Case ve Use Case 'ler arasındaki
ilişkilerden oluşmaktaır.
Sequence Diagram
İşlemlerin birbiri ve hangi sırada nasıl çalıştığını gösteren bir etkileşim
diyagramı
Matlab Çok paradigmalı sayısal hesaplama yazılımı ve dördüncü programlama dili
User Herhangi bir şeyi, özellikle bilgisayar ve onunla ilgili şeyleri kullanan
kimse.
Öğrenme Belli durumlar ve sorunlar karşısında tepki ve davranış oluşturma,
gerektiğinde bunları değiştirip yenilerini edinebilme yeteneği.
Android Stduio Android uygulamalarının geliştirildiği üst seviyeye sahip google tarafından
önerilen bir resmi programlama aracıdır.
LSB Alfabesi Duyma engelli kişiler tarafından kullanılan bir işaret dilinin alfabesidir.
5 Davranışsal Model ve Tanım
Görüntü İşleme Dijital ortama aktarılmış görseller üzerinden ilgili ihtiyaca göre faydalı
bilgiler elde etmek için farklı teknikler ile özdeşleştirilebilen bir yöntemdir.
GUI Grafiksel bir kullanıcı arabirimi, kullanıcıların bilgisayarlarla yazmadan
daha fazla yolla programlarla etkileşimde bulunmalarını sağlayan bir
kullanıcı arabirimi türüdür.
ER Varlık - İlişki Diyagramı, bir veritabanındaki varlıklar arasındaki ilişkileri
gösteren özel bir grafiktir. ER diyagramları genellikle üç farklı bilgi türünü
temsil etmek için semboller kullanır. Kutular, varlıkları temsil etmek için
yaygın olarak kullanılır. Elmaslar normalde ilişkileri temsil etmek için
kullanılır ve ovaller özellikleri temsil etmek için kullanılır
IDE Entegre geliştirme ortamı
Yapay Sinir Ağları (YSA)
Yapay Sinir Ağları kısaca YSA olarak adlandırırsak; insan beyninin
çalışma yapısını taklit ederek geliştirilen yapay zeka tekniklerinden sadece
biridir
Dl4J Analiz ve derin öğrenme programı
Open Gl OpenGL (Open Graphics Library), Silicon Graphic Inc. tarafından
geliştirilmiş donanımın desteğini kullanarak 2D ve 3D grafikleri ekrana
çizdirmek amacıyla kullanılan bir grafik uygulama geliştirme arabirimidir
(API).
Projenin amacı ise işitme engelli bireyleri günlük hayatta işaret dili bilmeyen
insanlarla uygulama aracılığıyla iletişim kurabilme olanağı sağlayacaktır. Böylelikle insanlar
arasındaki engel ortadan kalkmış olacaktır. Uygulama sayesinde karşılıklı iletişim
sağlanabilecektir.
5.1 Yazılım davranışının açıklaması (Durum Geçiş Diyagramları)
Kamera
Eğitim
6 Planlama
BAŞLA
Kullanıcı
LSF Alfabesi Göster Nesne Algıla ve Tanımla
Yazıya çevir ve Sesli oku Çıkış
Kamera veya Eğitim
6.1 Takım Yapısı
7
8
Mehmet Emin Mehmet Emin Barış Öz Mehmet Emin
Muhammed Kasım Muhammed Kasım Barış Öz
Muhammed Kasım
6.2 Tahmin (Temel Çizelge)
Proje
Proje
Yönetimi
Kullanıcı Arayüzü Görüntü İşleme Yapay Zeka Raporlar