FFT, atau fast Fourier transform, adalah cara cepat untuk menghitung discrete Fourier transform (DFT). Jika Anda mulai dari sampel yang berjarak sama, DFT memberi tahu seberapa besar setiap pola frekuensi diskret muncul dalam sampel tersebut.
Poin pentingnya adalah FFT tidak mengubah hasil. FFT memberikan nilai DFT yang sama seperti rumus langsung, tetapi mencapainya dengan jauh lebih sedikit pekerjaan yang berulang.
FFT Dalam Satu Kalimat
FFT adalah algoritma yang lebih cepat untuk mendapatkan bilangan domain frekuensi yang sama yang sudah didefinisikan oleh DFT.
Apa yang Diukur DFT
Misalkan Anda memiliki sampel . DFT menghasilkan bilangan yang didefinisikan oleh
Setiap mengukur seberapa kuat data cocok dengan satu pola frekuensi diskret.
Jika sampel berjarak sama pada laju sampling , maka jarak antar bin frekuensi yang berdekatan adalah
Kondisi itu penting. Tanpa laju sampling yang diketahui, Anda tetap memiliki bin DFT, tetapi Anda tidak dapat memberinya label sebagai frekuensi fisik seperti hertz.
Mengapa FFT Lebih Cepat
FFT adalah keluarga algoritma untuk menghitung DFT secara efisien. Trik utamanya adalah memanfaatkan kembali struktur pada faktor eksponensial kompleks alih-alih menghitung ulang penjumlahan yang hampir identik dari awal.
Versi yang paling mudah dibayangkan adalah FFT radix-2. Metode ini bekerja paling alami saat adalah pangkat dari , dan membagi satu transformasi panjang- menjadi dua transformasi panjang- sebelum menggabungkan hasilnya.
Untuk DFT langsung, jumlah operasi aritmetika bertambah seorde . Untuk metode FFT yang umum, jumlahnya turun menjadi sekitar .
Perbedaan itulah yang membuat FFT penting dalam praktik. Untuk masukan kecil, kedua metode mungkin sama-sama terasa memadai. Untuk masukan besar, FFT jauh lebih cepat.
Bagaimana FFT Membagi Pekerjaan
Alih-alih membandingkan setiap sampel dengan setiap pola frekuensi secara langsung, FFT memecah masalah menjadi transformasi-transformasi yang lebih kecil lalu menggabungkannya kembali dengan faktor fase.
Pembagian standar adalah:
- Masukkan sampel berindeks genap ke dalam satu daftar.
- Masukkan sampel berindeks ganjil ke dalam daftar lain.
- Hitung transformasi yang lebih kecil pada daftar-daftar itu.
- Gabungkan kedua bagiannya.
Ini adalah pendekatan divide-and-conquer yang diterapkan pada analisis frekuensi.
Contoh FFT 4 Titik
Ambil sinyal 4 titik
Pola ini bergantian antara dan , jadi kita mengharapkan adanya struktur frekuensi, bukan hasil yang benar-benar datar.
Bagi menjadi indeks genap dan ganjil:
DFT 2 titik dari bagian genap adalah
dan DFT 2 titik dari bagian ganjil adalah
Untuk FFT 4 titik, langkah penggabungannya adalah
dengan
Karena , penggabungannya menjadi sangat sederhana:
Sekarang tafsirkan hasilnya.
adalah suku frekuensi nol, jadi ini mencerminkan nilai rata-rata sampel yang tidak nol. Nilai tak nol pada menangkap bagian pola yang bergantian dalam kasus 4 titik ini. Jika Anda mengurangkan mean terlebih dahulu, suku akan hilang dan komponen yang bergantian akan terlihat lebih jelas.
Contoh ini kecil, tetapi idenya dapat diperluas: selesaikan transformasi-transformasi yang lebih kecil, lalu gabungkan, alih-alih membangun ulang seluruh penjumlahan setiap saat.
Kesalahan Umum tentang FFT
Menganggap FFT dan DFT Memberikan Hasil yang Berbeda
Tidak. FFT adalah metode yang lebih cepat untuk menghitung DFT.
Membaca Bin sebagai Frekuensi Fisik Terlalu Cepat
Lokasi bin baru menjadi frekuensi fisik ketika jarak antar sampel diketahui. Jika laju sampling adalah , maka jarak antar bin adalah untuk sampel yang berjarak sama.
Menganggap Zero-Padding Menambah Informasi Baru
Zero-padding dapat membuat spektrum terlihat lebih halus karena ia mengambil sampel transformasi dasarnya dengan lebih rapat, tetapi tidak menambahkan data terukur yang baru.
Mengabaikan Persiapan Sinyal
Penghilangan mean, windowing, dan pilihan sampling yang cermat bisa sangat berpengaruh. Jika kondisi-kondisi itu diabaikan, keluaran FFT mungkin tetap benar secara matematis untuk sampel yang diberikan, tetapi menyesatkan saat ditafsirkan.
Di Mana FFT Digunakan
FFT muncul di mana pun Anda membutuhkan informasi domain frekuensi yang cepat dari data hasil sampling. Contoh umum meliputi analisis spektrum, filtering, pemrosesan citra, analisis getaran, penyelesaian persamaan diferensial secara numerik, serta komputasi polinomial atau konvolusi yang cepat.
Alasannya praktis: banyak operasi menjadi lebih mudah atau lebih cepat setelah berpindah dari domain sampel ke domain frekuensi.
Coba Kasus Serupa
Ambil sampel berjarak sama dari satu gelombang sinus selama satu periode penuh dan hitung DFT-nya dengan kalkulator atau skrip. Lalu tambahkan offset konstan dan bandingkan keluaran barunya. Nilai yang lebih kuat pada adalah cara sederhana untuk melihat apa yang dipisahkan oleh FFT.
Butuh bantuan mengerjakan soal?
Unggah pertanyaanmu dan dapatkan solusi terverifikasi langkah demi langkah dalam hitungan detik.
Buka GPAI Solver →