डिजिटल फ़िल्टर डिज़ाइन एक बहुत बड़ा और परिपक्व विषय है और जैसा कि आपने अपने प्रश्न में उल्लेख किया है - बहुत सारी सामग्री उपलब्ध है। जो मैं यहां करने की कोशिश कर रहा हूं वह आपको शुरू करने और मौजूदा सामग्री को और अधिक सुलभ बनाने के लिए है। डिजिटल फिल्टर के बजाय मुझे वास्तव में असतत समय फिल्टर के बारे में बात करनी चाहिए क्योंकि मैं यहां गुणांक और सिग्नल मात्रा का ठहराव पर विचार नहीं करूंगा। आप पहले से ही एफआईआर और आईआईआर फिल्टर के बारे में जानते हैं, और आप डीएफ I और II जैसी कुछ फ़िल्टर संरचनाएं भी जानते हैं। फिर भी, मुझे कुछ बुनियादी बातों से शुरू करना चाहिए:
एक गैर-पुनरावर्ती रैखिक समय-अपरिवर्तनीय (LTI) फ़िल्टर को निम्नलिखित अंतर समीकरण द्वारा वर्णित किया जा सकता है
y(n)=h0x(n)+h1x(n−1)+…+hN−1x(n−N+1)=∑k=0N−1hkएक्स(n−k)(1)
जहाँ आउटपुट अनुक्रम है, x ( n ) इनपुट अनुक्रम है, n समय सूचकांक है, h k फ़िल्टर गुणांक हैं, और N फ़िल्टर लंबाई (नल की संख्या) है। फिल्टर टैप करता ज कश्मीर भी फिल्टर के आवेग प्रतिक्रिया कर रहे हैं, क्योंकि यदि इनपुट संकेत एक आवेग, यानी है एक्स ( एन ) = δ ( एन ) , तो y ( एन ) = ज ny( एन )x ( n )nजकएनजकx ( n ) = δ( एन )y( n ) = एचn(यदि फिल्टर की मेमोरी को शून्य के साथ आरंभीकृत किया गया है)। समीकरण (1) एक रैखिक समय-अपरिवर्तनीय परिमित आवेग प्रतिक्रिया (एफआईआर) प्रणाली का वर्णन करता है। (1) के दाईं ओर का योग एक कनवल्शन योग है, अर्थात आवेग प्रतिक्रिया के साथ इनपुट सिग्नल को हल करके आउटपुट सिग्नल प्राप्त किया जाता है। यह हमेशा सच होता है, लेकिन IIR फ़िल्टर के लिए हम स्पष्ट रूप से दीक्षांत राशि की गणना नहीं कर सकते हैं क्योंकि आवेग प्रतिक्रिया असीम रूप से लंबी होती है, अर्थात असीम रूप से कई गुणांक जक। एफआईआर फिल्टर का एक महत्वपूर्ण लाभ यह है कि वे हमेशा स्थिर होते हैं, अर्थात एक बंधे हुए इनपुट अनुक्रम के लिए, आउटपुट अनुक्रम हमेशा बंधा होता है। एक और लाभ यह है कि एफआईआर फिल्टर हमेशा एक बिल्कुल रैखिक चरण के साथ महसूस किया जा सकता है, अर्थात वे शुद्ध देरी के अलावा किसी भी चरण विकृति को नहीं जोड़ेंगे। इसके अलावा, डिजाइन की समस्या आमतौर पर आसान होती है, जैसा कि हम बाद में देखेंगे।
एक पुनरावर्ती LTI फ़िल्टर निम्नलिखित अंतर समीकरण द्वारा वर्णित है:
y( n ) = बी0x ( n ) + b1x ( n - 1 ) + … + bमx ( n - M) -- ए1y( n - 1 ) - … - aएनy( n - एन)(2)
समीकरण (2) से पता चलता है कि आउटपुट न केवल भारित और विलंबित इनपुट नमूनों से बना है, बल्कि पिछले आउटपुट नमूनों का भी है। सामान्य तौर पर, ऐसी प्रणाली की आवेग प्रतिक्रिया असीम रूप से लंबी होती है, अर्थात संबंधित प्रणाली एक IIR प्रणाली है। हालांकि, परिमित आवेग प्रतिक्रिया के साथ पुनरावर्ती फिल्टर के विशेष मामले हैं। ध्यान दें कि आवेग प्रतिक्रिया अब तक या तो गुणांक नहीं दिया जाता है या एक कश्मीर एफआईआर फिल्टर के मामले में। IIR फ़िल्टर का एक फायदा यह है कि उच्च स्टॉपबैंड क्षीणन के साथ खड़ी फिल्टर एफआईआर मामले की तुलना में बहुत कम गुणांक (और देरी) के साथ महसूस किए जा सकते हैं, अर्थात वे कम्प्यूटेशनल रूप से अधिक कुशल हैं। हालांकि, एक गुणांकों के विकल्प के साथ सावधान रहने की जरूरत है एक कश्मीरखकएकएक क्योंकि IIR फ़िल्टर अस्थिर हो सकता है, अर्थात उनके आउटपुट अनुक्रम को अनबाउंड किया जा सकता है, यहां तक कि एक बंधे हुए इनपुट अनुक्रम के साथ भी।
फ़िल्टर्स को समय (नमूना) डोमेन या फ़्रीक्वेंसी डोमेन, या दोनों में विनिर्देशों के अनुसार डिज़ाइन किया जा सकता है। चूंकि आपने अपने प्रश्न में कट-ऑफ आवृत्ति का उल्लेख किया है, इसलिए मुझे लगता है कि आप आवृत्ति डोमेन में विशिष्टताओं में अधिक रुचि रखते हैं। इस मामले में आपको एफआईआर और आईआईआर सिस्टम की आवृत्ति प्रतिक्रियाओं पर एक नजर डालने की जरूरत है। एक प्रणाली की आवृत्ति प्रतिक्रिया यह है कि यह मौजूद है (जो स्थिर स्थिति के लिए मामला है) की धारणा के फूरियर रूपांतरण है। एफआईआर फिल्टर की आवृत्ति प्रतिक्रिया है
एच( ई)ज θ) = ∑के = ०एन- 1जकइ- जे के θ(3)
θ
θ = 2 πचचरों
चचरों
एच( ई)ज θ) = ∑मके = ०खकइ- जे θ1 + ∑एनके = १एकइ- जे θ(4)
एक= 0के = 1 , … , एन
आइए अब फ़िल्टर डिज़ाइन विधियों पर एक त्वरित नज़र डालें। एफआईआर फिल्टर के लिए आप फिल्टर के आवेग प्रतिक्रिया प्राप्त करने के लिए वांछित आवृत्ति प्रतिक्रिया का उलटा फूरियर रूपांतरण कर सकते हैं, जो सीधे फिल्टर गुणांक से मेल खाती है। चूंकि आप एक परिमित लंबाई आवेग प्रतिक्रिया द्वारा वांछित प्रतिक्रिया का अनुमान लगाते हैं, इसलिए आपको गिब्स की घटना के कारण वास्तविक आवृत्ति प्रतिक्रिया में दोलनों को कम करने के लिए प्राप्त आवेग प्रतिक्रिया के लिए एक चिकनी खिड़की लागू करनी चाहिए। इस विधि को आवृत्ति-नमूना विधि कहा जाता है।
आदर्श लोअरपास, हाईपास, बैंडपास या बैंडस्टॉप फिल्टर (और कुछ अन्य) जैसे सरल मानक फिल्टर के लिए, आप आदर्श रूप से वांछित वांछित प्रतिक्रिया के उलटा फूरियर ट्रांसफॉर्म लेकर सटीक आवेग प्रतिक्रिया की गणना कर सकते हैं:
जक= 12 π∫π- πएच( ई)ज θ) ईजे के θघθ
यह इंटीग्रल टुकड़ा-टुकड़ा निरंतर वांछित प्रतिक्रियाओं के लिए मूल्यांकन करना आसान है, जैसा कि आदर्श आवृत्ति-चयनात्मक फिल्टर के लिए मामला है। यह आपको एक असीम रूप से लंबी, गैर-कारण आवेग प्रतिक्रिया देगा, जिसे परिमित और कारण बनाने के लिए खिड़की और स्थानांतरित करने की आवश्यकता है। इस पद्धति को विंडो-डिज़ाइन के रूप में जाना जाता है।
बेशक कई अन्य एफआईआर फिल्टर डिजाइन के तरीके हैं। एक महत्वपूर्ण संख्यात्मक विधि प्रसिद्ध पार्क्स-मैकलेलन एक्सचेंज एल्गोरिथ्म है जो निरंतर पासबैंड और स्टॉपबैंड रिपल्स के साथ इष्टतम फिल्टर डिजाइन करती है। यह एक संख्यात्मक अनुमान विधि है और कई सॉफ्टवेयर कार्यान्वयन उपलब्ध हैं, उदाहरण के लिए मतलब और ऑक्टेव में।
रोंरोंz
निश्चित रूप से आपके पास विशिष्ट प्रकार के आधार पर कई और अधिक रोचक और उपयोगी विधियां हैं, लेकिन मुझे आशा है कि यह आपको आरंभ कर देगा और आपके द्वारा समझ में आने वाली किसी भी सामग्री को बना देगा। कुछ बुनियादी फिल्टर डिजाइन विधियों (और बहुत अधिक) को कवर करने वाली एक बहुत अच्छी (और मुफ्त) पुस्तक ऑर्फिडिडिस द्वारा सिग्नल प्रोसेसिंग के लिए परिचय है। आप वहां कई डिजाइन उदाहरण पा सकते हैं। एक और बेहतरीन क्लासिक किताब है डिजिटल फिल्टर डिज़ाइन बाय पार्क्स एंड ब्यूरस।