ความล่าช้าในโดเมนเวลามีผลกระทบอะไรในโดเมนความถี่


21

ถ้าฉันมีสัญญาณที่มีเวลา จำกัด บอกว่าไซนัสนั้นใช้เวลาเพียงวินาทีและฉันรับสัญญาณ FFT ของสัญญาณนั้นฉันเห็นการตอบสนองความถี่ ในตัวอย่างนี้จะเป็นการขัดขวางที่ความถี่หลักของไซนัสT

ทีนี้สมมติว่าฉันรับสัญญาณในเวลาเดียวกันและหน่วงเวลาบางค่าคงที่แล้วใช้ FFT สิ่งต่าง ๆ เปลี่ยนแปลงได้อย่างไร FFT สามารถแสดงเวลาล่าช้าได้หรือไม่

ฉันรับรู้ว่าการหน่วงเวลาหมายถึงการเปลี่ยนแปลงในโดเมนความถี่ แต่ฉันมีเวลาที่ยากลำบากในการพิจารณาความหมายที่แท้จริงประสบการณ์(-Jωเสื้อ)

การพูดในทางปฏิบัติโดเมนความถี่เป็นสถานที่ที่เหมาะสมในการกำหนดเวลาหน่วงระหว่างสัญญาณต่างๆหรือไม่?


1
ขึ้นอยู่กับสิ่งที่คุณหมายถึงโดย FFT สมมติว่าสัญญาณดั้งเดิมของคุณมีตัวอย่างเวลา สมมติว่าความล่าช้าเป็น100ตัวอย่าง ดังนั้นคุณจึงมีN + 100ตัวอย่างกับครั้งแรก100เป็น0 คุณคำนวณ FFT ของตัวอย่างN ตัวแรก(เหมือนเดิม) หรือไม่? ของตัวอย่างN + 100หรือไม่ ของตัวอย่างNสุดท้ายของN + 100หรือไม่ คำตอบจะขึ้นอยู่กับสิ่งที่คุณหมายถึงโดย FFT ...ยังไม่มีข้อความ100ยังไม่มีข้อความ+1001000ยังไม่มีข้อความยังไม่มีข้อความ+100ยังไม่มีข้อความยังไม่มีข้อความ+100
ดิลลิป Sarwate

1
@Dilip ฉันกำลังมองหาคำตอบทั่วไปมากขึ้น บางทีคำอธิบายของสิ่งที่จะเปลี่ยนแปลงในสถานการณ์เหล่านั้นจะเป็นประโยชน์?
gallamine

1
ถ้าคุณผ่านสุดท้ายของN + 100ตัวอย่างที่คุณN -point FFT ย่อย, คุณจะได้รับเดียวกัน FFT เป็นคุณได้ก่อน ไม่มีความแตกต่างใด ๆ หากคุณส่งตัวอย่างแรกNของN + 100 (ด้วย100ตัวอย่างแรกเป็น0 ) ไปยังรูทีนย่อยN -point FFT ของคุณคุณจะได้รับสิ่งต่าง ๆ ที่ตีความยาก อ่านคำตอบโดย @JasonR อย่างระมัดระวังซึ่งจะบอกคุณว่าหาก100ตัวอย่างแรกถูกเติมเต็มจากข้อมูลของคุณผ่านวงกลมหรือวงจรยังไม่มีข้อความยังไม่มีข้อความ+100ยังไม่มีข้อความยังไม่มีข้อความยังไม่มีข้อความ+1001000ยังไม่มีข้อความ100จากนั้นคุณจะเห็นความล่าช้าที่สะท้อนในขั้นตอนของตัวอย่าง
Dilip Sarwate

คำตอบ:


21

การแปลงฟูริเยร์แบบไม่ต่อเนื่อง (DFT)ซึ่งดำเนินการโดยทั่วไปคือการแปลงฟูริเยร์แบบเร็ว (FFT)ทำแผนที่ลำดับความยาวแน่นอนของตัวอย่างโดเมนเวลาแบบไม่ต่อเนื่องในลำดับความยาวเท่ากันของตัวอย่างโดเมน ตัวอย่างในโดเมนความถี่อยู่ในจำนวนเชิงซ้อนทั่วไป พวกเขาเป็นตัวแทนของค่าสัมประสิทธิ์ที่สามารถใช้ในผลรวมถ่วงน้ำหนักของฟังก์ชั่นเลขยกกำลังที่ซับซ้อนในโดเมนเวลาเพื่อสร้างสัญญาณโดเมนเวลาเดิม

ตัวเลขที่ซับซ้อนเหล่านี้แสดงถึงแอมพลิจูดและเฟสที่เชื่อมโยงกับแต่ละฟังก์ชันเลขชี้กำลัง ดังนั้นแต่ละหมายเลขในลำดับเอาต์พุต FFT สามารถตีความได้ดังนี้:

X[k]=Σn=0ยังไม่มีข้อความ-1x[n]อี-J2πnkยังไม่มีข้อความ=AkอีJφk

คุณสามารถแปลความหมายนี้เป็นดังนี้: ถ้าคุณต้องการที่จะสร้าง x [N] สัญญาณที่คุณเริ่มต้นด้วยคุณสามารถใช้พวงของฟังก์ชั่นการชี้แจงซับซ้อน, น้ำหนักแต่ละอันด้วยX[k]=Akejϕkและรวมพวกมัน ผลที่ได้คือเท่ากับ (ภายในแม่นยำตัวเลข) เพื่อx[n] นี่เป็นเพียงคำจำกัดความตามคำศัพท์ของ DFT ที่ตรงกันข้ามอีJ2πnkยังไม่มีข้อความ,k=0,1,...,ยังไม่มีข้อความ-1X[k]=Akejϕkx[n]

ดังนั้นเมื่อพูดถึงคำถามของคุณการแปลงฟูริเยร์ที่หลากหลายมีคุณสมบัติที่การหน่วงเวลาในโดเมนแผนที่จะเปลี่ยนเฟสในโดเมนความถี่ สำหรับ DFT คุณสมบัตินี้คือ:

x [ n - D ] e - j 2 π k D

x[n]X[k]
x[nD]ej2πkDNX[k]

นั่นคือถ้าคุณชะลอสัญญาณอินพุทของคุณด้วยตัวอย่างค่าแต่ละค่าเชิงซ้อนใน FFT ของสัญญาณจะถูกคูณด้วยค่าคงที่e - j 2 π k DD . เป็นเรื่องปกติที่ผู้คนจะไม่ตระหนักว่าผลลัพธ์ของ DFT / FFT เป็นค่าที่ซับซ้อนเพราะพวกเขามักจะมองเห็นเป็นขนาดเท่านั้น (หรือบางครั้งเป็นขนาดและเฟส)ej2πkDN

x[n]DDx[n]x[n]D


1

Gallamine,

นี่หมายความว่าจะมีเฟสตรงข้ามในเวกเตอร์ FFT ของคุณ เมื่อคุณ FFT สัญญาณ (จริง) คำตอบของคุณจะซับซ้อนดังนั้นคุณจะมีส่วนจริงและจินตภาพ หากคุณเข้าสู่เฟสของพวกเขา (inverse_tangent (imag / real)) สิ่งนี้จะแสดงเฟสทั้งหมดของความถี่ ขั้นตอนของพวกเขาแตกต่างจากหากคุณไม่มีความล่าช้าเกี่ยวข้องโดยตรงกับความล่าช้าที่คุณมีในเวลา

(ใน matlab คุณสามารถรับช่วงได้โดยเพียงแค่ "angle (fft_result)")

โดยวิธีการถ้าคุณมีความสัมพันธ์ของสัญญาณของคุณด้วยความล่าช้าและไม่ล่าช้าและเลือกจุดสูงสุดคุณจะได้รับความล่าช้าในทางนั้น ในโดเมนฟรีมันจะลบเฟสทั้งหมดของสัญญาณของคุณโดยไม่ล่าช้าจากสัญญาณทั้งหมดที่มีความล่าช้าและรับค่าเฉลี่ย


2
มีหลายสิ่งที่เหลือไว้ที่ยังไม่ได้รับการบอกกล่าวและไม่ระบุในคำตอบนี้ โมฮัมหมัดเป็นหลักสมมติว่าการเปลี่ยนแปลงแบบวงกลมของข้อมูลโดยไม่พูดอย่างนั้น ดูคำตอบ (แก้ไข) ของ @ JasonR สำหรับคำอธิบายอย่างละเอียดเกี่ยวกับประเด็นนี้และความคิดเห็นของฉันเกี่ยวกับคำถามหลักที่บอกว่ามีหลายวิธีในการใช้ FFT และพวกเขาต่างให้ผลลัพธ์ที่แตกต่างกัน
Dilip Sarwate

@DilipSarwate ถูกต้องนี่เป็นการสมมติว่ามีการเปลี่ยนแปลงแบบวงกลมของข้อมูล ในขณะที่เขาชี้ให้เห็นว่ามีรายละเอียดปลีกย่อยใน FFT ตามเวกเตอร์อินพุต
Spacey

@gallamine, ฉันขอถามว่าข้อมูลเวกเตอร์ของคุณเป็นอย่างไร, exmaple: - สัญญาณ 1: [someZeros, สัญญาณ, someZeros] - สัญญาณ 2: [someDifferentNumberOfZeros, สัญญาณ, someDifferentNumberOfZeros]
สเปซีย์

1

บาป(ωเสื้อ)ω


สวัสดีอามาน ยินดีต้อนรับสู่ Signals.SE คุณใช้เวลาเล็กน้อยและจัดรูปแบบคำตอบของคุณเล็กน้อย? เราเปิดใช้งานMathJaxซึ่งโดยทั่วไปเราต้องการสมการ ฉันทำการแก้ไขบางส่วนอย่างรวดเร็วซึ่งมีตัวอย่างเล็ก ๆ น้อย ๆ ถ้าคุณไม่เคยใช้มาก่อน ขอบคุณสำหรับการสนับสนุนของคุณและยินดีต้อนรับสู่เว็บไซต์อีกครั้ง!
เขียนนักสะสม
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.