मुझे आवृत्ति डोमेन में संकेतों में हेरफेर करने के बजाय बैंडपासिंग के लिए डिजिटल फिल्टर का उपयोग क्यों करना चाहिए और फिर उन्हें समय डोमेन में पुनर्प्राप्त करना चाहिए?


15

मैं सिग्नल प्रोसेसिंग के लिए काफी नौसिखिया हूं और मुझे पता है कि यह सवाल बहुत व्यापक हो सकता है। लेकिन मैं अभी भी विशेषज्ञों से संकेत सुनना चाहूंगा।

मुझे MATLAB ऑफ़लाइन (यानी रिकॉर्डिंग पूरी होने के बाद) में ईईजी (इलेक्ट्रोएन्सेफालोग्राम) संकेतों के बैंडपास फ़िल्टरिंग के लिए butterबटरवर्थ फ़िल्टर उर्फ ​​(अधिकतम फ्लैट परिमाण फ़िल्टर) और filtfilt(ज़ीरो-फ़ेज़ डिजिटल फ़िल्टरिंग) का उपयोग करने के लिए सिखाया गया था । इस तरह आप डिजिटल फिल्टर (यानी शून्य चरण फ़िल्टरिंग) के कारण अपरिहार्य "देरी" से बच सकते हैं।

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

fft/ifftबैंडपास फ़िल्टरिंग के लिए सरल विधि का उपयोग करने के फायदे और नुकसान क्या हैं ? लोग एफआईआर या आईआईआर डिजिटल फिल्टर का उपयोग करना क्यों पसंद करते हैं?

उदाहरण के लिए, क्या fft/ifftपद्धति डिजिटल फिल्टर की तुलना में वर्णक्रमीय रिसाव या तरंग के लिए अधिक प्रवण है? क्या विधि चरण विलंब से भी पीड़ित है? क्या तुलना के लिए इस फ़िल्टरिंग विधि के लिए आवेग प्रतिक्रिया की कल्पना करने का एक तरीका है?


संबंधित (लेकिन जरूरी नहीं कि डुप्लिकेट) प्रश्न: Electronics.stackexchange.com/questions/100348/why-use-a-filter/…
helloworld922

सिग्नल को फ़िल्टर करने के लिए FFT का उपयोग करना बिलकुल मान्य है, लेकिन इसके लिए कुछ चीजों पर ध्यान देना होगा। अधिक जानकारी के लिए इसी तरह के प्रश्न / उत्तर देखें: stackoverflow.com/a/2949227/565542
sbell

5
सिग्नल प्रोसेसिंग साइट के लिए इस तरह के प्रश्न अधिक उपयुक्त हो सकते हैं ।
जेसन आर

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

धन्यवाद, मैं सिग्नल प्रोसेसिंग साइट जैसी किसी चीज़ की तलाश कर रहा था, लेकिन वह नहीं मिली।
कोइची सी। नाकामुरा

जवाबों:


9

फ़्रीक्वेंसी-डोमेन प्रोसेसिंग सीधे न करने का मुख्य कारण इसमें शामिल विलंबता है। एक संकेत पर एक एफएफटी, ऐसा करने के लिए, आपको पहले पूरे समय-डोमेन सिग्नल को रिकॉर्ड करना होगा, शुरुआत से पहले, इसे आवृत्ति डोमेन में बदलने से पहले। फिर आप अपना प्रसंस्करण कर सकते हैं, इसे वापस समय डोमेन में बदल सकते हैं और परिणाम खेल सकते हैं। यहां तक ​​कि अगर दो रूपांतरण और बीच में सिग्नल प्रोसेसिंग प्रभावी रूप से तात्कालिक है, तो आपको अंतिम इनपुट नमूना रिकॉर्ड होने तक पहला परिणाम नमूना नहीं मिलता है। लेकिन अगर आप इसे लागू करना चाहते हैं तो आप "आदर्श" आवृत्ति-डोमेन परिणाम प्राप्त कर सकते हैं। उदाहरण के लिए, 44100 नमूनों / सेकंड में रिकॉर्ड किए गए 3-मिनट के गीत के लिए आपको 8 मिलियन पॉइंट ट्रांसफ़ॉर्म करने की आवश्यकता होगी, लेकिन यह आधुनिक सीपीयू पर कोई बड़ी बात नहीं है।

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

ऐसा उन मान्यताओं के कारण होता है जो समय डोमेन और फ़्रीक्वेंसी डोमेन (और इसके विपरीत) के बीच परिवर्तित होने वाली प्रक्रिया में निहित हैं। उदाहरण के लिए, एफएफटी और आईएफएफटी "मान लेते हैं" कि डेटा चक्रीय है; दूसरे शब्दों में, समान समय-डोमेन डेटा के ब्लॉक ब्लॉक होने से पहले और बाद में संसाधित होते हैं। चूंकि यह सामान्य रूप से सच नहीं है, आप कलाकृतियों को प्राप्त करते हैं।

समय-डोमेन प्रसंस्करण के अपने मुद्दे हो सकते हैं, लेकिन यह तथ्य कि आप विलंबता को नियंत्रित कर सकते हैं और यह आवधिक कलाकृतियों का उत्पादन नहीं करता है, यह अधिकांश वास्तविक समय सिग्नल-प्रसंस्करण अनुप्रयोगों में एक स्पष्ट विजेता बनाता है।

(यह मेरे पिछले उत्तर का एक विस्तारित संस्करण है ।)


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

1
ठीक है पर्याप्त ठीक है। मुझे केवल आवृत्ति-डोमेन फ़िल्टरिंग के बारे में एक और बात बताना चाहिए जो आपके लिए एक समस्या हो सकती है या नहीं हो सकती है: फ़िल्टर समय डोमेन में कारण नहीं होंगे । दूसरे शब्दों में, उनकी आवेग प्रतिक्रियाएं सकारात्मक और नकारात्मक दोनों समय में विस्तारित होती हैं। यदि आपको इसकी जानकारी नहीं है तो इसके कुछ आश्चर्यजनक प्रभाव हो सकते हैं।
डेव ट्वीड

धन्यवाद। मैंने विकिपीडिया पर "कॉसल फिल्टर" को देखा। परिभाषा के अनुसार, एफएफटी बॉक्सकार समय की परवाह नहीं करता है, इसलिए मैं देख सकता हूं कि यह गैर-कारण है। यह प्रकृति बताती है कि आप वास्तविक समय के लिए इसका उपयोग क्यों नहीं कर सकते।
कौईची सी। नाकामुरा

3
@DaveTweed: 44.1 kHz पर नमूने वाले 3 मिनट के गीत को फ़िल्टर करने के लिए 8 मिलियन-पॉइंट FFT की आवश्यकता के बारे में आपका दावा गलत है। एफएफटी-आधारित दृढ़ संकल्प एल्गोरिदम वास्तव में भारी रूप से व्यवहार में उपयोग किए जाते हैं। ओवरलैप-सेव और ओवरलैप-ऐड जैसे तरीकों का उपयोग किया जाता है ताकि अधिक मामूली एफएफटी आकार (और इसलिए प्रसंस्करण विलंबता) की आवश्यकता हो। ये तकनीकें वही करती हैं जो आपका दूसरा पैराग्राफ बताता है: उनके बीच होने वाले "एज इफेक्ट्स" को हैंडल करते हुए छोटे ब्लॉक्स का उपयोग करें।
जेसन आर

2
@DaveTweed: मैं असहमत हूं। ओवरलैप-सेव और ओवरलैप-ऐड जैसे फास्ट कनवल्शन मेथड्स (न्यूमेरिकल प्रिसेंस के बराबर) लीनियर कनवल्शन को डायरेक्ट करते हैं (यानी टाइम डोमेन में फिल्टर को लागू करते हैं)। किसी भी प्रकार के बनाम समय-डोमेन प्रसंस्करण की सीमा स्थितियों में कोई प्रदर्शन समझौता नहीं है, और उनकी बंधी हुई विलंबता अभी भी कई वास्तविक समय के अनुप्रयोगों के लिए उन्हें उपयोगी बनाती है। मैं यह सुनिश्चित करता हूं कि फ़्रीक्वेंसी-डोमेन फ़िल्टरिंग के दावे में संपूर्ण इनपुट सिग्नल में एक बड़े FFT की आवश्यकता होती है, और मुझे यकीन नहीं है कि इस संदर्भ में "शुद्ध" फ़्रीक्वेंसी-डोमेन प्रोसेसिंग से आपका क्या मतलब है।
जेसन आर

2

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

हर विधि में plusses और minuses होंगे। बटरवर्थ आईआईआर है, और बॉक्सकार एफआईआर हैं। बटरवर्थ शायद पास बैंड में चापलूसी कर रहे हैं, लेकिन शायद IIR के आदेश और एफआईआर की चौड़ाई के आधार पर कम खड़ी रोलऑफ़ के साथ। filtfilt वास्तविक समय में लागू करने के लिए कठिन होगा।


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

इसके अलावा, मुझे पूरा यकीन है कि एफएफटी के साथ कार्यान्वित एक बॉक्सकार, परिभाषा से, पास बैंड में पूरी तरह से सपाट है। जब हम कहते हैं कि बटरवर्थ फ़िल्टर "मैक्सिमम फ़्लैट" है, तो मेरा मानना ​​है कि हम इसके बारे में केवल कार्यवाहक फ़िल्टरों के संदर्भ में बात कर रहे हैं (और विकी कहते हैं कि यहां तक ​​कि इसका उलटा चेबचीव फ़िल्टर बनाना संभव है जो बटरवर्थ से अधिक सपाट है)।
फोटॉन

1
आदर्श अनंत लंबाई के लिए सहमत हैं, लेकिन ट्रंकेशन और विंडोिंग के बाद इतना निश्चित नहीं है
स्कॉट सीडमैन

@ ThePhoton हैमिंग / वॉन हॉन सुधार के लिए धन्यवाद। मेरे बुकशेल्फ़ को घर से सही ढंग से देखने की काफी कल्पना नहीं की जा सकती थी।
स्कॉट सीडमैन

@ द फोटॉन; हैमिंग के लिए धन्यवाद डिजिटल फिल्टर बुक । मैंने इसे देखा और यह विशेष रूप से प्राथमिक शिक्षार्थियों के लिए लिखा गया था। मैंने इसे एक उम्मीद के साथ खरीदा था। :)
कोइची सी। नाकामुरा

0

संबंधित सवाल

एफएफटी डिब्बे को शून्य करके फ़िल्टर करना एक बुरा विचार क्यों है? /signals/6220/why-is-it-a-bad-idea-to-filter-by-zeroing-out-fft-bins

एफएफटी से मानों को निकालना फ़िल्टर करने के समान है? /signals/11487/removing-values-from-fft-result-same-as-filtering?noredirect=1&lq=1

हम एफएफटी स्पेक्ट्रम को संशोधित करने और एफएफटी /signals/8911/why-do-we-use-window-in-time-domain-rather के बजाय टाइम डोमेन में विंडो का उपयोग क्यों करते हैं -than-कर-fft-संशोधित-स्पेक्ट्रम और टी? noredirect = 1 & एलक्यू = 1

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.