54
T.C. HARRAN ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ Bilgisayar Mühendisliği Bölümü 3.SINIF PROJE DERSİ SES TANIMA İLE UZAKTAN KUMANDALI OYUNCAK ARABA YÖNETİMİ Öğrenci : Abdurrahman Balk : Sezer Erginyürek Danışman : Yrd. Doç. Dr. Nurettin BEŞLİ

eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

T.C.

HARRAN ÜNİVERSİTESİ

MÜHENDİSLİK FAKÜLTESİ

Bilgisayar Mühendisliği Bölümü

3.SINIF

PROJE DERSİ

SES TANIMA İLE UZAKTAN

KUMANDALI OYUNCAK ARABA

YÖNETİMİ

Öğrenci         : Abdurrahman Balk

: Sezer Erginyürek

Danışman    : Yrd. Doç. Dr. Nurettin BEŞLİ

Şanlıurfa-2010

Page 2: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

ii

Page 3: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

SES TANIMA İLE UZAKTAN KUMANDALI OYUNCAK ARABA

YÖNETİMİ

ABDURRAHMAN BALK

SEZER ERGİNYÜREK

Proje Danışmanı:

Yrd. Doç. Dr. Nurettin BEŞLİ

HARRAN ÜNİVERSİTESİ

MÜHENDİSLİK FAKÜLTESİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

3. SINIF PROJESİ OLARAK HAZIRLANMIŞTIR

Şanlıurfa

Haziran 2010

           

iii

Page 4: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Harran Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Bitirme

Ödevi Yönergesi Uyarınca Hazırlanmış ve Anılan Bölüme Sunulmuştur.

 

 

 

Şanlıurfa – 2010                                           Abdurrahman BALK

Sezer ERGİNYÜREK

 

 

ONAY

 

 

Yrd. Doç. Dr. Nurettin BEŞLİ                                   Yrd. Doç. Dr. Nurettin BEŞLİ

            Danışman                                                                 Bölüm Başkanı

iv

Page 5: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

ÖZET

Bu çalışmada, “ULN2003A” transistor kullanılarak oyuncak arabanın

kumandası hazırlanan elektronik devreye monte edilmiş ve paralel port yardımıyla

bilgisayara bağlanmıştır. Kullanılan “GVZ Komutanlar” adlı ses tanıma programı

ile oyuncak arabanın ses ile kontrolü sağlanmıştır. Ayrıca “SDK 5.1 Speech

Recognation” programı ile Windows işletim sistemi ses tanımaya uyumlu hale

getirilmiştir. “Visual C#” ile yazılan ara yüz programı ile de manüel olarak araba

kontrolü yapılabilmektedir.

v

Page 6: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

ABSTRACT

MOBIL VEHICLE CONTROL WITH VOICE COMMAND RECOGNITION

ABDURRAHMAN BALK

SEZER ERGİNYÜREK

Harran University

Faculty of Engineering

Department of Computer Engineering

Project Advisor:

Assoc. Prof. Dr. Nurettin BEŞLİ

June 2010

In this study, With using “ULN2003A” transistor, remote-control of the car is

assemble on the electronic circuit board and contacting the computer helping the

paralel port connection. Used speech recognation program name is called “GVZ

Komutanlar” which controling modul car. Also Windows operating system is

adapted with” SDK 5.1 Speech Recognation ” program for recognize voice. Modul

car can control by manual which used program that “Visual C#”.

vi

Page 7: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

TEŞEKKÜR

Bu proje çalışmasının planlanmasında, araştırılmasında, yürütülmesinde ve

oluşumunda ilgi ve desteğini esirgemeyen, engin bilgi ve tecrübelerinden

yararlandığımız, yönlendirme ve bilgilendirmeleriyle çalışmamızı bilimsel temeller

ışığında şekillendiren sayın hocamız Yrd. Doç. Dr. Nurettin BEŞLİ’ye sonsuz

teşekkürlerimizi sunarız.

Elektronik devrenin tasarımı, çalışması ve araştırmalarda yardımlarını

esirgemeyen çok kıymetli hocamız Sayın Arş. Gör. Abdülkadir Gümüşçü’ye (HR.Ü )

ve daha önce yaptığı çalışmalardan edindiği bilgileri bizimle paylaşan Sayın

Bilg.Müh. Kemal Adem’e (HR.Ü) teşekkürü bir borç biliriz.

Değerli arkadaşlarımıza da yardımlarını esirgemeden yanımızda oldukları için

tüm kalbimizle teşekkür ederiz.

vii

Page 8: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

İÇİNDEKİLER

Sayfa

ONAY..........................................................................................................................iv

ÖZET…........................................................................................................................v

ABSTRACT.................................................................................................................vi

TEŞEKKÜR...............................................................................................................vii

İÇİNDEKİLER..........................................................................................................viii

ŞEKİLLER VE TABLO LİSTESİ..............................................................................10

SİMGELER LİSTESİ.................................................................................................11

BÖLÜM 1...................................................................................................................13

1.1-) GİRİŞ.................................................................................................................13

1.2-) ALGORİTMALAR............................................................................................14

1.2.1-) Ortak Vektör Yaklaşımı.........................................................................14

1.2.2.-) Saklı Markov Modeli.............................................................................15

1.3-) KONUŞMA TANIMA SİSİTEMİNİN ANATOMİSİ......................................16

1.3.1-) Ses Komut Tanıma Sistemi....................................................................16

1.3.2-) Konuşma Tanıma Problemi....................................................................17

1.3.3-) Öznitelik Çıkarıcı...................................................................................17

1.3.4-) Akuistik Model.......................................................................................18

1.3.5-) Dil Modeli ve Gramer............................................................................18

1.3.6-) Değerlendirme Ölçütleri.........................................................................19

viii

Page 9: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Sayfa

1.4-) VERİTABANI..................................................................................................20

1.4.1-) SUVoice Veritabanı...............................................................................20

1.4.2-) METU 1.0 Veritabanı.............................................................................21

1.5-) KONUŞMA TANIYICI YAPISI.......................................................................22

1.5.1-) Sınama verisi..........................................................................................22

1.5.2-) Deney sonuçları......................................................................................23

BÖLÜM 2...................................................................................................................25

2-) KULLANILAN YAZILIM VE DEVRE ELEMANLARI...................................25

2.3.1-) ULN2003A Transistör............................................................................25

2.3.2-) Paralel Port.............................................................................................26

2.3.3-) GVZ Komut Anlar..................................................................................27

BÖLÜM 3...................................................................................................................29

3.1-) SES TANIMA SİSTEMLERİNDE KARŞILAŞILAN SORUNLAR...............29

3.2-) TARTIŞMA.......................................................................................................30

3.3-) SONUÇLAR......................................................................................................30

BÖLÜM 4 ..................................................................................................................31

4.1-) OYUNCAK ARABA DEVRESİNİN BİLGİSAYAR İLE BAĞLANTISI......31

4.2-) OYUNAK ARABA KONTROL PROGRAMI.................................................33

4.2.1-)Programın Çalışması ve Arayüzü..............................................................33

KAYNAKÇA..............................................................................................................39

ÖZGEÇMİŞ................................................................................................................40

ix

Page 10: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

x

Page 11: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

ŞEKİLLER LİSTESİ

 

 

 Sayfa

Şekil l.3.l. Ses komut tanıma sistemi 15

Şekil l.4.1. Yaş dağılım histogramı. 20

Şekil l.5.2a. İnce Memed roman metni sınama sonuçları 23

Şekil 1.5.2b. Spor Haberleri metni sınama sonuçları 23

Şekil 2.1. ULN2003 Transistör bacak bağlantıları ve iç yapısı 24

Şekil 2.2. Paralel Portun Pin Yapısı 26

Şekil 2.4a. GVZ Komut Anlar programı arayüzü 28

Şekil 2.4b. Yeni komut ekleme kısmı 28

Şekil 4.2. Kumanda devresi 31

Şekil4.3. Kumanda Devre Şeması 32

Şekil 4.4. ULN2003 Devre Bağlantısı 33

Şekil 4.5. Program Başlangıç Sayfası 34

Şekil 4.6. Oyuncak Araba Kontrol Formu 36

Tablo 1.5.2. Sınırlı dağarcıklı deney sonuçları 22

Tablo 2.2. Paralel Portun Pin Tablosu 26

11

Page 12: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

SİMGELER LİSTESİ

 

 

N                     Referans cümledeki toplam sembol (label) sayısını

D                    Referans cümleye göre hipotezdeki silinen sembol sayısını

S                      Değişen sembol sayısını

I                     Fazladan eklenmiş sembol sayısını

WER (Word error rate – WER) Kelime hata oranı

SER (Stem error rate – SER) Kök hata oranı

LER (Letter error rate – LER) Harf hata oranı

--

12

Page 13: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

BÖLÜM 1

1.1-) GİRİŞ

Ses tanıma sistemi genel olarak konuşma verisini yazıya çeviren bir yazılım olarak

görülebilir. Bu tür bir sistemin gelişmesi insan makine etkileşimini daha kolay ve verimli

kılacaktır. Yalnız, bir ses tanıma sisteminin geliştirilmesi zorlu bir süreç içerir. Her dil için

farklı ses tanıma yazılımları oluşturulmak zorundadır, dolayısıyla her farklı dilde ses tanıma

yazılımı o dile has özelliklerden kaynaklanan sorunları çözmek zorundadır. Bütün bu

zorluklara rağmen, etkili bir ses tanıma sistemi birçok alanda büyük faydalar sağlayabilir.

Örneğin, birçok şirket çağrı merkezlerinde görevliler bulundurmaktadırlar ve bu da para ve

insan gücü kaybına sebep olmaktadır. Bu kaybın önüne çağrı merkezindeki görevlilerin işini

yapacak bir ses tanıma sistemi ile geçilebilir. Ayrıca ses tanıma sistemleri metin dikte

ettirmek için de kullanılabilir. Herhangi bir editör programına sesle yazı dikte ettirmek, bu iş

için harcanan süre ve emeği azaltacaktır. Ek olarak, doğrudan ses dosyalarından yazıya geçiş

yaptırılabilir ve duyma güçlüğü çeken kişilerin yayınları takip etmesine olanak sağlar.

Gelişmiş bir ses tanıma sistemi, makinelere ses ile komut vermeye olanak sağlar. Teknolojik

gelişmelerle televizyonlar, arabalar ve diğer elektronik aletler hiçbir aracı alet olmadan sesle

yönetilebilir.

Ses tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak da faydalı

olabilir. Birleştirilmiş bir sistemle farklı ana dile sahip iki kişi ortak bir dil bilmek zorunluluğu

olmadan iletişim kurabilirler ve bu türden bir aygıt uluslar arası konferanslarda anında çeviri

yaparak faydalı olabilir.

13

Page 14: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

1.2-) ALGORİTMALAR

Ses tanıma sistemleri günlük hayatımızda birçok alanda kullanılmaya başlanmıştır. Ev,

otomobil, ofis, hastane ve fabrika gibi çalışma ortamlarında ses tanıma ve sesle kontrol

uygulamaları görmekteyiz. Ses komut sistemleri kullanıcıların insanlarla etkileşiminde, araç

kontrolünde ve kişisel ve kamuya açık veri erişiminde kullanılmaktadır. Ses tanıma; yalıtık,

birleşik ve sürekli olmak üzere üç şekilde yapılmaktadır. Ses tanıma sistemleri, kişiye

bağımlı veya kişiye bağımsız ses tanıma yapacak şekilde tasarlanabilir[1]. Ses komut tanıma

sistemlerinde sesin bütünü için bir model oluşturulabilir. Bu modelle mesleki özellikle sınırlı

sayıda ses tanıma sistemleri için uygundur. Tanınacak ses sayısı fazla olduğu durumlar için

ses modellemesi için ses birimlerinden yararlanılır.

Ses birimleri ile ses/komut tanımada sürekli ses tanıma yöntemi uygulanır. Ses komut

tanıma sistemlerinde yalıtık veya sürekli konuşma tanıma yapılabilir. Bu sistemlerde

komutların değişken olması ve bu komutların sisteme kolay bütünleşmesi isteniyorsa sürekli

konuşma tanıma yöntemleri tercih edilmelidir. Günümüzde ses tanıma sistemlerinde “state

of-art” yöntemi olan saklı Markov modeller (Hidden Markov Models) HMM

kullanılmaktadır. HMM yanında değişik ses tanıma yöntemleri de kullanılabilir. Bu

çalışmalarda ses komut tanıma için bir alt uzay sınıflama yöntemi olan OVY(Ortak Vektör

Yaklaşımı) yöntemi de kullanılır. OVY, başarım olarak HMM’e yakın sonuçlar vermektedir.

Ayrıca OVY’nin HMM’e göre eğitim ve tanımada işlem açısından üstünlükleri vardır[2]. Biz

araç kontrolü için “ileri git”, “geri git”, “ileri sağ”, “ileri sol”, ”geri sol”, ”geri sağ” ve

“bekle” komutlarını kullandık.

1.2.1-) Ortak Vektör Yaklaşımı

OVY, ses ve görüntü tanıma uygulamalarında kullanılan bir alt uzay sınıflama

yöntemidir. Bu yöntem ile her sınıfa ait değişmez özellikleri taşıyan ortak vektör elde edilir.

OVY hem yeterli veri durumu (m>=n), hem de yetersiz veri durumları (m<n) için

uygulanabilir. Burada m ses komut sınıfına ait vektör sayısını, n ise her vektördeki eleman

sayısını göstermektedir. Bu çalışmada OVY yetersiz veri durumu için ses komut tanıma

yapılmaktadır. OVY’ de eğitim ile bir sınıfına ait ortak vektör ve o sınıfın farksızlık alt

uzayını geren öz vektörler elde edilir. Yetersiz veri durumunda (m<n) ortak vektör ve

farksızlık alt uzayı Gram-Schmidt dikleştirme yöntemi veya alt uzay teknikleri kullanılarak

14

Page 15: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

elde edilebilir. Alt uzay tekniğinde ortak vektör ile ortak degişinti matrisinin öz vektörleri

arasındaki ilişkiden yararlanılır[3].

1.2.2-) Saklı Markov Modeli

Ses tanıma sistemlerinde, ses dalgaları öncelikle ses vektörleri veya gözlemleri

dizilerine dönüştürülürler. Bu diziler, Markov özelliğinde bir sonlu-durum makinesi olarak ele

alınırlar. Öyle ki, gözlem dizilerinde bir sonraki gözlem, geçmişteki herhangi bir gözleme

değil, şu ankine bağlıdır. Fakat gerçekte bu sistemin bazı sınırlamaları vardır: modeldeki

durum dizisi saklıdır ve gözlemler sadece bu durumlara bakılarak hesaplanır. Buna Saklı

Markov Modeli denir.

Ses sinyalleri simgeselleştirilerek sonlu-durum makineleri olarak işlenirler. Tabi

biçimsel diller düzeyine çıkarılmadan önce, pek çok ses dalgası hesaplamaları yapılır. Bu tür

hesaplamalar ise sinyal işleme konusuna girdiğinden onlardan söz edilmeyecek.

Saklı Markov Modelindeki durum dizisini bulabilmek için üç önemli algoritma

kullanılıyor.

İleri Algoritması: Modeldeki durumların sırasını bulmada kullanılıyor.  Ortaya çıkabilecek

tüm durum sıralarının olasılıkları toplanıyor.

Viterbi Algoritması: İleri Algoritması'ndaki gibi tüm olasılıkları toplamak yerine, Viterbi

algoritmasında her durum sıralarından ses vektörleriyle en iyi örtüşeni seçiliyor. Böylece daha

sağlıklı bir sonuç elde ediliyor.

Baum-Welch Algoritması: Gözlem dizisini baştan sona ve tekrar sondan başa geçerek

gözlem olasılıklarını hesaplar. Böylece daha kesin sonuçlar bulur.

Ses sinyallerini işleyip, en küçük parçalarına ayırdıktan sonra, bu parçaların denk

geldikleri ses ve hecelerle örtüştürülmesi gerekiyor. Bunun için tanımak istediğiniz ifadeleri

türeten gramerden, telaffuz sözlüğü, sözcük ağları, gibi pek çok öğeyi harmanlamak

gerekiyor.

15

Page 16: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

1.3-) KONUŞMA TANIMA SİSTEMİNİN ANATOMİSİ

1.3.1-) Ses Komut Tanıma Sistemi

Genel bir ses komut tanıma sisteminin blok seması şekil 1’de verilmektedir. Bu

sistemde, bilinmeyen komuta yapılmadan önce ses komutlarının uç noktalarının belirlenmesi

gerekir. Bu çalışmada uç nokta belirme için enerji ve sıfır geçiş ölçüleri kullanılmıştır[4].

Enerji ve sıfır geçiş sayısı için elde edilen eşik değerleri kullanılarak sesin uç noktaları

belirlenmektedir. Ait sesin uç noktaları belirlendikten sonra öznitelik vektörü elde edilir.

OVY ile öznitelik vektörünün hangi komuta ait olduğu belirlenir. Daha sonra bu komut

sayısal I/O kartı ve RF verici üzerinden gezgin araca gönderilir.

Şekil 1.3.1: Ses komut tanıma sistemi

16

Page 17: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

1.3.2-) Konuşma Tanıma Problemi

Temel olarak konuşma tanıma sisteminin yaptığı görev bir konuşma verisini almak ve

ne söylenildiğini tahmin etmektir. Yani sistemin girdisi konuşma verisidir ve çıktısı da tahmin

edilen cümledir (hipotez cümlesi). Sistemin tahmin yapabilmesi için iki ana bölüme ihtiyacı

vardır: öznitelik çıkartıcı ve dil çözümleyici. Öznitelik çıkartıcı, gelen ses dalga yapısındaki

veriyi akustik öznitelik dizilerine dönüştürür ve dil çözümleyicinin kullanabileceği bir yapı

oluşturur (bu araç hakkında daha detaylı bilgi bir sonraki bölümde mevcuttur). Daha sonra, dil

çözümleyici bu öznitelikleri çıkartılmış diziyi alır ve cümleyi tahmin etmeye çalışır. Tahmin

ederken iki temel model kullanılır: Dil modeli ve akustik model. Bu modeller hakkında da

detaylı bilgi bu bölüm içinde verilecektir. Temel olarak tahmin işlemi aşağıdaki Bayes

denklemi sayesinde gerçekleştirilir:

W =argmax P( W| A)=argmax P (A| W) P( W)……(1)

Burada W hipotez cümlesidir. Bu cümle eşitliğin ikinci tarafında da görülebileceği gibi olası

cümleler içinden akustik diziyle uyuşma ihtimali en yüksek olan cümledir. P(W|A) verilen

akustik veriye göre (A) mevcut cümlenin (W) akustik diziyle eşleşme olasılığını simgeler.

Eşitliğin ikinci kısmı doğrudan Bayes kuralının uygulanması ile elde edilir. Burada P(W), W

cümlesinin oluşma olasılığıdır ve dil modeline göre hesaplanır. P(A|W) verilen cümleye göre

bizdeki akustik dizinin oluşması olasılığıdır ki bu da akustik modelle hesaplanır. Bayes

kuralından gelen P(A) W’dan bağımsız olduğu için sadeleştirilmiştir.

1.3.3-) Öznitelik Çıkartıcı

Daha önce de bahsedildiği gibi ses tanıma işleminden önce ses verisi bir dizi

parametre vektörüne dönüştürülmelidir. Bu sebeple öznitelik çıkartıcı ses verisini zaman

açısından birbirleriyle kesişmeleri boş olmayan kesitlere ayırır ve her bir kesitin

özniteliklerini çıkartır. Öznitelik çıkarımı için birçok farklı yöntem bulunsa da insan kulağının

algılamasına benzer frekans çözümlemesi sunduğu için filter-bank analizi daha yaygındır. Bu

avantajından dolayı bizim de ses tanıma için kullandığımız HTK programı fitler-bank

yaklaşımını adapte eder [5]. Eşit frekans aralıklı üçgen filtreler oluşturulur ve ses dalgasının

17

Page 18: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Fourier dönüşümü bu filtrelerle çarpılarak toplanır. Böylelikle filtrelerdeki değerlere göre

ağırlıklı bir toplam elde edilir. Yeni oluşturulan bu veriler ve MFCC (Mel-frequency cepstral

coefficients) kullanılarak vektör öznitelikleri çıkartılır.

1.3.4-) Akustik Model

Ses tanıma sistemlerinin akustik model temelini Saklı Markov Modelleri (Hidden

Markov Models- HMM) oluşturur. En küçük akustik birim fonemdir ve fonem bazlı

modellerde genellikle 3 adet HMM durumundan oluşur. HMM’in model parametreleri durum

değiştirme olasılıkları (state transition probabilities - aij) durum gözlenme yoğunlukları (state

observation density - bj(o)) ve başlangıçtaki durum dağılımlarıdır (initial state distributions -

ΠI). bj(o) ‘nin hesaplanması Gauss karışım dağılım olasılık fonksiyonlarının kullanılmasıyla

hesaplanır. Kullanılabilecek Gauss karışımı sayısı artırılabilir. Monofon kullanımı etrafındaki

diğer seslerden bağımsız bir ses tanıma sistemi sağladığı için ve bir fonem birden çok sese

karşılık gelebileceği için monofon tanıma sistemi etkili bir çözüm sunmaz. Trifonlar ise her

fonemin sağında ve solunda bulunan fonemler ile birlikte modellenmesidir, bu sebeple

trifonlar kullanmak akustik değişkenliği düşürür ve daha etkili bir tanıma sağlar.

1.3.5-) Dil Modeli ve Gramer

Dil modelleri veya gramerler, konuşma tanıma yapılırken, söylenen kelimelerin

akustik tanımanın yanında, içinde bulundukları bağlamlara göre de tanınmalarına olanak

verirler. Gramerler elle belirlenmiş cümle kuralları tanımlarlar, akustik model bir kelimenin

olasılığını en yüksek olarak belirlese de, bu kelime gramer kurallarının dışında ise tanınma

olasılığı olmaz, sadece bu kurallarla belirlenmiş kelimeler tanınabilir. Bu nedenle gramerler

sadece sınırlı dağarcıklı konuşma tanıma sistemlerinde kullanışlıdırlar. Bu tür elle belirlenen

gramerlerin yazımında da BNF gösteriminden yararlanılır [6]. Öte yanda dil modelleri, eğitim

metinlerinden eğitilir ve cümlelerin o dildeki olasılıklarını oluşturur. Eğer cümlelerin

kelimelerden oluştuğunu varsayarsak, wi kelimelerinden oluşan W cümlesinin tanınma

olasılığı aşağıdaki gibidir:

18

Page 19: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

…(2)

Dil modelleri uygulamalarında genellikle N-gram modeller kullanılır, bu modeller de

denklemin sağ tarafında sadece wi’den önceki N-1 kelimeyi kullanarak denkleme yaklaşır.

Böylece yukarıdaki denklem aşağıdaki denkleme dönüşmüş olur:

…(3)

Bu N-gram olasılıkları ise aşağıdaki formülle hesaplanır:

…(4)

Buradaki C(wi-N+1,..., wi-1, wi) belirtilen N kelimenin eğitim metinlerindeki geçme

sayısını gösterirken, C(wi-N+1,..., wi-1) ise belirtilen N-1 kelimenin metinlerde geçme

sayısını gösterir. N=2 durumunda ise bigram dil modeli elde edilir. Eğitim verisinde

görülmeyen kelimelerin tanınmaları için de dil modeli içerisinde düzleme (smoothing)

yöntemi uygulanarak onlara da birer olasılık değeri atanır. Bu dil modellerinde oluşturulan

istatistiksel dağılımlara göre kelimelerin tanınma olasılıkları, aynı akustik modelde olduğu

gibi, değişim gösterir.

1.3.6-) Değerlendirme Ölçütleri

Konuşma tanıma sisteminin performansını ölçmek için birkaç bilinen ölçüm yöntemi

mevcuttur. En doğru kıstas hipotez cümlesi ile referans cümle arasındaki farkların

değerlendirilmesidir. Bu sebeple kelime hata oranı (Word Error Rate –WER) aşağıdaki gibi

hesaplanabilir:

19

Page 20: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

…(5)

Burada N referans cümledeki toplam sembol (label) sayısını, D referans cümleye göre

hipotezdeki silinen sembol sayısını, S değişen sembol sayısını, I da fazladan eklenmiş sembol

sayısını temsil etmektedir. WER’yi bilmek bize doğru bilinen kelime oranını (percent

accuracy) da sağlar. Bunun dışında Kök hata oranı (Stem error rate – SER) ve Harf

hata oranı (Letter error rate – LER) da değerlendirme ölçütü olarak tanımlanabilir. SER,

referans ve hipotez cümlelerin kelimelerinin eklerinin atıldıktan sonra, köklerde WER’nin

hesaplanmasıyla bulunabilir. LER ise harfleri tek tek ayırdıktan sonra harfler arasında

WER’nin bulunmasıyla hesaplanır.

1.4-) VERİTABANI

Akustik modellerin eğitiminde temel olarak SUVoice ve Metu 1.0 veritabanları

kullanıldı.

1.4.1-) SUVoice Veritabanı

Sabancı Üniversitesi öğrencileri tarafından bir proje dersi kapsamında her dönem

düzenli olarak toplanan, 6 yıllık bir konuşma veritabanıdır. Toplam 3444 okuyucunun ses

kayıtlarından oluşturulmuştur. Yaklaşık 70 saati sessizlik olan 185 saatlik konuşma verisi

içerir. 46 farklı metin dosyasından 4087 özgün cümlenin okunmasıyla oluşturulmuştur.

Veritabanı genelde üniversite içinden toplandığı için çoğunlukla 18-25 yaş grubundaki

konuşmacıların verisini içerir. Konuşmacıların yaş dağılımı Şekil 1’de gösterilmiştir.

20

Page 21: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 1.4.1: Yaş dağılım histogramı.

Konuşmacıların 2055’i erkek, 1389’u ise bayandır. Ayrıca 2447 adet sigara içmeyen,

997 adet aktif olarak sigara içen denek kullanılmıştır.

1.4.2-) METU 1.0 Veritabanı

Orta Doğu Teknik Üniversitesi ve University of Colorado at Boulder’ın ortak

çalışması olan SONIC konuşma tanıma sisteminin Türkçe’ye uyarlanması projesi için

ODTÜ’de toplanmış verilerden oluşmaktadır. Yaklaşık 500 dakikalık ses verisi mevcuttur.

Her konuşmacı yaklaşık 40 cümle okumuştur ve 2462 özgün cümleden oluşmaktadır. Veriler

68’i erkek 52’si kadın 120 kişinin ses kayıtlarını içerir.

21

Page 22: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

1.5-) KONUŞMA TANIYICI YAPISI DENEYLERİ

Konuşma tanıyıcı olarak kullanılan HTK eğitimi için temel olarak HMM

kullanmaktadır. Eeğitim için 3 durumlu HMM’ler kullanıldı. Öznitelik çıkarımları da MFCC

yöntemine göre yapıldı. Bu yöntemle çıkarılan vektörlerin sonuna Enerji seviyesi (energy),

fark (delta) ve ivmelenme (acceleration) vektörleri eklendi ve öznitelik ortalama çıkartımı

(cepstral mean normalization) yapıldı. Akustik modelin eğitimi için Türkçe’deki 29 harfe

karşılık gelen 29 fonem kullanıldı. Bunlara ilaveten kelimeler arasındaki kısa boşlukları

yakalamak için kısa durak ve cümle aralarındaki boşlukları yakalamak için sessizlik modelleri

eğitildi. Bunların yanında yabancı bazı harflerin fonemleri de önlem olarak oluşturuldu.

Toplamda 34 fonem elde edildi. Elde edilen fonem seti MetuBET alfabesinin bir alt kümesini

teşkil etmektedir. Her bir model için 3 durum (state) oluşturuldu ve her bir durum için 12

Gauss karışımı kullanıldı. Öncelikle bu 34 fonem üzerinden monofon bir eğitim

gerçekleştirildi. Daha sonra mevcut fonemler kullanılarak trifonlar oluşturuldu. Bütün 3’lü

fonem kombinasyonlarını eğitmeye yetecek kadar veri olmadığı düşünüldüğünden

bağlıdurum (tied-state) trifonlar kullanıldı. Bağlı durumların oluşturulması için Türkçe için

uygun bir karar ağacı (decisiontree) kullanıldı. Toplamda 4167 trifon modeli ve 50004

Gaussian mixture elde edildi.

Dil modeli olarak ise Osman Büyük’ün “Sub-Word Language Modeling for Turkish

Speech Recognition” isimli yüksek lisans tezinde kullandığı kelime tabanlı bi-gram dil modeli

kullanıldı. Sınama deneyleri Viterbi algoritması kullanılarak yapıldı, bu konuda değinilmesi

gereken bir nokta da, kullanılan sınama parametreleridir. Özellikle sınama sonuçlarını

etkileyen parametrelerden biri dil modeli logaritmik ağırlığıdır. Bu dil modeli ağırlığı

değerleri (-s) için birden fazla deney yapılmış, 5, 7, 10 ve 15 ile elde edilen değerler 4.4’te

karşılaştırılmıştır. Sınamayı etkileyen diğer öneli parametrelerden kelime ekleme logaritmik

olasılığı olarak 0, budama (pruning) parametresi olarak da 120 kullanıldı.

1.5.1-) Sınama Verisi

Sınama deneyleri, sınırlı dağarcıklı ve geniş dağarcıklı olmak üzere iki ayrı kategoride

yapıldı. İki kategorinin deneylerinde de SUVoice veritabanının eğitime dahil edilmeyen alt

22

Page 23: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

kümeleri kullanıldı. Sınırlı dağarcıklı tanıma deneylerinde de iki ayrı deney metni türü

kullanıldı; bunlardan ilki, ard arda rastgele dört rakam okunan deneylerdi, diğeri ise toplam

160 yer ismi (Türkiye illeri, ilçeleri vb.) arasından birinin okunduğu deneylerdi. Rakam

sınama deneyleri için 54 kişiden toplam 5397 ses dosyası kullanılırken, yer ismi deneyleri için

ise 14 kişiden 2238 ses dosyası kullanıldı. Geniş dağarcıklı tanıma deneylerinde de iki farklı

metin türü kullanıldı; bunların da ilki Yaşar Kemal’in romanı İnce Memed’den alınan

cümleleri içerir, ikincisi ise spor haberleri arasından toplanmış cümlelerden oluşur. İnce

Memed verisi 88 özgün cümle içermekte olup, sınama için 18 kişiden toplanan 1905 ses

dosyası kullanılmıştır. Spor haberleri verisi de aynı şekilde 88 özgün cümle içerir, ve 16

kişiden toplanan 1408 ses dosyası ile sınama yapılmıştır. Bu sınama verileri [4]’te kullanılan

sınama verilerinin aynısıdır. Geniş dağarcıklı tanıma deneyleri için 30132 kelimeden oluşan

bir sözlük kullanılmıştır.

1.5.2-) Deney sonuçları

Sınırlı dağarcıklı deneylerde yapılan yer tanıma ve rakam tanıma deney sonuçları

Tablo 3’te gösterilmiştir. Rakamlarda cümle tanıma oranını farklı olmasının sebebi rakam

sınamasında bir cümlede 4 rakam okunmasıdır. Yer isimlerinde iki hata oranının da aynı

olmasının sebebi ise her cümlenin sadece bir yer ismini içermesidir.

Tablo 1.5.2: Sınırlı dağarcıklı deney sonuçları

Geniş dağarcıklı deneyde ise İnce Memed ve spor haberleri metinleri sınandı. Deney

sonuçları Şekil 2 ve Şekil 3’te görülebilir. Şekillerde yeşil sütunlar harf hata oranını (LER),

kırmızı sütunlar kök hata oranını (SER) ve mavi sütunlar ise kelime hata oranını (WER)

göstermek tedirler.

23

Page 24: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 1.5.2a: İnce Memed roman metni sınama sonuçları

Şekil 1.5.2b: Spor haberleri metni sınama sonuçları

24

Page 25: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

BÖLÜM 2

2-) KULLANILAN YAZILIM VE DEVRE ELEMANLARI

2.1-) ULN2003A Transistör

Sürücü devresi olarak kullanılan ULN2003 İçerisinde 7 adet NPN transistör ve dahili

diyot barındırmaktadır. Haliyle transistör bacaklarıyla uğraşılmaz. Kullanımı ise oldukça

kolaydır. Devre şemasından da anlaşılabileceği gibi 9 numaralı bacağına +12 Volt ve 8

numaralı bacağına da Toprak (ground) uygulanır. Daha sonra 3 ve 6 numaralı bacaklara da

paralel portun DATA pinlerinden gelen +5 Voltluk değerler uygulanır. Bu sayede örneğin 3

numaralı bacağa +5 Volt (lojik voltaj) uygulandığında 14 numaralı bacak toprak olacaktır.

Aynı şekilde sırayla 4 için 13, 5 için 12, 6 için ise 11 numaralı bacaklar toprak olacaktır.

25

Page 26: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 2.1: ULN2003 Transistör bacak bağlantıları ve iç yapısı

2.2-) Paralel Port

Paralel Port nedir Ne işe yarar Paralel Port bilgisayarımızın kasasının arkasında

bulunan 25 pinlik D şeklindeki konnektördür. Genellikle printer bağlanmak için kullanılır. En

çok kullanacağımız bu 25 pin içinden 8 adet çıkış (output) pini, 5 adet giriş (input) pini ve

şasedir (ground, toprak). Aşağıdaki tabloda pinlerin açıklamaları görülmektedir.

26

Page 27: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

 

Bu output pinlerini birçok maksatla kullanabiliriz. Paralel port aslında dış devrelere

güç sağlamak için iyi bir seçim değildir. Ancak elektronik bir devreyi paralel port yardımıyla

besleyebiliriz. Paralel port başlangıçta yazıcıların PC’ye bağlanması ve iletişimi için

tasarlanmış bir porttur. Ancak zamanla donanım kilitleri, taşınabilir diskler, modemler,

network adaptörleri. v.b. gibi birçok cihazın haberleşmesi için kullanılmaya başlanmıştır. Bu

cihazların bir çoğunun güç kaynağı haricidir.

Şekil 2.2 Paralel Portun Pin Yapısı

Paralel port’da direk güç çıkışına sahip değildir (Seri Port gibi). Paralel port üzerinden

beslenen en bilindik elektronik devre PC donanım kilididir. Bu kilit paralel port’a bağlanır.

Yazıcı kablosu ise bu cihazın üzerine bağlanır. Paralel port da güç çıkışı bulunmadığından

cihaz gücü port’un diğer pinlerinden çalar. Ancak bu durum genellikle yazıcıyla bilgisayarın

haberleşmesinde yada donanım kilidinin haberleşmesinde problem yaratır. Ayrıca paralel

portun mantsal 1 değeri 2.4V seviyesidir

27

Page 28: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Tablo2.3 Paralel Portun Pin Yapısı

2.3-) GVZ Komut Anlar

Bu program sesinizle bilgisayarınıza herhangi bir komut yollamanızı ve bu komutun

anlaşılarak yapılmasını sağlar. Program Türkçe ve Türk yapımıdır. Böylece telaffuz ve

okunuşta sorun yaşamazsınız. Kolay kullanışlıdır.

Programın Kullanımı:

Programı açtıktan sonra pencereyi kapatsak dahi, Sağ alt köşede(saatin yanı) aktif

olarak duruyor ve mikrofona gelen sesleri dinlemeye alıyor. Eğer programa belirtilen sesler

algılanırsa komutu gerçekleştiriyor okunuşlar dilinizden çıkan sese göre yazılmalıdır.

Bir program için birden fazla okunuş istiyorsak aralarına “; “ koymamız yeterli oluyor.

Ayarlar kısmından programın bizi bir tuşa bastığımız an dinlemesini de sağlayabiliyoruz.

28

Page 29: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 2.4a: GVZ Komut Anlar programı arayüzü

Şekil 2.4b: Yeni komut ekleme kısmı

29

Page 30: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

BÖLÜM 3

3.1-) SES TANIMA SİSTEMLERİNDE KARŞILAŞILAN SORUNLAR

Ses tanıma sistemlerinde tanıtılması gereken sözcük sayısı ve sözdizimi karmaşıklığı

arttıkça, tanıma yüzdesi de düşüyor. Bunun sebepleri ise söyle sıralanabilir: 

İngilizcedeki gibi yazılışları ve anlamları farklı olup okunuşları aynı olan sözcüklerin

aynı cümlede kullanılması, makinenin konuşmayı çözümlerken doğru sonuç bulmasını

engelleyebilir:“Mr. Wright should write to Ms. Wright right away about his Ford or four door

Honda.”  cümlesindeki altı çizili sözcükler bu duruma örnek olarak verilebilir.

Ses tanımanın birden fazla türü vardır. Yalıtılmış sözcük tanıma, sürekli sözcük

tanımadan daha kolaydır. Çünkü ilkinde sözcükler nispeten daha açık ve tane tane söylenir.

Aynı şekilde karşılıklı bir konuşmayla, okumadaki konuşma arasında da büyük fark vardır.

Konuşma birinde sürekli ve değişken tonlamalarla, doğaçlama olarak gerçekleşirken,

diğerinde tonlamalara dikkat edilerek, daha yavaş tempodadır.

Konuşmacıya bağımlı ve konuşmacıdan bağımsız ses tanıma sistemlerinde de farklı

performanslar sergilenir. Birden fazla konuşmacının sesini tanıyabilmek makinenin

hesaplamalarını etkileyebilir.

Konuşma sırasında fondaki gürültü düzeyi de önemli bir zorluk çıkarıcı etmendir.

Teknolojideki büyümenin önüne set çekmek mümkün değilken, ses tanımanın da

gelişme hızı aynı şekilde artmakta. Ses tanımadaki zorlukların en büyük nedeni, bilgisayarın

iç yapısındaki gibi ya 1 ya da 0 şeklinde yürümemesi. Temelinde kullanılan pek çok

istatistiksel ve matematiksel formüllerin de gösterdiği gibi, olasılıklar ve yaklaşıklıklar

üzerine kurulu bir sistem. Bu yüzden daha fazla Ar-Ge yapılarak, üzerinde sabırla ve titizlikle

durulması gereken, fakat bir o kadar da ilginç bir konu ses tanıma.

30

Page 31: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

3.2-) TARTIŞMA

Deney sonuçlarına bakıldığında, beklenildiği gibi sınırlı dağarcıklı deneydeki hata

yüzdesi, geniş dağarcıktakilere göre çok daha düşüktür. Çünkü sınırlı dağarcıktaki olası

sözcük sayısı ve sözcüklerin birbirlerine benzerlikleri daha azdır. Böylece tanıma sistemi daha

az seçenek arasından daha isabetli seçimler yapabilmektedir. Geniş dağarcıklı deneyde, dil

modelinin tanımaya yaptığı katkılara rağmen olası sözcük sayısının fazlalığı nedeniyle, deney

sonuçları sınırlı dağarcıktaki isabet oranına yaklaşamamaktadır. Bir diğer gözlem de iki geniş

dağarcıklı sınama sonuçları arasındaki hata oranları farkıdır. Bütün ölçütlerde (SER, WER,

LER) Spor haberlerinin hata oranı İnce Memed’e göre daha düşüktür. Bunun nedenlerinden

biri İnce Memed’te geçen kelimelerin spor haberlerindekilere göre, akustik modelin ve dil

modelinin eğitim verisinde daha az bulunmasıdır. Bu nedenlerin en önemlisi de, romandaki -

sistem tarafından tanınması imkânsız olan - sözlük dışı kelimelerin sayısının (out of

vocabulary) fazla olması ve dolayısıyla doğru tanıma yüzdesinin düşmesidir. Geniş dağarcıklı

deneylerdeki doğruluk oranını değiştiren bir diğer gözlemlenebilir ölçüt de, S (dil modeli

ağırlığı) parametresidir. Şekil 2 ve Şekil 3’te S değerinin değişiminin etkileri görülebilir.

Burada gözlemlenebilecek ilk şey S değerinin değişmesinin bütün ölçütlerde (SER, WER,

LER) aynı yönde (artma veya azalma) etki yapmasıdır. Ayrıca bütün ölçütler için her iki

deneyin de tanınma oranını en fazla yapan değer 7’dir. S değerinin 7’ye göre artması veya

azalması doğruluk oranının düşmesine yol açmaktadır.

3.3-) SONUÇLAR

Bu raporda Türkçe konuşma tanıma sisteminin yapısından ve işleyişinden bahsedildi.

Bu sistem üzerinde yapılan deneylerin sonuçları açıklandı ve çıkan sonuçlar karşılaştırıldı.

Sistem sınırlı dağarcıklı konuşma tanımada iyi sonuçlar vermesine rağmen geniş dağarcıklı

tanımada düşük başarım gösterdi. Bu sebeple, gelecek çalışmalarda geniş dağarcıklı tanıma

oranının artması için dil modelinin geliştirilmesi düşünülebilir. Daha iyi bir dil modeli için

istatistikî olmayan bir gramer kullanılabilir. Ayrıca dil modelinin eğitimini kelimelerden

yapmak yerine, kelime altı parçacıklardan yapılabilir. Genel tanıma başarımının artması için

de, tanıma programına vermeden önce, ses dosyası üzerinde etkili yazılımlar kullanılarak,

gürültü azaltılması gibi işlemler yapılabilir.

31

Page 32: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

BÖLÜM 4

4.1-) OYUNCAK ARABA DEVRESİNİN BİLGİSAYAR İLE BAĞLANTISI

32

Page 33: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Oyuncak araba kumandasını bilgisayar bağlantısı için tek yapmamız gereken paralel

portun toprak uçları ile kumandanın toprak uclarının birleştirilmesidir.

33

Page 34: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 4.1. Kumanda Devresi

34

Page 35: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 4.2.Kumanda Devresinin Şeması

İlk olarak kumandayı söküyoruz. Her tuşun altına denk gelen birer buton göreceksiniz.

Bizi ilgilendiren ve kullanacağımız ileri, geri, sağ ve sol butonlarıdır. Zaten standart bir

uzaktan kumandalı arabada sadece bu özellikler mevcuttur. Buradaki mantık kumandadaki

butonlardan birisine basıldığında devre topraklanıyor. Eğer biz butonların topraklanması

gereken uçları dışardan topraklarsak devre yine çalışacaktır. Biz burada ULN 2003

kullanırsak işimizi görecektir. ULN 2003 entegresi içinde 7 adet NPN transistör ve dahili

diyot barındırmaktadır. Kullanımı ise oldukça kolaydır.Devre şemasından da anlaşılabileceği

gibi 3, 4, 5 ve 6 numaralı pinlere paralel portun DATA pinlerinden gelen +5V ‘ luk değerleri

uygulayacağız. Burada en önemli nokta, paralel portun toprağı ile kumandanın toprağının

birleştirilmesidir. Aksi taktirde devre çalışmayacaktır.

35

Page 36: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 4.3 ULN2003 Devre Bağlantısı

4.2-) OYUNCAK ARABA KNTROL PROGRAMI

4.2.1-)Programın Çalışması ve Arayüzü

Oyuncak arabayı bilgisayardan kontrol etmek için gerekli olan program Visual C#.Net

kullanılarak hazırlanmıştır. C#’ta parelel portu kulanılarak hazırlanan programın başlangıç

arayüzü aşağıdaki gibi hazırlanmaştır.

36

Page 37: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil 4.5 Programın Başlanıç Sayfası

Program estetik olsun diye ilk açılışta bilgisayar ekranını komple kapatacak şekilde

hazırlamış; “ileri “ buttonuna basıldığında oyuncak arabayı kontrol edecek forma geçilecek

“çıkış “ buttonuna basıldığında ve ESCAPE tuşuna basıldığında ise programdan çıkılacak ve

“yardım” buttonuna basıldığında ise programın kullanımı ile ilgili bazı bilgiler ekran

gelecektir . Oyuncak Araba Kontrol formında ise hem buttona tıklanarak, hem bilgisayarın

belirli tuşları kullanılarak ve hem de ses ile oyuncak arabayı yönlendirlebilecektir.

Form1 için yazılan program kodlar ise aşağıdadır.

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;

namespace OyuncakAraba{ public partial class Form1 : Form { public Form1()

37

Page 38: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

{ InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { Form2 KontrolFormu = new Form2(); KontrolFormu.ShowDialog(); }

private void button2_Click(object sender, EventArgs e) { Form3 Yardim = new Form3(); Yardim.ShowDialog(); }

private void button3_Click(object sender, EventArgs e) { Application.Exit(); }

private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) { Application.Exit(); } }

private void Ileri_Click(object sender, EventArgs e) { Form2 KontrolFormu = new Form2(); KontrolFormu.ShowDialog(); }

private void Cıkıs_Click(object sender, EventArgs e) { Application.Exit(); } }}

38

Page 39: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Şekil4. 4 Oyuncak Araba Kontrol Formu

Kontrol Formunu hazırlamak için yazılan kodlar da aşağıdadır.

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Windows.Forms;using System.Runtime.InteropServices;using System.Diagnostics;

namespace OyuncakAraba{ public partial class Form2 : Form { public class PortErisim { [DllImport("Inpout32.dll")] public static extern short Inp32(int address); [DllImport("Inpout32.dll",EntryPoint="Out32")] public static extern short Output(int address, int value); } public Form2() { InitializeComponent(); } private void Form2_Load(object sender, EventArgs e) { /*GVZ komut anlar programının çalıştırılması*/

Process.Start(@"C:\Program Files\GVZ\GVZ Komut Anlar\SRCommand.exe"); }

39

Page 40: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

private void button1_Click(object sender, EventArgs e) { PortErisim.Output(888, 1); //ileri }

private void button3_Click(object sender, EventArgs e) { PortErisim.Output(888, 8);//Sağ }

private void button4_Click(object sender, EventArgs e) { PortErisim.Output(888, 2);//Geri

}

private void button2_Click(object sender, EventArgs e) { PortErisim.Output(888, 4);//soll }

private void button5_Click(object sender, EventArgs e) { PortErisim.Output(888, 0);//Dur }

private void Form2_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.W) /*ileri. Paralel portun D1. bitini aktif yap */ {

PortErisim.Output(888, 1); }

if (e.KeyCode == Keys.A) /*Sol. Paralel portun D3. bitini aktif yap*/ { PortErisim.Output(888, 4); }

if (e.KeyCode == Keys.S) /*geri. Paralel portun D2. bitini aktif yap*/ { PortErisim.Output(888, 2); }

if (e.KeyCode == Keys.D) /* Sağ Paralel portun D4. bitini aktif yap*/ { PortErisim.Output(888, 8); } if (e.KeyCode == Keys.Space) /*Dur. Paralel portun bütün bitlerini pasif yap*/ { PortErisim.Output(888, 0); } if(e.KeyCode==Keys.Escape) /*eğer escape basılırsa kontrol formunu kapat*/ {

40

Page 41: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

Form2 form2=new Form2(); form2.Close(); } } }}

41

Page 42: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

KAYNAKÇA

[1].Deler J.R., Proakis J.G. and Hansen J.H., Discrete-Time Processing of Speech Signals,

Macmillian, 1993.

[2].Edizkan R., “Gizli Markov Model ile Bilgisayarda Konusma Tanıma: Özellik Uzayında ve

Altuzayda Sınıflandırıcı Tasarımı”, Doktora Tezi, Eskisehir Osmangazi Üniversitesi Elektrik-

Elektronik Mühendisligi Bölümü, 1999.

[3].Gülmezoglu, M.B., Dzhafarov, V., and Barkana, A.,”The Common Vector Approach and

its Relation to Principle Component Analysis”, IEEE Trans. Speech and Audio Proc.,

9(6):655-662, 2001.

[4].Rabiner, L.R., Sambur, M.R.,. “An algorithm for determining the endpoints for isolated

utterances”. The Bell System Technical Journal, 1975, vol:54, 297-315.

[5]. Young, S., et al., “The HTK Book (for HTK Version 3.4),” Cambridge University

Engineering Department, 2006.

[6]. Linz, P., "An introduction to formal languages and automata," Jones and Bartlett

Publishers, 1997.

42

Page 43: eng.harran.edu.treng.harran.edu.tr/moodle/moodledata/13/moddata/assignment/10/…  · Web viewSes tanıma sistemleri, gelişmiş çeviri yazılımlarıyla birlikte kullanılarak

ÖZGEÇMİŞ

Sezer ERGİNYÜREK 1986 yılının Aralık ayında Van’da doğdu. İlköğretimi Van’da

Cumhuriyet İlköğretim Okulunda liseyi yine Van’da, M. Akif Ersoy Lisesinde tamamladı.

2006 yılında Harran Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümünde

öğrenime başladı ve aynı yıl Süleyman Demirel Üniversitesinde 1 yıllık İngilizce hazırlık

eğitimi aldı. Halen Harran Üniversitesinde de öğrenimine devam etmektedir.

ADRES BİLGİLERİ

Adres:

Harran Üniversitesi Osmanbey kampusü Kredi ve Yurtlar Müdürlüğü /ŞANLIURFA

Tel: 0(545) 231 8783

E-posta: [email protected]

Abdurrahman BALK 1986 yıllını kasım ayında Şanlıurfa Viranşehir ilçesinde doğdu.

doğdu. İlköğretimi Viranşehir Bahçelievler İlköğretim Okulunda liseyi yine Viranşehir’de,

Viranşehir Anadolu Lisesinde tamamladı. 2006 yılında Harran Üniversitesi Mühendislik

Fakültesi Bilgisayar Mühendisliği Bölümünde öğrenime başladı ve aynı yıl Süleyman

Demirel Üniversitesinde 1 yıllık İngilizce hazırlık eğitimi aldı. Halen Harran Üniversitesinde

de öğrenimine devam etmektedir.

ADRES BİLGİLERİ

Adres:

Yeşildirek Mah. 446. Sok İlyas Apt no:1 Şanlırfa/Merkez

Tel: 0(542) 530 29 39

E-posta: [email protected]

43