Bu benim horlama uygulamamdan bir yan gezi .
Ses sinyalinin otokorelasyonunu üretmede bir çatlak yaşadım, bunun horlama / nefes alma ile çok iyi ilişkili olup olmadığını görmek için. Ben basit bir algoritma gidiyor (iyi bir işaret olan sıfırıncı eleman olarak 1.0 üretir), ama ben otokorelasyon güçlü olup olmadığını belirlemek için sonucu nasıl değerlendirileceğini merak ediyorum, ve belki de daha, nasıl ayırmak için kullanmak çeşitli olası ses kaynakları.
Soru # 1: Otokorelasyonun RMS'si (atlama elemanı sıfır) herhangi bir "kalite" ölçüsü mü yoksa daha iyi bir şey mi var?
Ayrıntılı olarak açıklamak gerekirse: Yüksek derecede otokorelasyonlu bir sinyali daha az otokorelasyonlu olandan ayırt etmek için sadece sayısal bir yol (bir tabloya "bakmak") istiyorum.
(Başka hangi soruların sorulacağını gerçekten bilmiyorum.)
Bazı erken sonuçlar: Bazı durumlarda otokorelasyon (RMS veya pik) bir horlamada dramatik bir sıçrama gösterir - tam olarak görmek istediğim yanıt. Diğer durumlarda, bu önlemlerde belirgin bir hareket yoktur (ve bu iki yanıta iki ardışık horlama olabilir) ve yüksek gürültülü durumlarda ölçümler bir horlama sırasında gerçekten (hafifçe) daldırılır.
Güncelleme - 22 Mayıs: Sonunda bunun üzerinde çalışmak için biraz daha zamanım var. ( Kelimenin tam anlamıyla bir acı olan başka bir uygulamadan çıkarıldım .) Otokorelasyonun çıktısını bir FFT'ye besledim ve çıktı biraz ilginç - bir horlama başladığında orijin yakınında oldukça dramatik bir zirve gösteriyor.
Şimdi bu zirveyi bir şekilde ölçmek sorunuyla karşı karşıyayım. Garip bir şekilde, mutlak büyüklük açısından en yüksek zirveler diğer zamanlarda ortaya çıkar, ancak zirvenin aritmetik ortalamaya oranını denedim ve bu oldukça iyi izler. Öyleyse FFT'nin "doruk noktası" nı ölçmenin iyi yolları nelerdir? (Ve lütfen bir FFT almam gerektiğini söyleme - bu şey zaten kendi kuyruğunu yutmaya yakın. :))
Ayrıca, ortada sıfır (tanım 1.0 büyüklüğündedir) ile beslenen otokorelasyon sonuçlarını aynaya yansıtırsam FFT'nin kalitesinin bir şekilde iyileştirilebileceği aklıma geldi. Bu "kuyrukları" her iki ucuna da koyacaktır. Bu (muhtemelen) iyi bir fikir mi? Ayna görüntüsü dik mi yoksa ters mi olmalı? (Tabii ki, söylediklerinden bağımsız olarak deneyeceğim, ama detaylar hakkında belki bazı ipuçları bulabileceğimi düşündüm.)
Denenmiş düzlük--
Test senaryolarım kabaca "iyi davranılmış" kategoriye ve "sorunlu çocuklar" kategorisine ayrılabilir.
"İyi kalpli" test vakaları için otokorelasyonun FFT'sinin düzlüğü çarpıcı biçimde düşer ve bir horlama sırasında pikin ortalama otokorelasyona oranı artar. Bu iki sayının oranı (pik oranın düzlüğe bölünmesi) özellikle hassastır, bir nefes / horlama sırasında 5-10x tırmanma gösterir.
Ancak "sorunlu çocuklar" için sayılar tam tersi yöndedir. Tepe / ortalama oran hafifçe düşerken, düzlük aslında% 50-100 oranında artar
Bu iki kategori arasındaki fark (çoğunlukla) üç yönlüdür:
- Gürültü seviyeleri "sorunlu çocuklarda" (genellikle) daha yüksektir
- "Sorunlu çocuklarda" ses seviyeleri (hemen hemen her zaman) daha düşüktür
- "Sorunlu çocuklar" daha fazla nefes alma ve daha az gerçek horlamadan oluşur (ve her ikisini de tespit etmem gerekir)
Herhangi bir fikir?
Güncelleme - 5/25/2012: Zafer dansı yapmak için biraz erken, ama bir noktaya ilişkin otokorelasyonu yansıttığımda, bunun FFT'sini aldım ve daha sonra spektral düzlük yaptım, kombine oran şemam iyi bir sıçrama gösterdi birkaç farklı ortam. Otokorelasyonun yansıtılması FFT'nin kalitesini artırıyor gibi görünüyor.
Bununla birlikte, küçük bir nokta, yansıtılan "sinyalin" "DC bileşeni" sıfır olduğu için, sıfırıncı FFT sonucunun her zaman sıfır olması ve bu da sıfır içeren geometrik bir ortalamanın kırılmasıdır. Ancak sıfırıncı öğeyi atlamak işe yarıyor gibi görünüyor.
Aldığım sonuç, horlamaları / nefesleri tek başına tanımlamaktan çok uzak, ancak oldukça hassas bir "onay" gibi görünüyor - "zıplamayı" almazsam, muhtemelen bir horlama / nefes değil.
Onu yakından analiz etmedim, ama olan şeyin nefes / horlama sırasında bir yerde ıslık sesi çıktığı ve tespit edilen şeydeki ıslık olduğunu sanıyorum.