LINEAR PREDICTIVE CODING VE DYNAMIC TIME WARPING TEKNİKLERİ KULLANILARAK SES TANIMA SİSTEMİ GELİŞTİRİLMESİ



Benzer belgeler
İNSAN İLE BİLGİSAYAR ARASINDA SESLİ İLETİŞİMİN İYİLEŞTİRİLMESİ

TÜRKÇE KOMUTLARI TANIYAN SES TANIMA SİSTEMİ GELİŞTİRİLMESİ

Ses Kontrollü Web Tarayıcı. Voice Controlled Web Browser

Türkçe de Ünlülerin Formant Analizi

Türkçe de Ünlülerin FormantĐncelemesi

SÜREKLİ SAKLI MARKOV MODELLERİ İLE METİNDEN BAĞIMSIZ KONUŞMACI TANIMA PARAMETRELERİNİN İNCELENMESİ

SİNYALLER VE SİSTEMLERİN MATLAB YARDIMIYLA BENZETİMİ

Ses Komut Tanıma ile Gezgin Araç Kontrolü. Mobile Vehicle Control With Voice Command Recognition

Dijital Sinyal İşleme (COMPE 463) Ders Detayları

Dinamik Zaman Bükmesi Yöntemiyle Hece Tabanlı Konuşma Tanıma Sistemi

EEM 451 Dijital Sinyal İşleme LAB 3

SPOKEN DIALOGUE SYSTEMS

ÖRÜNTÜ TANIMA YÖNTEMLERİ KULLANARAK KONUŞMACI BAĞIMLI AYRIŞIK SÖZCÜK TANIMA. Betül KESKİN

İşaret ve Sistemler. Ders 1: Giriş

Çift Tonlu Çoklu Frekans Kodlama Sisteminin Optimize Edilmesi

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

LED IŞIK KAYNAKLARININ RENK SICAKLIĞININ GÖRÜNTÜ İŞLEME TEKNİKLERİ KULLANILARAK BELİRLENMESİ. İsmail Serkan Üncü, İsmail Taşcı

ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ İLETİŞİM LABORATUARI SAYISAL FİLTRELER

Bu uygulama saatinde, dinamik sistemlerin simülasyonu (benzetimi) için geliştirilmiş olan, oldukça kullanışlı bir arayüz, Simulink, tanıtılacaktır.

Deney 5 : Ayrık Filtre Tasarımı. Prof. Dr. Aydın Akan Bahattin Karakaya Umut Gündoğdu Yeşim Hekim Tanç

1. LİNEER PCM KODLAMA

ADPCM Tabanlı Ses Steganografi Uygulaması The Application of Sound Steganography Based on ADPCM

KARİYER PLANLAMA Amaç ve Fayda Yayın Tarihi Kategori Ürün Grubu Modül Versiyon Önkoşulu Yükleme ve Gereken Dosyalar Yükleme Sonrası

İMGE İŞLEME Ders-9. İmge Sıkıştırma. Dersin web sayfası: (Yrd. Doç. Dr. M.

İŞARET ve SİSTEMLER (SIGNALS and SYSTEMS) Dr. Akif AKGÜL oda no: 303 (T4 / EEM)

Toplam İkinci harmonik. Temel Üçüncü harmonik. Şekil 1. Temel, ikinci ve üçüncü harmoniğin toplamı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

İşletim Sistemi. BTEP205 - İşletim Sistemleri

Alt-bant İşlemeye Dayalı Bir Ses Sınıflandırma Sistemi

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

ELEKTRİK/ELEKTRONİK MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Kentsel Hava Kirliliği Riski için Enverziyon Tahmini

Electronic Letters on Science & Engineering 11(1) (2015) Available online at

Tek-faz Yarım Dalga Doğrultucu

EEM HABERLEŞME TEORİSİ NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ

Y Fiber Optik Haberleşme Eğitim Seti Fiber Optic Communication Training Set

TIGER PLUS ÜRÜN FARK DOKÜMANI

SE Engineering Sciences 30 Mayıs 2011, Pazartesi 13:00 M1-2 İNG 152 -İngilizce II 31 Mayıs 2011, Salı 14:00 Yabancı Diller Binası

Mobil ve Kablosuz Ağlar (Mobile and Wireless Networks)

Electronic Letters on Science & Engineering 1(1) 2005 Available online at

BİR HECE-TABANLI TÜRKÇE SESLİ İFADE TANIMA SİSTEMİNİN TASARIMI VE GERÇEKLEŞTİRİMİ

KABLOSUZ İLETİŞİM

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA

LABORATUVAR BİLGİ SİSTEMİ NEDİR? ÇALIŞMA PRENSİPLERİ NELERDİR?

Sayısal Sinyal İşleme (EE 306 ) Ders Detayları

YENİLENEBİLİR ENERJİ EĞİTİM SETİ

TİTREŞİM UYARICISI KALİBRASYONU KARŞILAŞTIRMASI SONUÇ RAPORU

EEM 452 Sayısal Kontrol Sistemleri /

MESLEKİ TERMİNOLOJİ I 1. HAFTA YAZILIM MÜH. TEMEL KAVRAMLAR

ÇUKUROVA ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİYOMEDİKAL MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR PROGRAMLAMA 1 UYGULAMA FİNAL PROJESİ

HTK ĐLE KONUŞMACIDAN BAĞIMSIZ TÜRKÇE KONUŞMA TANIMA SĐSTEMĐ OLUŞTURMA Nursel YALÇIN 1 Ömer Faruk BAY 2

Sözlük Kullanarak Türkçe için Kavram Madenciliği Metotları Geliştirme

ELEKTRONİK TABLOLAMA Aritmetiksel işlemler ve mantısal karşılaştırmaların yapıldığı programlar elektronik tablolama programlarıdır.

Yüksek Lisans Tezi Trakya Üniversitesi Fen Bilimleri Enstitüsü ÖZET

DENEY 3 HAVALI KONUM KONTROL SİSTEMİ DENEY FÖYÜ

BİRİNCİ BÖLÜM İNTERNET

Bilgisayar Programlama (COMPE 102) Ders Detayları

ELK 318 İLETİŞİM KURAMI-II

MÜFREDAT DERS LİSTESİ

T.C. KIRIKKALE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ YAPAY SİNİR AĞLARI. Doç.Dr. Necaattin BARIŞÇI FİNAL PROJESİ

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo

veri dosyadan okutulacak (1) - sinama verisi (2)-son(3) >

Dijital Görüntü İşleme Teknikleri

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

İNTERNET TARAYICISI ÜZERİNDE ÇALIŞABİLEN ELEKTRİK TALEP TAHMİNİ ANALİZ PROGRAMI

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

Alçak Gerilimde Aktif Filtre ile Akım Harmoniklerinin Etkisinin Azaltılması

Health Information System

EEM HABERLEŞME TEORİSİ NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ

SAYISAL İŞARET İŞLEME LABORATUARI LAB 5: SONSUZ DÜRTÜ YANITLI (IIR) FİLTRELER

Sistem Dinamiği. Bölüm 9- Frekans Domeninde Sistem Analizi. Doç.Dr. Erhan AKDOĞAN

Sinirsel Benzetim ve NSL. İlker Kalaycı 06, 2008

BMÜ-421 Benzetim ve Modelleme MATLAB SIMULINK. İlhan AYDIN

DENEY 7 DALGALI GERİLİM ÖLÇÜMLERİ - OSİLOSKOP

COURSES OFFERED FOR ERASMUS INCOMING STUDENTS

IV. Ünite A. BAŞLANGIÇ B. TEMEL İŞLEMLER C. FORMÜLLER VE FONKSİYONLAR D. BİÇİMLEME E. İLERİ ÖZELLİKLER ELEKTRONİK TABLOLAMA

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

Microsoft Excel. Çalışma Alanı. Hızlı Erişim Çubuğu Sekmeler Başlık Formül Çubuğu. Ad Kutusu. Sütunlar. Satırlar. Hücre. Kaydırma Çubukları

SAYISAL KONTROL 2 PROJESİ

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

DESTEK DOKÜMANI ALIM MUHASEBE HESAPLARI PENCERESĐNDE HESAP DAĞITIM DETAYLARI

Formüller ÜNİTE 5. Bu üniteyi çalıştıktan sonra; Formüller Menüsü İşlev Kitapçığı Tanımlı Adlar Formül Denetleme Hesaplama

Biyometrik Sistemlerin Örüntü Tanıma Perspektifinden İncelenmesi ve Ses Tanıma Modülü Simülasyonu

Matematiksel Operatörler

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

YENİLENEBİLİR ENERJİ EĞİTİM SETİ İLERİ SEVİYE TEKNİK ÖZELLİKLER

2017 MÜFREDATI MÜHENDİSLİK FAKÜLTESİ / ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ EĞİTİM PLANI

1. YARIYIL / SEMESTER 1 2. YARIYIL / SEMESTER 2

İSTANBUL MEDENİYET ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ(TÜRKÇE) 4 YILLIK DERS PLANI

Alternatif Akım Devre Analizi

Sahne Geçişlerinin Geometrik Tabanlı olarak Saptanması

Bilgisayar ve Bilgi Sistemleri (COMPE 107) Ders Detayları

C3S Komuta Kontrol ve Sibernetik Sistemler Ltd. Şti. ŞİRKET BİLGİLERİ VE TANITIMI

Güncel Veri Toplama Tekniklerine Bir Örnek: Nar Modeli An Example of the Actual Data Acquisition Techniques: The Pomegranate Model

REAKTİF GÜÇ KOMPANZASYONU ve REZONANS HESAPLARI

1. DÖNEM Kodu Dersin Adı T U K. Matematik II Mathematics II (İng) Fizik I Bilgisayar Programlama I (Java) Computer Programming I (Java) (İng)

Sinyaller ve Sistemler (EE 303) Ders Detayları

İş Akış Yönetimi LOGO KASIM 2011

5. Elektriksel Büyüklüklerin Ölçülebilen Değerleri

III. Ünite A. BAŞLANGIÇ B. TEMEL İŞLEMLER C. BİÇİMLEME D. SAYFA BİÇİMLEME E. YAZDIRMA F. İLERİ ÖZELLİKLER KELİME İŞLEM PROGRAMI

Transkript:

LINEAR PREDICTIVE CODING VE DYNAMIC TIME WARPING TEKNİKLERİ KULLANILARAK SES TANIMA SİSTEMİ GELİŞTİRİLMESİ ÖZET Murat Kemal BAYGÜN Egecom Int. Hiz. ve Yazılım Ltd. Çaybaşı M. 1582 S. No:14 K:1 D:1, DENİZLİ murat@baygun.net İnsanlar arası iletişim, hızlı ve etkin bir şekilde sesli olarak sağlanmaktadır. Ses tanıma sistemleri de, buradan yola çıkarak, insan bilgisayar arası iletişimi daha etkin sağlayabilmek için konuşma dilini kullanmayı amaç edinir. Ses tanıma süreci, sesin kaydedilmesi ve ifadenin saptanması; sesin işlenmesi; karşılaştırma ve eşleştirme yapılması; son olarak ta saptanan ifadeye karşılık gelen işlevin gerçekleştirilmesi aşamalarından oluşur. Bu çalışmada Linear Predictive Coding ve Dynamic Time Warping teknikleri kullanılarak sözcük tabanlı, komut kontrol sistemi tasarlanmıştır. Sesin kaydedilmesi aşamasında sözcük kesimlerinin saptanması için bir çerçevedeki sıfırı geçiş sayısı ve ortalama enerji seviyesinden yararlanılmıştır. Sesin işlenmesi aşamasında kodlayıcı olarak LPC (Linear Predictive Coding) kullanılmış olup karşılaştırma ve eşleştirme aşamasında ise LPC parametreleri üzerinde DTW (Dynamic Time Warping) uygulanmıştır. Karşılaştırma sonucunda elde edilen en yakın şablon ile sözcük eşleştirilmesi gerçekleştirilerek algılanan komut, geliştirilen simulasyon arayüzüne yansıtılmakta ve istenen işleve dönüştürülmektedir. ABSTRACT Communication between human beings is done quickly and more efficiently by voice. Speech recognition systems therefore, aim to improve the human - computer interaction by using spoken language. Speech recognition process consists of speech recording and determining utterance, signal processing, comparison and matching; and finally processing the function to response the recognised word. In this study, Linear Predictive Coding and Dynamic Time Warping Techniques are used to design a word based command control system. Zeropass count and average of energy are used to determine the utterances in speech recording phase. LPC (Linear Predictive Coding) is used in signal processing phase, and DTW (Dynamic Time Warping) is used in comparison and matching phase on LPC coefficients. After comparison, the nearest matching pattern is selected, and the recognised command is reflected on the developed application interface and converted to a desired process. A. Kadir YALDIR Pamukkale Üniversitesi Bilgisayar Mühendisliği Bölümü, DENİZLİ akyaldir@pamukkale.edu.tr Anahtar Kelimeler: Ses Tanıma, Sözcük tabanlı ses tanıma, Türkçe Ses Tanıma, LPC, DTW, Telefon Simulasyonu 1. GİRİŞ Sesli iletişim, insanlar arası en hızlı ve etkin iletişim yöntemidir. Ses tanıma sistemleri, sesli iletişimin bu yaygın ve etkin kullanım avantajını insan bilgisayar arasında da kullanmayı amaç edinir. Bilgisayara veri girişi amacıyla geleneksel yöntem olan klavye, fare ve tablet gibi cihazlar kullanılmaktadır. Hızlı ve ekonomik veri girişi için ise tüm bu cihazların kullanımı özel çaba ve bazen uzun eğitimler gerektirmektedir. Konuşma dili ise insanın en yaygın olarak kullandığı araçtır. Ses tanıma sistemlerinin kullanılması ile İnsan - Bilgisayar iletişimi için, kullanıcının alışkın olduğu en yaygın iletişim aracını, yani doğal konuşma dilini kullanması bilgisayar kullanımını kolaylaştıracaktır. Rabiner ve Juang tarafından ses, akciğerlerden havanın dışarı atılması sonucunda oluşan hava akımının, ses sisteminde bir yerlerde sıkıştırılarak karıştırılmasından yayılan akustik dalgalar olduğu şeklinde tanımlanmıştır [1]. Ses tanıma ise Cole vd tarafından, mikrofon ya da telefon tarafından alınmış akustik bir sinyalin, kelime kümesine olan çevrim işlemi olarak tanımlanmaktadır [2]. İnsanlar arası sesli iletişim, beyinde konuşma seslerini üreten sinirsel hareketleri aktive eden bir düşünce ve niyetle başlar. Dinleyici, konuşmayı beynin anlayacağı sinirsel sinyallere dönüştüren işitme sistemi yardımıyla alır. Konuşmanın anlaşılması süreci, dinleyicideki işitme sistemi ile başlar. Huang vd'nin aktardığına göre ses ilk olarak, bir filtreler bankası şeklinde frekans analizi gerçekleştiren iç kulaktaki salyangoz'a iletilir. Bunu izleyen sinirsel dönüşüm süreci ile spektral sinyaller, işitsel sinirlere iletilen aktivite sinyallerine dönüştürülür [3]. Ses tanıma sistemleri ise, yukarıda bahsedilen bilgiler ışığında insanlar arası sesli iletişim sürecinde dinleyicinin yaptığı işlevleri yapay olarak gerçekleştirmeye çalışır.

2. SES TANIMA SÜRECİ VE KULLANILAN TEKNİKLER Ses tanıma süreci, sesin kaydedilmesi ile başlar, ifadenin saptanması, sesin işlenmesi, karşılaştırma ve eşleştirme yapılması ile sürer, son olarak ta algılanan kelimeye karşılık gelen işlevin gerçekleştirilmesi ile son bulur. Bu süreç boyunca ses çeşitli aşamalardan geçer. İlk olarak sesin sayısallaştırılması işlevi gerçekleştirilmektedir. Bu aşamada çeşitli teknikler kullanılarak, ses sinyalleri gürültüden arındırılmakta, ya da normalizasyon amacıyla bilerek gürültü yüklemesi yapılmaktadır. Sesin işlenmesi aşamasında filtrelerin iki kullanım amacı vardır. Bunlar ses sinyalinin ayrılması ve ses sinyalinin düzeltilmesidir. Smith, sinyal ayırmanın, sinyalin bozulma, gürültü veya diğer sinyallerle kirlenmesinde gerekli olduğunu; sinyal düzeltilmesinin ise sinyalin herhangi bir biçimde bozulmasında kullanıldığını söylemiştir [4]. Sinyal ayırma amacıyla en sık kullanılan filtreler doğrusal filtrelerdir. Şekil 1 de genelleştirilmiş doğrusal filtre modeli verilmiştir. Şekil 1. Genelleştirilmiş doğrusal filtre modeli. Finite Impulse Response (FIR) filtre modeli, giriş sinyali x(n) e karşılık, o anki ve önceki girişlerin ağırlıklı toplamı olan y(n) çıkışını oluşturur. Infinite Impulse Response (IIR) filtre modeli ise, giriş sinyali x(n) karşılık, o anki ve önceki girişlerin ağırlıklı toplamları ile birlikte, önceki çıkışların da ağırlıklı toplamını ifade eden y(n) çıkışını oluşturur. Eşitlik 1 de görüldüğü üzere p = 0 durumu, FIR filtre modelini, p 0 durumu ise IIR filtre modelini vermektedir [5]. şeklinde gösterimi gerekmektedir [1]. Bu işlem, analog sinyalin örneklenmesi ile yapılır. Sesin özelliklerinin korunması için örnekleme, dönüşümü yapılacak ses sinyalinin içerdiği en yüksek sıklıktaki frekansın en az iki katı sıklıkta gerçekleştirilir. Bu; örnekleme teoremi olarak ifade edilir. Rabiner ve Schafer tarafından ise şu şekilde aktarılmıştır: eğer bir sinyal x u (t); Ω >= 2πF N olmak üzere X u (jω) = 0 olacak şekilde bant sınırlı bir Fourier dönüşümüne X u (jω) sahipse; x u (t), 1/T > 2F N olacak şekilde ve - < n < olmak üzere X u (nt) şeklinde eşit olarak yerleştirilmiş örneklerle yeniden inşa edilebilir. Burada F N, Nyquist Frekansı olarak ifade edilir. Analog ses sinyalini tekrar oluşturabilecek şekilde; en uygun örnekleme frekansı F N den en az iki katı olacak şekilde seçilmesi gerektiği elde edilir [1]. Şekil 2. Sesin sayısallaştırılması [5]. Geliştirilen uygulamada, sesin örneklenmesi kayıt işlemiyle birlikte gerçekleştirilmektedir. İfadenin saptanması sırasında kullanılan teknikler, ses sinyalinin alınan bir çerçevedeki sıfırı geçiş sayısı ile toplam veya ortalama enerjinin hesaplanarak eşik değerlerle karşılaştırılması yöntemidir. Bu değerler eşik değerin üstündeyse, bu çerçevede konuşma bulunduğu anlamı çıkarılır. Geliştirilen uygulamada, başlangıç ve bitişin saptanması amacıyla bir çerçevedeki sıfırı geçiş sayılarının hesaplanmasından yararlanılmıştır. Buna ek olarak ta, bir çerçevedeki genliklerin karelerinin aritmetik ortalamasının karekökü ile ifade edilen Root Mean Square (RMS) değeri de kullanılmıştır (Eş. 2). (Eş. 2) Şekil 3 te, başlangıç ve bitişi bu şekilde belirlenmiş sıfır kelimesi ses sinyalini ve her bir fonemin yaklaşık başlangıç yeri manüel olarak etiketlenmiştir. (Eş. 1) Dijital sinyal işleme tekniklerinin kullanılabilmesi için analog sinyalin, yani konuşmanın, bir seri sayılar Şekil 3. Geliştirilen uygulama ile 8000 Hz ile örneklenerek kaydedilmiş sıfır kelimesi için başlangıç ve bitişi saptanarak belirlenmiş ses sinyali.

Ses sinyalinin pencereleme fonksiyonundan geçirilmesi de sıkça kullanılan bir yöntemdir. Geliştirilen uygulamada Hamming penceresi kullanılmıştır. Şekil 4 te, Şekil 3 teki verilmiş olan sıfır ses sinyalinin Hamming pencereleme fonksiyonundan çıkışı görülmektedir. Şekil 4. Hamming penceresinden geçirilmiş sıfır kelimesi için ses sinyali. Hamming penceresi için fonksiyon Eşitlik 3 te verilmektedir. Hamming penceresi yardımıyla ses sinyalinin merkezi belirginleştirilmektedir. (Eş. 3) Hamming pencereleme fonksiyonu çıkışı y(n), 4 nolu eşitlikle verilmiştir. (Eş. 4) Hamming penceresi de bir nevi filtre etkisi yaratmaktadır. Şekil 3 ve Şekil 4 beraberce incelendiğinde, Hamming pencereleme fonksiyonu çıkışında sinyalin daha düzgün olduğu, kelime başlangıç ve bitişinin daha belirgin hale geldiği açıkça görülmektedir. Sesin sayısallaştırılmasından, sonra sesin kodlanması gerçekleştirilir. Sesin kodlanması genel olarak iki sınıfta incelenmektedir. İlk olarak sesin tekrar oluşturulması amacını taşıyan dalga biçimi kodlaması (waveform coding), ikincisi ise kodlanmış sinyaldeki konuşma özelliklerini korumayı amaçlayan ses kodlayıcıları (vocoder) olarak ifade edilirler. Sesin kodlanması amacıyla geliştirilmiş çok fazla sayıda teknik bulunmaktadır. Bu tekniklerden bazıları, PCM, APCM, DPCM, DM, ADPCM, Filtreler Bankası, LPC, PLP, CELP, VSELP olarak verilebilir. Geliştirilen uygulamada kodlayıcı olarak, insan gırtlağı ve ağız yapısı özelliklerinin yanı sıra, ses özelliklerini de dikkate alan LPC kodlayıcısından yararlanılmıştır. Geliştirilen uygulamada, LPC kodlayıcı olarak Andy Fingerhut tarafından geliştirilmiş olan LPC10 kodlayıcısı kullanılmıştır [6]. Ses tanıma sürecinin sonraki aşaması karşılaştırma ve eşleştirmenin yapılmasıdır. Bu aşamada, işlenmiş, kodlanmış ve özellik çıkarımları yapılmış olan ses sinyalinin sistemde kayıtlı şablonlarla karşılaştırma ve eşleştirmesi yapılarak sesli ifadenin kelime karşılığı belirlenmektedir. Bu aşamada yaygın olarak kullanılan yöntemler: stokastik süreçlere dayalı Hidden Markov Model (HMM), örnek verilerle bir fonksiyonun benzetimi ve modellemesini yapan Yapay Sinir Ağları (YSA: ANN - Artifical Neural Network) ve iki veri serisinin zamana göre genişletilerek ya da daraltılarak zaman ekseninde örtüştürülerek karşılaştırmasını gerçekleştiren Dynamic Time Warping (DTW) olarak verilebilir. Geliştirilen uygulamada DTW algoritması kullanılmış ve çalışma anında LPC parametreleri hesaplanan ses sinyali ile sistemde kayıtlı LPC katsayılarından oluşan şablonlarla karşılaştırma ve eşleştirme yapılarak en yakın şablon belirlenmiştir. Ses tanıma sürecindeki en son aşama ise, eşleştirme sonrası kelime karşılığı saptanan sesli ifadenin işleve dönüştürülmesidir. Bu işlem, ses tanıma sisteminin amacına göre değişkenlik gösterir. Yazdırma dikte sistemlerinde, kelimenin metin düzenleyicisine yazdırılması; komut kontrol sistemlerinde komuta karşılık işlevin gerçekleştirilmesi bu aşamaya örnek olarak verilebilir. 3. LINEAR PREDICTIVE CODING-LPC Doğrusal önkestirim temel olarak, sesin, periyodik dürtü veya rasgele gürültü ile uyarılan, doğrusal ve zamana göre değişen bir sistemin çıktısı ile modellenebileceği prensibine dayanır. Bu model doğrusal bir filtre olarak Eş. 5 teki transfer fonksiyonu ile ifade edilmektedir. Burada p, LPC kodlayıcının seviyesi olarak ifade edilir [3]. (Eş. 5) 5 nolu eşitlikte, ters z-dönüşümü uygulandığında, 6 nolu eşitlik elde edilmektedir (Eş. 6) LPC, sıradaki örneğin, önceki bir seri örnekten yaklaşık olarak elde edilebileceği prensibiyle çalışır (Eş. 7). (Eş. 7)

Tahmin sonucu elde edilen örneğin asıl örnekle olan farkının; yani hatanın kareleri toplamının minmizasyonu için bir seri parametre hesaplanmaktadır (Eş. 8). (Eş. 8) Hesaplanan bu parametreler LPC parametreleri olarak ifade edilirler. 8 nolu eşitliğin çözümü ile p sayıda LPC parametresi hesaplanmaktadır. 4. DYNAMIC TIME WARPING - DTW Belirli bir sözcüğün seslendirilmesi, kişiden kişiye hatta aynı kişinin farklı zamanlarda seslendirmesi ile zaman içinde farklılık gösterebilmektedir. Aynı sözcüğün seslendirilmesi, bir seslendirmede uzun, bir seslendirmede ise daha kısa zamanda gerçekleştirilebilir. Aynı zamanda, ses sinyalinde kimi fonemler daha uzun, kimileri ise daha kısa yer almaktadır. Dynamic Time Warping algoritması yardımıyla, bu iki seslendirme, zaman içinde yayılarak ya da daraltılarak birbirine yaklaştırılmaya çalışır. Yani bu iki seslendirmenin, zaman olarak örtüştürülmesi işlevi gerçekleştirilir. DTW, sözcük tabanlı ses tanıma sistemlerinde etkin ve sıkça kullanılan bir yöntemdir. Bu yaklaşımla, çalışma anında tespit edilen sözcük kesimlemesi, sistemde kayıtlı sözcük şablonları ile seslendirme zamanları örtüştürülerek karşılaştırılması gerçekleştirilebilir. Şekil 6. LPC parametreleri üzerine DTW algoritmasının uygulanması 5. GELİŞTİRİLEN SİMULASYON UYGULAMASI Geliştirilen simulasyonun modeli, Şekil 7 de 1. seviye veri akış diyagramı ile verilmektedir. Geliştirilen simulasyon, kişiye bağımlı bir ses tanıma sistemi olarak tasarlanmıştır. Bu nedenle şablonların kişiye bağlı olarak güncellenmesi gerekmektedir, güncelleme işlemi şablonların kaydedilmesi işleviyle sağlanmaktadır. Uygulamada, sürekli bir ses kayıt işlemi gerçekleştirilmektedir. Sesin kaydedilmesi sürerken, bir yandan da, kaydedilen sesteki ifadelerin saptanması gerekmektedir. Sonrasında saptanan sesli ifadelerin işlenmesi ve şablonlarla karşılaştırılması, karşılaştırma sonucu eşleştirme yapılması da paralel olarak yürütülmektedir. Belirlenen kelimeye karşılık gelen işlevin gerçekleştirilmesi ve konuşmacıya algılama sonucunun yansıtılması da süreklilik gerektirmektedir. Şekil 5 te iki ses sinyali arasında DTW algoritmasının zaman ekseninde uygulanması gösterilmektedir. Şekil 5. Konuşma sinyaline doğrudan DTW algoritmasının uygulanması [7] Bu algoritmanın bir diğer kullanılma şekli ise; şablon olarak kayıtlı birden çok parametrenin ayrı ayrı DTW algoritması yardımıyla karşılaştırma işlemi için hazırlanması ve beraberce değerlendirilmesidir [8]. Geliştirilen modelde ise, DTW algoritması 3 boyutlu dinamik veri modeli yardımıyla gerçekleştirilmiştir. Şekil 6 da LPC parametreleri üzerine DTW algoritmasının uygulanması gösterilmektedir. Şekil 7. Geliştirilen uygulama modeli. Geliştirilen uygulamada, bütün bu sayılan işlevler süreklilik gerektirdiğinden, sistem çoklu kullanımlı (multi-threaded) olarak tasarlanmıştır. Sistem için gerekli ana işlevler tespit edilmiş ve bu işlevler ayrıştırılarak dört ayrı iş parçacığına (thread) bölünmüştür. Bunlar Ana iş parçacığı, Kuyruk analizcisi, İfade kuyruğu analizcisi ve LPC Kuyruğu analizcisidir. Şekil 8 de kullanıcı grafik arayüzü verilmektedir.

Sesin işlenmesi aşamasında, İfade kuyruğu analizcisi tarafından, İfade kuyruğu izlenmektedir. Sesli ifadeler sırasıyla buradan alınarak, önce Hamming pencereleme fonksiyonundan geçirilerek ifadenin orta kesimleri belirginleştirilmekte ve ses sinyali düzeltilmektedir. Şekil 8. Geliştirilen simulasyonun kullanıcı grafik arayüzü. Ana İş Parçacığı, kullanıcı grafik arabirimi olup, sesin kaydedilmesi, işlevin gerçekleştirilmesi ve şablonların kaydedilmesi aşamalarını içerir. Kuyruk Analizcisi, ses kuyruğunun izlenmesinden sorumlu olup, aynı zamanda sesli ifadelerin başlangıç ve bitişini belirleyerek İfade kuyruğuna eklemektedir. İfade Kuyruğu Analizcisi, ifade kuyruğunun izlenmesinden sorumlu olup, sesin işlenmesi aşamasını yürütmektedir. LPC ile kodlama bu iş parçacığında yapılmaktadır. LPC Kuyruğu Analizcisi, LPC kuyruğunun izlenmesinden sorumludur, karşılaştırma ve eşleştirme bu iş parçacığı tarafından yapılmaktadır. Sesin kaydedilmesi, Başlat düğmesine basılarak kullanıcı tarafından başlatılmaktadır. Sesin kaydedilmesi, kullanıcı tarafından Durdur düğmesine basılana dek sürekli olarak devam etmektedir. Sonrasında bu örnek serisi, çerçeveler halinde LPC kodlayıcıya gönderilmektedir. LPC kodlayıcısı, her bir çerçeveye karşılık, RMS değeri, perde değeri ve 10 LPC parametresinden oluşan toplam 12 değer göndermektedir. Bu değerlerin bir serisi oluşturulmakta ve tamamlandığında LPC kuyruğuna eklenmektedir. Şablonların kaydedilmesi, kullanıcı arayüzünde Kaydet düğmesine basılarak yapılabilmektedir. Bu işlem için uygulamada ses kayıt işlemi başlamadan önce Kayıt onay kutusu seçili olması gerekmektedir. Uygulama bu şekilde başlatıldığında, karşılaştırma ve eşleştirme yapan LPC kuyruğu analizcisi iş parçacığı başlatılmamakta ve sistemde şablon kayıt işlemi gerçekleştirilmektedir. Bu şekilde sistemin eğitimi gerçekleştirilmektedir. Şablonlar kaydedilirken, sistem tarafından beklenen isim yapısı ŞABLON_DİZİN_ETİKETİ + _ + ŞABLON_NUMARASI şeklindedir. Burada ŞABLON_NUMARASI ve dosya uzantısı (.lpc) kayıt esnasında otomatik olarak verilmektedir. Tüm kelimeler için bu şekilde şablon kaydı gerçekleştirilmesi gerekmektedir. Şablonlar uygulama dizininin altında \Pattern dizininde saklanması gerekmektedir. Örnek şablon dizini Şekil 9 da verilmektedir. Sesin kaydedilmesinde, Microsoft un dalga biçimi ses servisleri için geliştirmiş olduğu Uygulama Programlama Arayüzü (Microsoft Waveform Audio Services API) kullanılmıştır. Sesin kaydedilmesi esnasında, ses kayıt cihazından gelen ses verisi, gelir gelmez Ses kuyruğu na atılmakta ve boş bir bellek bölgesi, sisteme kayıt için gönderilmektedir. Bu sayede kayıt sürekliliği sağlanmakta ve konuşma kayıpları önlenmektedir. Sesli ifadelerin saptanması amacıyla, Ses kuyruğu, Kuyruk Analizcisi tarafından, sürekli olarak izlenmekte ve ses kuyruğundaki ses parçacıkları sırasıyla alınarak, her bir parça çerçevelere bölünmektedir. Alınan her çerçevede RMS değeri ve sıfırı geçiş sayısı hesaplanmaktadır. Hesaplanan bu değerler, sistemde tanımlı eşik değerlerle karşılaştırılmak suretiyle, bu çerçevede konuşma olup olmadığı belirlenmektedir. Bu şekilde sesli ifadeler başlangıç ve bitişi ile birlikte saptanarak, İfade kuyruğuna eklenmektedir. Şekil 9. Örnek şablon dizini Karşılaştırma LPC kuyruk analizcisi iş parçacığı tarafından yapılmaktadır. LPC kuyruğundan alınan LPC parametre serisi, tüm kayıtlı şablonlarla DTW

algoritması ile birebir karşılaştırılmakta ve en yakın şablon aranmaktadır. Tüm şablonlarla karşılaştırma tamamlandıktan sonra en yakın şablonla eşleştirme yapılmakta ve bu şablonun ŞABLON_DİZİN_ETİKETİ, Ana iş parçacığına iletilerek, işlevin arayüze yansıması gerçekleştirilmektedir. 6. SONUÇLAR Yapılan araştırmalar ve çalışmalar doğrultusunda başarımın zaman içinde çokça değişkenlik gösterdiği saptanmıştır. Bunun en büyük nedeninin ise sesin, bir seslendirilişi ile bir diğer seslendirilişi arasında, çokça farklılık göstermesi olarak görülmüştür. Değişkenliğin bir diğer bir neden ise, ortam gürültüsü olduğu çalışmalar sırasında tespit edilmiştir. and System Development (1st Ed.) Prentice Hall PTR, ISBN 0-13-022616-5, 2001. [4] Smith, S.W., The Scientist s and Engineer s Guide to Digital Signal Processing (2nd Ed.) California Technical Publishing, ISBN 0-96-601764-1, 1999. [5] Robinson, T., Speech Anaylsis Tutorial, http://svrwww.eng.cam.ac.uk/~ajr/ SpeechAnalysis/, 1998. [6] Fingerhut, A., U.S. Department of Defense LPC-10 2400 bps Voice Coder, http://www.arl.wustl.edu/~jaf/lpc/lpc10-1.5.tar.gz, 1997. [7] Kale K. R., Dynamic Time Warping, http://www.cnel.ufl.edu/~kkale/dtw.html, 2006. [8] Coleman, J., Introducing Speech and Language Producing, Cambridge University Press, ISBN 0-52- 153069-5, 2005. Sesin, zaman içinde seslendirilmesinde görülen aşırı değişkenlik nedeniyle, en yakın şablonun bulunması ve doğru kelimenin her zaman tespit edilmesi pek mümkün olmamaktadır. Bu nedenle önerilebilecek yaklaşım, farklı zamanlarda kayıtlar sonrası ortaya çıkan şablonlardan, ortalama bir şablon hesaplanması ve tanıma için bu şablonun kullanılması başarımı arttırabilir. Çalışma sonrasında varılan bir diğer sonuç ise, çalışma kapsamında öngörülen LPC parametreleri üzerinde DTW uygulanması ile kelimelerin en yakın olanının tespit edilmesi tekniğinin, kelime tanıma konusunda tek başına çok başarılı olmamasıdır. Sadece LPC parametreleri üzerinde DTW uygulanması yerine, kaydedilmiş sesin farklı tekniklerle başka özellikleri de çıkarılarak LPC ye ek parametreler olarak saklanabilir ve bu özelliklerin tümünün üzerinde DTW algoritmasının uygulanması ile başarım arttırılabilir. Geliştirilen bu modelin başarımı arttırılarak, Türkçe uyumlu telefon otomasyon uygulamalarında, fiziksel engelli kişilerin bilgisayar kullanımlarının sağlanmasında, araç sürücülerinin belli işlevleri sesli komutlarla gerçekleştirmelerinde ve üretim tesislerinde veri toplama amacıyla kullanılabilir. KAYNAKLAR [1] Rabiner, L., Juang, B., 'Fundamentals of Speech Recognition', ISBN: 0-13-015157-2, 1993. [2] Cole, R.A., Mariani, J., Uszkoreit, H., Zaenen, A. and Zue, V., Survey of the State of the Art in Human Language Technology, http://cslu.cse.ogi.edu/hltsurvey/hltsurvey.html, 1996. [3] Huang, X., Acero, A. and Hon, H.W., Spoken Language Processing: A Guide to Theory, Algorithm