Ini merupakan kelanjutan dari pertanyaan sebelumnya .
Saya mencoba menganalisis suara pernapasan dan dengkuran, dan sementara saya bisa mendeteksi dengkuran dengan cukup baik sekarang, pernapasan adalah tantangan yang lebih besar.
Saya telah belajar bahwa jika saya memecahkan rentang frekuensi yang dianalisis (sekitar 4KHz, sampel pada sekitar 8KHz, dengan ukuran 1024) menjadi sekitar 5 subrange, sangat sering salah satu subrange menunjukkan sensitivitas yang baik (menggunakan perbedaan spektral) yang terkubur dalam kebisingan di kisaran keseluruhan. Caranya adalah menentukan subrange mana yang harus "dipercaya" kapan.
Mungkin subrange "dapat dipercaya" akan menunjukkan variabilitas pada tingkat antara 2Hz dan 0,05Hz, sedangkan subrange "buruk" akan berperilaku lebih acak, dengan sebagian besar variasinya berada pada interval yang lebih pendek.
Saya dapat menggabungkan beberapa jenis algoritma untuk menghaluskan nilai pada resolusi sub-detik dan kemudian menghitung variabilitas dalam interval yang lebih lama, tapi saya ingin tahu apakah tidak ada algoritma "kalengan" untuk hal-hal semacam ini - sesuatu dengan mungkin sedikit teori di baliknya?
Ada saran?
[Catatan: Saya menyadari bahwa secara teori, seseorang dapat menggunakan FFT untuk mengekstrak info ini, tetapi itu sepertinya menggunakan tongkat baseball untuk membunuh kutu. Mungkin sesuatu yang sedikit lebih ringan?]
Ditambahkan:
Dalam arti (menggunakan analogi) saya mencoba mendeteksi sinyal "baseband" dalam transmisi RF (hanya "RF" adalah frekuensi audio, dan "baseband" di bawah 8Hz). Dan, dalam arti tertentu, "RF" adalah "spread spectrum" - suara yang ingin saya deteksi cenderung menghasilkan banyak harmonisa dan / atau memiliki beberapa komponen frekuensi terpisah, jadi jika satu pita spektrum terlalu berisik saya dapat mungkin memanfaatkan yang lain. Tujuannya adalah untuk pada dasarnya menentukan beberapa metrik yang menyerupai SNR untuk berbagai pita frekuensi, dengan asumsi bahwa sebagian besar "noise" adalah> 2Hz dan sinyal saya kurang dari 2Hz.
Saya memiliki input untuk algoritma ini amplitudo mentah (jumlah amplitudo FFT pada semua frekuensi termasuk) untuk setiap band, diukur pada interval 8Hz.
(Perlu dicatat bahwa, sementara saya belum melakukan pengukuran SNR formal, SNR keseluruhan di seluruh spektrum yang diproses tampaknya sering berada di dekat atau di bawah 1,0 - jika Anda secara visual mengamati amplop suara dalam alat seperti Audacity, tidak ada modulasi dari amplop terlihat (meskipun telinga dapat dengan jelas membedakan suara pernapasan). Inilah sebabnya mengapa perlu untuk menganalisis band untuk menemukan mereka yang memiliki SNR yang layak.)