डिस्क्रीट फूरियर ट्रांसफॉर्म, या डीएफटी एक गणितीय तकनीक है जो स्थानिक डेटा को फ़्रीक्वेंसी डेटा में बदलने में मदद करती है।
फास्ट फूरियर ट्रांसफॉर्मेशन, या एफटीटी एक एल्गोरिदम है जिसे स्थानिक डेटा के डिस्क्रीट फूरियर ट्रांसफॉर्मेशन की गणना करने के लिए डिज़ाइन किया गया है।
स्थानिक डेटा आमतौर पर एक बहुआयामी सरणी के रूप में होता है। फ़्रीक्वेंसी डेटा उस डेटा को संदर्भित करता है जिसमें एक विशिष्ट अवधि में संकेतों या तरंग दैर्ध्य की संख्या के बारे में जानकारी होती है।
आइए देखें कि यह DFT 'SciPy' लाइब्रेरी का उपयोग करके कैसे प्राप्त किया जा सकता है।
ग्राफ matplotlib लाइब्रेरी का उपयोग करके बनाया गया है और डेटा Numpy लाइब्रेरी का उपयोग करके उत्पन्न किया गया है -
उदाहरण
From matplotlib import pyplot as plt
import numpy as np
my_freq = 6
freq_samp = 70
time_val = np.linspace(0, 3, 3 * freq_samp, endpoint = False )
amp_val = np.sin(my_freq * 3 * np.pi * time_val)
figure, axis = plt.subplots()
axis.plot(time_val, amp_val)
axis.set_xlabel ('Time (in seconds)')
axis.set_ylabel ('Amplitude of signal')
plt.show()
from scipy import fftpack
A = fftpack.fft(amp_val)
frequency = fftpack.fftfreq(len(amp_val)) * freq_samp
figure, axis = plt.subplots()
axis.stem(frequency, np.abs(A))
axis.set_xlabel('Frequency in Hz')
axis.set_ylabel('Frequency Spectrum Magnitude')
axis.set_xlim(-freq_samp / 2, freq_samp/ 2)
axis.set_ylim(-7, 125)
plt.show() आउटपुट

स्पष्टीकरण
- आवश्यक पैकेज आयात किए जाते हैं।
- नम्पी लाइब्रेरी की मदद से डेटा जेनरेट किया जाता है।
- यह डेटा matplotlib लाइब्रेरी की मदद से कंसोल पर साइन वेव के रूप में प्लॉट किया जाता है।
- अगला, 'fftpack' पैकेज का उपयोग उत्पन्न डेटा के तेज़ फूरियर रूपांतरण को खोजने के लिए किया जाता है।
- यह डेटा फिर से ग्राफ़ पर प्लॉट किया गया है।