คำถามติดแท็ก fft

5
ฉันจะรับความถี่ของแต่ละค่าใน FFT ได้อย่างไร
ฉันมีผลลัพธ์ FFT สิ่งเหล่านี้ถูกจัดเก็บในสองdoubleอาร์เรย์: อาร์เรย์จริงและอาร์เรย์ส่วนจินตภาพ ฉันจะกำหนดความถี่ที่สอดคล้องกับแต่ละองค์ประกอบในอาร์เรย์เหล่านี้ได้อย่างไร กล่าวอีกนัยหนึ่งฉันต้องการสร้างอาร์เรย์ที่เก็บความถี่สำหรับองค์ประกอบจริงและจินตภาพของ FFT ของฉัน

9
อัลกอริทึมการค้นหาจุดสูงสุดสำหรับ Python / SciPy
ฉันสามารถเขียนอะไรบางอย่างได้ด้วยตัวเองโดยการหาจุดตัดของอนุพันธ์อันดับหนึ่งหรือบางอย่างเป็นศูนย์ แต่ดูเหมือนว่าจะเป็นฟังก์ชันทั่วไปที่เพียงพอที่จะรวมอยู่ในไลบรารีมาตรฐาน มีใครรู้จักไหม แอปพลิเคชันเฉพาะของฉันคืออาร์เรย์ 2 มิติ แต่โดยปกติแล้วจะใช้สำหรับการค้นหาจุดสูงสุดใน FFT เป็นต้น โดยเฉพาะอย่างยิ่งในปัญหาประเภทนี้มียอดเขาที่แข็งแกร่งหลายจุดและมี "ยอด" ขนาดเล็กจำนวนมากที่เกิดจากเสียงรบกวนที่ควรละเว้น นี่เป็นเพียงตัวอย่างเท่านั้น ไม่ใช่ข้อมูลจริงของฉัน: จุดสูงสุด 1 มิติ: จุดสูงสุด 2 มิติ: อัลกอริธึมการค้นหาจุดสูงสุดจะค้นหาตำแหน่งของยอดเขาเหล่านี้ (ไม่ใช่แค่ค่าของมัน) และตามหลักการแล้วจะหาจุดสูงสุดระหว่างตัวอย่างที่แท้จริงไม่ใช่แค่ดัชนีที่มีค่าสูงสุดเท่านั้นอาจใช้การแก้ไขกำลังสองหรืออะไรบางอย่าง โดยปกติคุณจะดูแลเกี่ยวกับยอดที่แข็งแกร่งไม่กี่ดังนั้นพวกเขาต้องการอย่างใดอย่างหนึ่งได้รับเลือกเพราะพวกเขากำลังเหนือเกณฑ์ที่กำหนดหรือเพราะพวกเขาเป็นคนแรกnยอดรายการสั่งซื้อ, การจัดอันดับโดยกว้าง อย่างที่บอกว่าฉันรู้วิธีเขียนอะไรแบบนี้ด้วยตัวเอง ฉันแค่ถามว่ามีฟังก์ชั่นหรือแพ็คเกจที่มีอยู่แล้วซึ่งทราบว่าทำงานได้ดีหรือไม่ อัปเดต: ฉันแปลสคริปต์ MATLABและใช้งานได้ดีสำหรับกรณี 1-D แต่อาจจะดีกว่านี้ อัปเดตการอัปเดต: sixtenbe สร้างเวอร์ชันที่ดีกว่าสำหรับเคส 1 มิติ

4
วิเคราะห์เสียงโดยใช้ Fast Fourier Transform
ฉันกำลังพยายามสร้างตัววิเคราะห์สเปกตรัมแบบกราฟิกใน python ฉันกำลังอ่าน 1024 ไบต์ของ 16 บิตดูอัลแชนเนล 44,100 เฮิรตซ์สตรีมเสียงอัตราตัวอย่างและเฉลี่ยแอมพลิจูดของ 2 แชนเนลเข้าด้วยกัน ตอนนี้ฉันมีกางเกงขาสั้นลายเซ็น 256 ตัว ตอนนี้ฉันต้องการสร้าง fft ล่วงหน้าบนอาร์เรย์นั้นโดยใช้โมดูลเช่น numpy และใช้ผลลัพธ์เพื่อสร้างตัววิเคราะห์สเปกตรัมกราฟิกซึ่งในการเริ่มต้นจะเป็นเพียง 32 บาร์ ฉันได้อ่านบทความวิกิพีเดียเรื่อง Fast Fourier Transform และ Discrete Fourier Transform แล้ว แต่ฉันยังไม่ชัดเจนว่าอาร์เรย์ผลลัพธ์นั้นหมายถึงอะไร นี่คือลักษณะของอาร์เรย์หลังจากที่ฉันสร้าง fft ไว้ล่วงหน้าบนอาร์เรย์ของฉันโดยใช้ numpy: [ -3.37260500e+05 +0.00000000e+00j 7.11787022e+05 +1.70667403e+04j 4.10040193e+05 +3.28653370e+05j 9.90933073e+04 +1.60555003e+05j 2.28787050e+05 +3.24141951e+05j 2.09781047e+04 +2.31063376e+05j -2.15941453e+05 +1.63773851e+05j …

7
การวางแผนการแปลงฟูเรียร์อย่างรวดเร็วใน Python
ฉันสามารถเข้าถึง NumPy และ SciPy และต้องการสร้าง FFT ง่ายๆของชุดข้อมูล ฉันมีสองรายการรายการหนึ่งคือyค่าและอีกรายการคือการประทับเวลาสำหรับyค่าเหล่านั้น วิธีที่ง่ายที่สุดในการป้อนรายการเหล่านี้เป็นวิธี SciPy หรือ NumPy และพล็อต FFT ที่ได้คืออะไร ฉันได้ค้นหาตัวอย่าง แต่พวกเขาทั้งหมดอาศัยการสร้างชุดข้อมูลปลอมที่มีจุดข้อมูลจำนวนหนึ่งและความถี่ ฯลฯ และไม่ได้แสดงวิธีการทำเพียงชุดข้อมูลและการประทับเวลาที่เกี่ยวข้อง . ฉันได้ลองตัวอย่างต่อไปนี้: from scipy.fftpack import fft # Number of samplepoints N = 600 # Sample spacing T = 1.0 / 800.0 x = np.linspace(0.0, N*T, N) y = np.sin(50.0 * 2.0*np.pi*x) …
95 python  numpy  scipy  fft 

4
ทำความเข้าใจกับเอาต์พุต FFT
ฉันต้องการความช่วยเหลือในการทำความเข้าใจผลลัพธ์ของการคำนวณ DFT / FFT ฉันเป็นวิศวกรซอฟต์แวร์ที่มีประสบการณ์และต้องการตีความการอ่านค่ามาตรความเร่งของสมาร์ทโฟนบางอย่างเช่นการค้นหาความถี่หลัก น่าเสียดายที่ฉันเข้าเรียนในชั้นเรียน EE ของวิทยาลัยส่วนใหญ่เมื่อสิบห้าปีที่แล้ว แต่ฉันได้อ่าน DFT และ FFT ในช่วงหลายวันที่ผ่านมา (เห็นได้ชัดว่ามีประโยชน์เพียงเล็กน้อย) ได้โปรดไม่มีคำตอบของ "ไปเรียน EE" ฉันวางแผนที่จะทำเช่นนั้นจริงๆถ้านายจ้างจะจ่ายเงินให้ฉัน :) นี่คือปัญหาของฉัน: ฉันจับสัญญาณได้ที่ 32 Hz นี่คือตัวอย่าง 1 วินาทีจาก 32 คะแนนซึ่งฉันได้สร้างแผนภูมิไว้ใน Excel จากนั้นฉันได้รับโค้ด FFT ที่เขียนด้วยภาษา Java จาก Columbia University (หลังจากทำตามคำแนะนำในโพสต์เรื่อง " FFT ที่เชื่อถือได้และรวดเร็วใน Java ") ผลลัพธ์ของโปรแกรมนี้มีดังนี้ ฉันเชื่อว่ามันกำลังเรียกใช้ FFT ในสถานที่ดังนั้นจึงใช้บัฟเฟอร์เดียวกันอีกครั้งสำหรับทั้งอินพุตและเอาต์พุต Before: Re: [0.887 1.645 …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.