Saya mencari di toko aplikasi Android untuk tuner gitar. Saya menemukan aplikasi tuner yang mengklaim lebih cepat daripada aplikasi lain. Ia mengklaim dapat menemukan frekuensi tanpa menggunakan DFT (saya berharap saya masih memiliki URL untuk spesifikasi ini).
Saya belum pernah mendengar ini. Bisakah Anda mendapatkan sinyal audio dan menghitung frekuensi tanpa menggunakan algoritma DFT atau FFT?
FFT melaporkan puncak atau puncak frekuensi spektrum (dikuantisasi oleh ukuran bin FFT), yang berbeda dari nada musik. Frekuensi pitch yang dirasakan mungkin benar-benar hilang dari spektrum FFT.
Beberapa tuner gitar paling sederhana hanya menggunakan penyaringan low-pass atau band-pass dan mengukur waktu antara zero-crossing. Kebalikan memberikan estimasi frekuensi.
Autokorelasi adalah metode estimasi pitch umum lainnya; dan korelasi geser atau ukuran kemiripan diri lainnya memiliki banyak variasi, seperti geser ASDF (perbedaan kuadrat), AMDF (perbedaan rata-rata), pencocokan pola non-linier, pemeriksaan adaptif hanya untuk rentang jeda terbatas, interpolasi jeda, jendela dan pemilihan jendela adaptif, berbagai pembobotan, atau menggunakan teori keputusan untuk memilih di antara beberapa sekuens riwayat lag potensial, dan lain-lain. Salah satu masalah dengan sebagian besar ukuran kemiripan diri adalah memilih oktaf yang tepat, karena sub-oktaf dapat menunjukkan kemiripan yang hampir sama.
Kemungkinan lain termasuk menggunakan PLL, demodulator quadrature yang difilter, transformasi Hilbert yang difilter, dan lain-lain.
Tetapi perhatikan bahwa beberapa metode penyaringan dan demodulasi DSP secara komputasi hampir setara dengan melakukan 1-bin dari DFT berjendela, yang mungkin cocok atau tidak cocok sebagai jawaban untuk pertanyaan Anda.
sumber
Pendeteksian pitch dapat dilakukan dalam banyak cara yang serba guna dan penuh rasa ingin tahu. Salah satu cara untuk melakukannya adalah dengan menggunakan autocorrelation . Makalah ini memberikan contoh bagaimana dapat digunakan. Autokorelasi dapat dibuat sangat sederhana dengan menggunakan korelator 1-bit (tidak dapat menemukan makalah yang layak tentang itu karena beberapa alasan). Jadi secara teoritis, nada dapat dideteksi lebih cepat daripada dengan FFT, tetapi saya ragu bahwa itu akan jauh lebih tepat tanpa pra-pemrosesan yang benar - benar pintar.
sumber
Juga lihat Hilbert-Huang Transform (HHT) yang didefinisikan secara algoritmik dan relatif baru . Ini dapat menangani sinyal non-stasioner-non-linear yang mungkin relevan untuk aplikasi Anda.
sumber
Jika Anda tahu persis bin frekuensi mana yang Anda cari dalam DFT / FFT maka Anda dapat menggunakan algoritma Goertzel untuk mendapatkan nilai dari bin itu saja.
http://en.wikipedia.org/wiki/Goertzel_algorithm
sumber
Saya sudah mendapat gitar sebulan yang lalu dan mulai menulis a tuner berbasis PLL .
Salah satu sumber yang saya gunakan untuk memahami PLL adalah halaman "Memahami Fase-Terkunci Loop" oleh Paul Lutus.
sumber
Anda benar-benar dapat menghitung frekuensi sinyal menggunakan pseudo-spectrum, yang melihat vektor eigen dari matriks autokorelasi. Ini pada dasarnya menguraikan sinyal Anda menjadi subruang kebisingan dan sinyal. Dari sana, Anda dapat menemukan spektrumnya. (Anda juga dapat membatasi dan memberikan rentang frekuensi untuk diperiksa). Ini juga noise yang cukup kebal. Tentu saja, ini adalah metode parametrik, bukan metode unparametrik seperti DFT.
sumber
Itu semua tergantung pada platform apa yang Anda ingin memprosesnya, jika Anda memerlukan rangkaian sederhana, saya sarankan peledakan sinyal dengan gain dan mengubahnya menjadi gelombang persegi dan mengukur periode dengan mikrokontroler menggunakan timer.
Tetapi jika Anda ingin menyukai pemrosesan sinyal, lihat metode MUSIC:
http://en.wikipedia.org/wiki/Multiple_signal_classification
Semoga ini bisa membantu
sumber
Ada banyak metode estimasi pitch tanpa menggunakan DFT / FFT, beberapa dari mereka termasuk metode MUSIC tercantum dalam makalah ini: https://ieeexplore.ieee.org/abstract/document/6521410/ Hasil simulasi dalam makalah ini menunjukkan bahwa ketika frekuensi dasar sangat rendah, metode NLS yang tepat mengungguli yang lain di antara yang terdaftar.
sumber