Şimdi Ara

FFT ve Ses Analiz Devresi ?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
1.411
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Amacim hh bir mikrokontrolor ile bir devre yapip bebegin sesini alip eger aglama ise bunu algilamak , 2 temel sorum olacak ,

    1) Bebek sesini nasil bir mikrofonla almaliyim ? Ne ile ne kadar yükselttikten sonra mikrokontrolörümün ün ADC girisine vermeliyim ? Ozellikle ses alma ve yükseltme kısmı benim icin onemli

    2) 1. yi basardim diyelim , 2 ye gecerken tecrübeli olanlarin tavsiyelerin ihtiyacim var , adc isleminden sonra dijitale cevirdigim ses sinyali üstünde FFT ile nasıl islem yapmaliyim ?

    Yardım edeceklere simdiden tesekkurler...



  • ağlama sesi muhtemelen yüksek frekanslı bir sestir bunun short-term FFT sini al mesela 20mslik kısmının sonra FFT nin 0-8kHz lik kısmının altında kalan alanı hesaplat bu sinyalin enerjisi olur. daha sonra bu sinyalin birde 2kHz-8kHz arasında altında kalan alanı hesaplat bu yüksek frekanstaki enerjisidir. atıyorum daha sonra yüksek frekans enerjisini tüm enerjiye böl mesela bu normal seslerde belli bir değerin altında kalı atıyorum mesela %10 un eğer bu enerji %10 u geçiyorsa yüksek frekans çoğalmıştır bebeğin ağlama ihtimali yüksektir, FFT kısmı bence çok kolay bu işlemin hatta bir kaç farklı bebekte deneme yap MATLAB da ortalama olarak bu eşik değerini bulursun tabi bebekleri birkaç kez ağlatman gerekecektir :)
  • @ltfx

    Merak ettigim bi sey var.

    Dediginiz gibi yaptik diyelim. Daha sonra sesi teype yukledik fakat kasedi tersden caldirdik.

    Orjinal ses ile tersden calinan ses sistemi ayni sekilde etkilemez mi?

    (Aglamakla ayni sonucu verecek pek cok ses bulunabilir)
  • evet tersten çalsanızda tamamen aynı sonucu elde edersiniz sadece fazı 180 derece kaymış olur ama burda 20ms lik short-term FFT söz konusu mesela bundan 50 sefer yapıp ortalaması alınıp daha duyarsız hale getirilebilir sadece bir öneri ayrıca dikkat ederseniz ben "bebeğin ağlama ihtimali yüksektir" dedim kesin bebek ağlıyor demek değildir daha bir sürü yöntem buluna bilir benim söylediğim sadece basitçe ilk aklıma gelen yöntemdi.

    yani şöyle desem daha mı iyidi bir hidden markov modeli oluştur fft den aldığın datalarla bu modeli değiştir referans modelini mikroişlemciye göm gelen her ses için aynı yöntemler modeller oluşturup iki modelin ne kadar benzediğine göre karar verdir

    yada 1000 al 500 tane bebeği ağlat 500 tanesinden normal bebek sesleri al bir neural network ku iki çıkışı olsun bu neural network ü bebeklerden aldığın datalarla eğit daha sonra yeni bebek ağlaması olunca bebek ağlama sesinin fft katsayılarını neural network e ver doğru kararı o verecektir.

    filan bu daha tatmin edici bir cevap mı olurdu ama her durumda bu yöntemleri de aldatacak sesler bulabilirsiniz. ben sadece bebek ağlamasını tanımanın çok kritik bir olay olmadığını uzaya mekik göndermediğimizi düşündüğüm için bu yöntemi söyledim

    ama tabi elbette siz makinayı kandırabilirsiniz, bunu yapabileceğinize inancım sonsuz ;)



    < Bu mesaj bu kişi tarafından değiştirildi lftx -- 23 Temmuz 2006; 19:48:16 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.