เนื่องจากคุณกำลังทำงานกับอัตราสุ่มคงที่ความยาว FFT ของคุณ (ซึ่งจะทำให้หน้าต่างของคุณมีความกว้างเท่ากัน) จะเพิ่มความละเอียดความถี่ของคุณ ข้อดีของการมีความละเอียดความถี่ที่ละเอียดกว่านั้นเป็นสองเท่า: สิ่งที่ชัดเจนคือคุณได้รับความละเอียดที่ละเอียดกว่าเพื่อให้คุณสามารถแยกความแตกต่างของสัญญาณทั้งสองที่ใกล้เคียงกับความถี่มาก ส่วนที่สองคือด้วยความละเอียดความถี่ที่สูงขึ้นพื้นเสียง FFT ของคุณจะลดลง เสียงในระบบของคุณมีพลังงานคงที่ซึ่งไม่เกี่ยวข้องกับจำนวนคะแนนของ FFT ของคุณและพลังงานนั้นจะกระจายอย่างเท่าเทียมกัน (หากเรากำลังพูดถึงเสียงสีขาว) กับส่วนประกอบความถี่ทั้งหมดของคุณ ดังนั้นการมีส่วนประกอบความถี่มากขึ้นหมายความว่าการลดทอนสัญญาณเสียงแต่ละช่องของถังขยะจะลดลงในขณะที่เสียงรบกวนในตัวทั้งหมดยังคงเหมือนเดิม ซึ่งส่งผลให้พื้นเสียงต่ำ สิ่งนี้จะช่วยให้คุณแยกแยะช่วงไดนามิกที่สูงขึ้น
อย่างไรก็ตามมีข้อเสียคือการใช้ FFT ที่ยาวขึ้น อย่างแรกคือคุณจะต้องใช้พลังการประมวลผลมากขึ้น FFT เป็นอัลกอริทึม O (NlogN) โดยที่ N คือจำนวนคะแนน แม้ว่ามันอาจจะไม่น่าทึ่งเท่ากับ DFT ที่ไร้เดียงสา แต่การเพิ่มขึ้นของ N จะเริ่มทำให้โปรเซสเซอร์ของคุณตกโดยเฉพาะถ้าคุณทำงานในขอบเขตของระบบฝังตัว ประการที่สองเมื่อคุณเพิ่ม N คุณจะได้รับความละเอียดความถี่ในขณะที่คุณสูญเสียความละเอียดเวลา ด้วย N ที่ใหญ่กว่าคุณต้องใช้ตัวอย่างมากขึ้นเพื่อให้ได้ผลลัพธ์โดเมนความถี่ซึ่งหมายความว่าคุณต้องใช้ตัวอย่างเป็นเวลานานขึ้น คุณจะสามารถตรวจจับช่วงไดนามิกที่สูงขึ้นและความละเอียดความถี่ที่ละเอียดกว่านี้ได้ แต่ถ้าคุณกำลังมองหาสเปอร์ส
ประเภทของหน้าต่างที่คุณควรใช้เป็นอีกเรื่องหนึ่งซึ่งฉันไม่ได้รับแจ้งเพื่อให้คำตอบแก่คุณซึ่งดีกว่า อย่างไรก็ตามหน้าต่างที่แตกต่างกันมีคุณสมบัติเอาต์พุตต่างกันซึ่งส่วนใหญ่ (ถ้าไม่ใช่ทั้งหมด) จะถูกโพสต์ย้อนกลับเพื่อประมวลผลผลลัพธ์ FFT บางหน้าต่างอาจทำให้ส่วนประกอบความถี่ของคุณมีเลือดออกที่ด้านข้างถังขยะ (ถ้าฉันไม่เข้าใจผิดหน้าต่าง Hanning จะทำให้ส่วนประกอบของคุณปรากฏในสามถังขยะ) ส่วนหน้าต่างอื่น ๆ อาจให้ความแม่นยำความถี่ที่ดีขึ้นในขณะเดียวกัน นี่ขึ้นอยู่กับลักษณะของผลลัพธ์ที่คุณพยายามจะทำดังนั้นฉันจะทำการวิจัย (หรือแบบจำลอง) เพื่อให้ได้ผลลัพธ์ที่ดีที่สุดสำหรับแอปพลิเคชันเฉพาะของคุณ