Rata-rata domain waktu FFT vs frekuensi rata-rata

12

Saya memiliki beberapa uji coba data fisiologis. Saya melakukan analisis berbasis frekuensi untuk menganalisis daya (amplitudo) pada frekuensi tertentu yang menarik. Apakah rata-rata beberapa percobaan dengan panjang yang sama dan kemudian mengambil FFT tunggal dari sinyal rata-rata vs komputasi FFT untuk setiap percobaan dan kemudian rata-rata frekuensi bins sama? Dalam prakteknya saya menemukan ini bukan untuk menjadi kasus.

Secara khusus, sinyal secara alami memiliki komponen 1 / f yang kuat dan ini ditekankan jika saya menghitung FFT masing-masing percobaan individu dan kemudian rata-rata amplitudo (bagian nyata) dari masing-masing frekuensi bin. Apakah keduanya setara? adakah cara yang tepat untuk melakukan sesuatu? atau dalam kondisi berprinsip apa sebaiknya pilihan antara rata-rata domain waktu vs frekuensi bin rata-rata dibuat?


sumber

Jawaban:

8

Izinkan saya mengklarifikasi.

  • Transformasi Fourier tidak mewakili histogram sinyal. Transformasi Fourier adalah transformasi linier yang mengambil sinyal dari domain waktu (fungsi kompleks) ke domain frekuensi (fungsi kompleks lain). Dibutuhkan fungsi kompleks ke fungsi kompleks lain.
  • Transformasi Fourier adalah linear sebagai poster di atas keluar runcing.
  • Fase dalam sampel Anda penting seperti yang ditunjukkan di atas. Jika data percobaan demi percobaan bervariasi dalam fase, maka Anda tidak ingin rata-rata sebelum melakukan transformasi Fourier, tetapi Anda juga tidak ingin rata-rata setelah transformasi Fourier. Anda ingin rata-rata setelah transformasi dan norma Fourier. Saya akan menguraikan di bawah ini sejauh apa yang perlu dilakukan.

Masalah utama di sini adalah bahwa pertanyaannya salah. Ini bukan "haruskah saya mengambil transformasi Fourier sebelum rata-rata atau setelah rata-rata". Karena tidak ada bedanya karena linearitas transformasi Fourier.

Pertanyaan yang benar untuk ditanyakan adalah "haruskah saya mengambil amplitudo dari transformasi Fourier sebelum rata-rata atau setelah rata-rata". Untuk pertanyaan ini, jawabannya adalah sebelumnya.

Berikut detailnya.

Misalkan data sampel Anda diwakili oleh urutan:

d1=d1[n1],d1[n2],...d1[nN]

d2=d2[n1],d2[n2],...d2[nN]

d3=d3[n1],d3[n2],...d3[nN]

...

dM=dM[n1],dM[n2],...dM[nN]

d1,...dMn1,...nN

F1=j=1M|F{dj}||F{j=1Mdj}|=F2

F|F|

dj[ni]i,jF{dj}|F{dj}|

Adapun apa yang harus Anda lakukan, Anda harus mengambil transformasi Fourier dari uji coba individu (melalui FFT), dapatkan amplitudo uji coba individu, dan rata-rata bersama-sama.

1/f1/f

1/f1/f

1/f

1/f|F{x(t)}|=|1/f|x(t)

1/f

Sama pentingnya dengan pertanyaan, apa yang rata-rata membeli Anda? dan yang lebih penting adalah bagaimana menafsirkan hasilnya? Dengarkan besok untuk diskusi yang lebih mendalam: hal

thang
sumber
1
+1 Terima kasih telah menjelaskan. Saya merasa bahwa saya salah memahami masalah mendasar di balik pertanyaan, dan saya pikir ini lebih ke inti dari itu.
jstarr
2

Pertama, FFT adalah suatu algoritma. Transformasi ini disebut Transformasi Fourier! Ini mewakili histogram dari sinyal. Dalam kasus diskrit, pembacaan tinggi dalam domain frekuensi berarti banyak energi pada frekuensi itu.

Anda sebaiknya tidak membuat rata-rata data sebelum FFT karena informasi fase akan menyebabkan perubahan signifikan dalam data.

Bayangkan 2 sampel masing-masing terdiri dari cosinus murni. Di dunia nyata Anda tidak akan pernah menangkap cosinus ini pada titik awal yang sama persis. Satu cosine akan bergeser reletive ke yang lain (atau keduanya memiliki shift yang berbeda reletive ke awal. Secara matematis ini dikatakan y1 = cos (wt-A) y2 = cos (wt-B) di mana A & B bergeser. Dalam model Anda ini dua lebih baik muncul sebagai hal yang sama. Dengan sedikit matematika saya dapat memilih nilai-nilai ini sehingga y2-y1 = 0. Rata-rata nol adalah nol dan sama sekali bukan apa yang Anda inginkan. Ini adalah masalah fase.

Jika tujuan Anda adalah untuk menemukan spektrum rata-rata yang Anda harus rata-rata di seluruh spektrum, jangan rata-rata sinyal!

Mikhail
sumber
Terima kasih untuk itu. Tentu saja ada kekhawatiran bahwa jika ada kebisingan dengan perbedaan fase yang tepat dari percobaan ke percobaan itu akan membatalkan semua atau sinyal pada frekuensi yang diinginkan. Saya masih tidak jelas mengapa 1 / f ditekankan oleh rata-rata frekuensi bin daripada rata-rata domain waktu diikuti oleh FFT.
@ user1487551 Apa arti dari komponen 1 / f yang kuat? Transformasi Fourier terbalik dari 1 / f adalah fungsi tanda dan mungkin mengisyaratkan bahwa data Anda termasuk bongkahan besar ketika sistem stabil. Anda mungkin harus menunjukkan plot atau beberapa data.
Mikhail
1
Perhatikan bahwa Anda dapat melakukan rata-rata waktu jika Anda memiliki referensi fase yang dapat Anda sinkronkan pengambilan data, dan ini bisa sangat efektif dalam mengurangi tingkat kebisingan, tetapi sebaliknya memang benar bahwa Anda perlu melakukan rata-rata ensemble dalam domain frekuensi.
Paul R
2

Kecuali saya benar-benar tidak mengerti atau salah paham pertanyaan Anda, jawabannya adalah ya : Dengan linearitas DFT, rata-rata sinyal dalam waktu dan kemudian mengambil DFT rata-rata setara dengan rata-rata DFT sinyal.

Untuk menunjukkan ini, mari kita mendefinisikan beberapa variabel:

  • xn[]thn
  • Xk[]thk

1L=0Lxn[]

n=0N11LLxn[]ei2πkn/N

Mengubah urutan penjumlahan, kita bisa menulis

1L=0Ln=0N1xn[]ei2πkn/N,

tapi ini sama dengan

1L=0LXk[l]

yang sama dengan rata-rata DFT dari setiap trival. Inilah yang ingin kami tunjukkan.

jstarr
sumber
Untuk rata-rata dalam domain waktu Anda memerlukan semacam referensi fase yang dapat Anda selaraskan. Ketika ini tersedia meskipun Anda kadang-kadang bisa mendapatkan hasil yang lebih baik daripada dengan ansambel rata-rata dalam domain frekuensi, terutama karena pengurangan efek kuantisasi dll.
Paul R