एफएफटी में वर्णक्रमीय रिसाव क्यों होता है?


18

मैंने गुग्लिंग और विकिपीडिया-आईएनजी की कोशिश की है, लेकिन मैंने 'इसके कारण से परे कोई जवाब नहीं दिया है क्योंकि इनपुट सिग्नल की आवृत्ति दो डिब्बे के बीच बैठी है।'

मैं समझता हूं कि यह कारण है, लेकिन जो मैं समझ नहीं पा रहा हूं वह यह है कि रिसाव केवल एक आसन्न बिन के बजाय कई आसन्न डिब्बे तक विस्तारित होता है।

यह समझने के लिए कि मैं किस बारे में बात कर रहा हूं, यहां कुछ सिम्युलेटेड डेटा (पोस्ट के अंत में कोड): Freq_10

ऊपर FFT स्पेक्ट्रम है (आवृत्ति के साइन लहर के एक लॉग पैमाने पर प्लॉट किया गया) 10. नमूना दर एक है, और नमूनों की संख्या 100 है। ग्राफ एफएफटी-शिफ्ट किया गया है। बिन 10 पर स्पष्ट रूप से केवल एक चोटी है, और बाकी संख्यात्मक त्रुटि के आदेश पर है, या इसके बारे में है।

Freq_10_1

यह 10.1 की उत्पन्न आवृत्ति पर आवृत्ति स्पेक्ट्रम है। स्पष्ट रूप से सिर्फ निकटवर्ती बिन की तुलना में अधिक डिब्बे में 'रिसाव' है।

freq_10_5

यह 10.5 की आवृत्ति के लिए प्लॉट है।

प्रश्न: यह रिसाव क्यों है, और यह तत्काल बगल के बिन के बजाय अन्य सभी डिब्बे तक क्यों फैलता है?


कोड, रुचि रखने वाले किसी के लिए (पायथन कोड)

import numpy as np
import matplotlib.pyplot as plt

xFreq = 10.5
xSize = 100.0
xPeriod = xSize/xFreq
x = np.linspace(1,xSize,xSize)

data = np.sin(2*np.pi*x/xPeriod)
fft = np.fft.fft(data)
fft = np.fft.fftshift(fft)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(abs(fft), "o")
ax.set_yscale('log')
plt.show()

मैंने xFreqमान 10.0को 10.5आदि से बदल दिया ।


कोई भी संकेत जो एफएफटी की खिड़की की लंबाई में बिल्कुल फिट नहीं होता है, जब आप इसे चारों ओर लपेटते हैं तो एक असंतोष पैदा करता है। प्रवृत्तियाँ, जैसे आवेग या चरण कार्य, सभी आवृत्तियों में से कुछ होते हैं।
21

जवाबों:


12

एक एफएफटी में परिमित लंबाई होती है, और इस प्रकार डेटा स्ट्रीम पर एक डिफ़ॉल्ट आयताकार खिड़की बन जाती है। समय डोमेन में एक विंडो विंडो के परिवर्तन के साथ आवृत्ति डोमेन में एक दृढ़ संकल्प का परिणाम है। ध्यान दें कि एक आयताकार खिड़की का रूपांतरण एक सिनस फ़ंक्शन (पाप (x) / x) है, जिसकी अनंत चौड़ाई है। यह चौड़ाई में सिर्फ 2 डिब्बे नहीं है। इस प्रकार Sinc फ़ंक्शन के तरंगों को किसी भी वर्णक्रमीय शिखर से "रिसाव" के रूप में दिखाया जाएगा जो एफएफटी की लंबाई में पूरी तरह से आवधिक नहीं है।

नीचे दी गई तस्वीर sinc फ़ंक्शन की आवृत्ति प्रतिक्रिया का हिस्सा दिखाती है। जब टोन डिब्बे में से एक पर केंद्रित होता है, तो अन्य सभी बिंदु आवृत्ति प्रतिक्रिया में नल के साथ पंक्तिबद्ध होते हैं। यदि यह एक बिन पर केंद्रित नहीं है, तो यह पूरी आवृत्ति प्रतिक्रिया को स्थानांतरित करने जैसा है, जिसके कारण अन्य डिब्बे आवृत्ति प्रतिक्रिया के गैर-शून्य भागों पर गिरते हैं।

यहां छवि विवरण दर्ज करें

इसे देखने का एक और तरीका है कि एक एफएफटी सिर्फ एक फिल्टर बैंक है, जहां प्रत्येक फिल्टर स्टॉप-बैंड फर्श में बहुत सारे रिपल हैं, और निश्चित रूप से केंद्र आवृत्ति से 1 बिन से अधिक दूर क्षीणन में अनंत नहीं है। आयताकार के अलावा कुछ खिड़कियों (वॉन हनी, इत्यादि) में कम स्टॉप बैंड हैं, जो उनके लोकप्रिय उपयोग का एक कारण है।


1
ध्यान दें कि तथाकथित वर्णक्रमीय "रिसाव" बिल्कुल बिन-केंद्रित आवधिक इनपुट के एफएफटी में नहीं दिखाई देता है क्योंकि अन्य सभी बिन केंद्र आवृत्तियों पर साइनस फ़ंक्शन बिल्कुल शून्य (संकेत परिवर्तन के बीच) है और उन फिल्टर कर्नेल के लिए पूरी तरह से ऑर्थोगोनल है और एफएफटी आधार वैक्टर)।
hotpaw2

मुझे आशा है कि आप संपादन को बुरा नहीं मानेंगे। यदि आप इसे पसंद नहीं करते हैं तो इसे टॉस करने के लिए स्वतंत्र महसूस करें।
जिम क्ले

@ जय क्ले: अतिरिक्त ग्राफ के लिए धन्यवाद। मैं यह पता नहीं लगा सका कि अपने iPhone से एक को कैसे सबमिट किया जाए।
हॉटपावर 2

1
धन्यवाद धन्यवाद धन्यवाद। के लिए धन्यवाद नहीं कहा, द्वारा रिसाव समझा "FFT मानता है कि अपने इनपुट अनुक्रम समय-समय पर है।" 'ग्रहण की गई आवधिकता' की मूर्खतापूर्ण धारणा, दुख की बात है, डीएसपी के साहित्य में बहुत बार दोहराया गया है। [-रिक-]

कभी-कभी, इनपुट आवधिकता की धारणा उपयोगी होती है, जब उदाहरण के लिए एफएफटी फ्रेम लंबाई (या कक्षा सिंथेटिक उदाहरण बनाने) का शाफ्ट रोटेशन तुल्यकालिक नमूनाकरण करता है। लेकिन ऑडियो (आदि) के साथ, किसी भी आवधिकता लंबाई से संबंधित डेटा फ्रेम सेक्शनिंग और विंडोिंग अधिक आम है, जिससे उन क्षेत्रों में काम के लिए आमतौर पर धारणा झूठी हो जाती है।
हॉटपावर 2

0

hotpaw2का जवाब अच्छा है, लेकिन मैं थोड़ा विस्तार से बताना चाहूंगा user5133:

"एफएफटी मानती है कि इसका इनपुट अनुक्रम आवधिक है।" 'ग्रहण की गई आवधिकता' की मूर्खतापूर्ण धारणा, दुख की बात है, डीएसपी के साहित्य में बहुत बार दोहराया गया है

और उसी समय प्रश्न का उत्तर भी दें। ध्यान दें कि मैं इस क्षेत्र में एक विशेषज्ञ को नोट कर रहा हूं --- टिप्पणी, सही या पुष्टि करने के लिए स्वतंत्र महसूस करें।

जेड{1,2,...,एन}

एक्स(ω)=Σn=-एक्स[n]-मैंωn

एनएनजेड

एक्स =डीईएफ़ Σn=0एन-1एक्सn-2πमैंn/एन,जेड
एक्स(2π/एन)n{1,2,...,एन}एक्स[n]w[n]wn{1,...,एन}

लेकिन एक उत्पाद के फूरियर रूपांतरण फूरियर रूपांतरण का दृढ़ संकल्प है:

एफ{जी}=एफ{}*एफ{जी}

sinc

w(f)ejωtdt=ττejωtdt=2τsinc(ωτ)

sinc


@ user5133 की तरह लग रहा है अब और नहीं घूम रहा है। लेकिन रिक की कृतज्ञता को गलत तरीके से समझा जाता है: "शुक्रिया यह कहकर कि रिसाव को समझाने के लिए नहीं, 'एफएफटी मानता है कि इसका इनपुट अनुक्रम आवधिक है।" "ग्रहण की गई आवधिकता" की मूर्खतापूर्ण धारणा, दुख की बात है, डीएसपी के साहित्य में बहुत बार दोहराई गई है। " वह गलत है। DFT सबसे निश्चित रूप से समय-समय पर इसे पारित किए गए परिमित लंबाई के डेटा का विस्तार करता है। DFT यह मान लेता है कि इसमें दिया गया डेटा आवधिक अनुक्रम की एक अवधि है।
रॉबर्ट ब्रिस्टो-जॉनसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.