Merhaba,
Geniş kampsamlı bir araştırma gerektiren ses algılama projesi ile ilgili genel kavram ve yaptığımız çalışmaları bu raporumuzda dile getirmeye çalışacağız.
Genel olarak hedefimiz; fiziki ortamdan bilgisayar ortamına alınan insan sesinin ne ifade ettiğini tanımlamaya yöneliktir. İlk olarak çalışmamızda yaptığımız yazılım uygulamasıyla on adet tek veya iki heceli kelimeleri bilgisayar ortamından tanınmasını sağlamak.
İlk olarak ses işlemeyle ilgili genel tanımlamalar üzerinde yaptığımız araştırmalar sonucunda edindiğimiz bilgileri ifade edelim:
Ses Sinyallerinin Dijital Ortama Aktarılması
Bir sinyal örneği olan ses, doğada çok geniş bir frekans aralığından değer alan frekanslarla, değişik genliklerde oluşur ve anlık değildir. Zamana yayılır, çok küçük zaman dilimlerinde meydana gelen genlik değişimlerinden meydana gelir.
Dolayısıyla tamamının tüm doğallığıyla tam olarak bilgisayar ortamına aktarılması mümkün olamayabilir. İşte bu yüzden diğer sinyaller gibi ses sinyali de dijital ortama aktarılmadan önce örnekleme(sampling) denen işlemden geçirilir.
Örnekleme
Örnekleme, sürekli bir sinyalden belli zaman aralıklarıyla örnek toplanması işlemine denir. Aslında bu hiç yapmadığınız şey değil. Şöyle bir örneğin oldukça açıklayıcı olacağını düşünüyorum; size f(x)=sin(x) fonksiyonu verilsin ve sizden -2pi +2pi aralığında bu fonksiyonun grafiğini çizmeniz istensin.
Fonksiyon bu aralıklarda sonsuz farklı değer alır. Grafiği kağıt üzerinde gösterebilmeniz için normalde sonsuz değeri fonksiyona yerleştirip sonsuz farklı nokta elde ederek sürekli bir çizgi elde etmeniz gerekirdi. Neyse ki buna gerek yok, zaten öyle de yapmazsınız.
Bu fonksiyonu sadece belli değerlerde hesaplayarak yani aslında örnekleyerek rahatlıkla çizebilirsiniz. İşte örneklemenin amacı da yöntemi de budur…
Sample Rate (Örnekleme Frekansı/Örnekleme Oranı)
Örnekler rastgele toplanmaz, belli bir periyot ve dolayısıyla frekans ile alınır. Örneğin CD kalitesinde ses elde etmek, bir ses sinyalinden saniyede 44100 adet örnek toplanması gerekir. Bu, sesin 44100 hertzlik frekans ile örneklendiğini ifade eder. Örnekleme frekansı, sinyalin gerçek frekansından bağımsızdır.
Örnekleme Oranı ve Ses Kalitesi
Örneklenen sinyalin netliği veya çözünürlüğü alınan örnek sayısı ile doğru orantılıdır. Yani ses sinyali hakkında ne kadar çok veri kaydetmişsek onu bir bilgisayara o kadar iyi taklit ettirebiliriz. Yukarıdaki grafik çizme örneğine dönelim.
Eğer sinüs fonksiyonunu her seferinde pi/2 adım ilerleyerek hesaplayıp noktaları yerleştirip doğrusal olarak birleştirirseniz, oluşan şeklin sinüs grafiğine benzemediğini görebilirsiniz. Ancak -2pi +2pi aralığında 1000 tane nokta hesaplar, noktaları birleştirirseniz, oluşacak grafik işte o zaman sinüs grafiğine benzemeye başlayacaktır.
Nokta sayısı arttıkça, dönüm noktaları, extremum noktaları ve bombeli kısımlar belirginleşecek, grafik her seferinde orjinaline daha da yaklaşacaktır.
Kanal Sayısı
Ses dosyalarında kanal sayısı, bir bakıma ses dosyalarının içlerinde taşıdıkları verilerin kaç farklı örnekleme ile oluşturulduğunu gösterir. Yani her kanal ayrı bir ses dosyası gibi düşünülebilir ve dosya oynatıldığında, her kanaldaki ses verisi dizisi aynı anda oynatılır.
Böylece ses daha gerçekçi gelir, sesin yönü hakkında fikir edinmek mümkün olur. Tek kanallı ses için mono(tek), çift kanallı olanı için de stereo terimi kullanılır.
Bit Rate (Bit Değeri/Bit Oranı)
Sinyalden alınan her bir örnek için, bilgisayarda sabit bir alan ayrılır. Bu alan 8bit, 16bit, 32bit … ve katları olabilir. Bu değerlerin 8in katı ve 2nin birer kuvveti olmasının sebebi her örneğin en az 1 bayt ve katları ile ifade edilmek istenmesidir. Örnekleri saklayan verinin boyutu arttıkça ses kalitesi de artar.
Çünkü boyutun artması, genlik aralığını genişletir; örneklenebilecek benzersiz genlik değeri sayısında artış olur
Blok ve Blok Boyutu (Blok Alignment)
Bu değer, normal bilgisayar kullanıcısının karşısına pek çıkmaz, ses dosyalarının içine, kendilerini açacak olan programa bilgi vermek amacı ile hesaplanıp yazılır. Blok, tüm kanallarda anlık olarak sese dönüştürülmeye hazırlanan örneklerden oluşur.
Yani her blokta kanal sayısı kadar örnek bulunur. Blok boyutu, kanal sayısı ile her örneğe ayrılan boyutun çarpımı ile bulunabilir.
Genel olarak dijital ortama aktarılan bir işaretin analizini yapmak zordur bundan ötürü gelen işaretin analizi farkli bir formda yapılır. Bizim çalışmamızda aldığımız işaret zaman(gelen işaret zaman modundadır) modundan frekans moduna dünüştürülür bundaki amacımız gelen işaretin analizini daha sağlıklı bir şekilde yapmaktır.
Şimdi çalışmamızda işareti frekans moduna çevirmek için kullandığımız yöntemi genel olarak ortaya çıkış tarih ile beraber inçeleyelim.
Ayrık Fourier dönüşümü (DISCRETE FOURIER TRANSFORM)
Ayrık Fourier dönüşümü ile elde edilen ck katsayıları karmaşık sayılardır. Ancak c1 öğesi gerçeldir. Geri kalan karmaşık sayılar aşağıdaki bağıntıya göre birbirlerinin eşlenikleridir.