ความละเอียดความถี่ขึ้นอยู่กับความสัมพันธ์ระหว่างความยาว FFT และอัตราการสุ่มตัวอย่างของสัญญาณอินพุต
ถ้าเรารวบรวมตัวอย่าง 8192 สำหรับ FFT เราจะได้:
8192 samples2=4096 FFT bins
หากอัตราการสุ่มตัวอย่างของเราคือ 10 kHz ทฤษฎีการสุ่มตัวอย่างของ Nyquist-Shannon กล่าวว่าสัญญาณของเราสามารถมีเนื้อหาความถี่ได้สูงสุด 5 kHz จากนั้นการแก้ปัญหาเรื่องความถี่ถังขยะของเราคือ:
5 kHz4096 FFT bins≃1.22 Hzbin
นี่คืออาจเป็นวิธีที่ง่ายต่อการอธิบายแนวคิดที่เรียบง่าย แต่: มติถังของคุณเป็นเพียงfsampNfsamp
เราเห็นได้จากข้างต้นว่าเพื่อให้ได้ถังขยะ FFT ที่เล็กลงเราสามารถใช้ FFT ที่ยาวขึ้น (นั่นคือใช้ตัวอย่างเพิ่มเติมในอัตราเดียวกันก่อนที่จะใช้ FFT) หรือลดอัตราการสุ่มตัวอย่างของเรา
จับ:
มักจะมีการแลกเปลี่ยนระหว่างการแก้ปัญหาชั่วคราวและการแก้ไขความถี่
ในตัวอย่างข้างต้นเราต้องรวบรวมตัวอย่าง 8192 ตัวอย่างก่อนที่เราจะสามารถเรียกใช้ FFT ซึ่งเมื่อการสุ่มตัวอย่างที่ 10 kHz ใช้เวลา 0.82 วินาที
หากเราพยายามรับ FFT ที่เล็กลงโดยการใช้ FFT ที่ยาวขึ้นมันจะใช้เวลานานขึ้นในการเก็บตัวอย่างที่ต้องการ
อาจจะไม่เป็นไร จุดสำคัญคืออัตราการสุ่มตัวอย่างคงที่การเพิ่มความละเอียดความถี่ลดความละเอียดชั่วคราว นั่นคือการวัดที่แม่นยำยิ่งขึ้นของคุณในโดเมนความถี่ยิ่งมีความแม่นยำน้อยลงคุณก็สามารถอยู่ในโดเมนเวลาได้ คุณสูญเสียข้อมูลตลอดเวลาอย่างมีประสิทธิภาพภายในระยะเวลา FFT
ในตัวอย่างนี้หากเสียง 1999 Hz เริ่มต้นและหยุดในครึ่งแรกของตัวอย่าง F19 8192 และเสียง 2002 Hz เล่นในครึ่งหลังของหน้าต่างเราจะเห็นทั้งสองอย่าง แต่ดูเหมือนว่าจะเกิดขึ้นในเวลาเดียวกัน เวลา.
คุณต้องพิจารณาเวลาในการดำเนินการ 8192 จุด FFT ใช้กำลังการประมวลผลที่เหมาะสม วิธีการลดความต้องการนี้คือการลดอัตราการสุ่มตัวอย่างซึ่งเป็นวิธีที่สองในการเพิ่มความละเอียดความถี่
ในตัวอย่างของคุณถ้าคุณลดอัตราการสุ่มตัวอย่างของคุณเป็น 4096 Hz คุณจะต้องใช้ 4096 point FFT เพื่อให้ได้ 1 Hz bins * 4096 Hz แล้วคุณจะต้อง 4096 point FFT เพื่อให้ได้ 1hz bins และยังสามารถแก้ไข a สัญญาณ 2khz สิ่งนี้จะลดขนาดถังขยะ FFT แต่ยังลดแบนด์วิดท์ของสัญญาณ
ในที่สุดด้วย FFT จะมีการแลกเปลี่ยนระหว่างความละเอียดความถี่และการแก้ปัญหาเวลาเสมอ คุณต้องทำตัวให้สมดุลเพื่อให้บรรลุเป้าหมายทั้งหมด