デジタルフィルターが機能する理由


8

だから私はFIRとIIRフィルターについて読み始めたばかりで、これまでのところ、理論がいかに「単純」であるかに驚いています。

  • しかし、私を混乱させるものは何ですか、なぜ以前のサンプルの加重和を作成することによってフィルタリングが機能するのですか?

  • これが望ましいフィルタリング効果を生み出すことができると考える直感は何ですか?

  • だれでも遅延信号を合計すると櫛形フィルタリングが生成されることを確認できますが、私には少し直感的ではないようです。しかし、望ましいフィルタリングは?どうして?

3
たたみ込みを計算するため、機能します。
MBaz 2016年

ええと、それはラグランジュ補間のようなものです。同じ質問をすることができます:「これが望ましい [補間] 効果を生み出すことができると考える直感は何ですか?」 適切に設定しなければならない係数がたくさんあります。どのようにしてそれらを適切に設定しますか?数学および/またはEEコースを受講してください。2N方程式と2N未知数という連立方程式の問題です。
robert bristow-johnson 2016

@ robertbristow-johnsonしかし、補間アルゴリズムはある種の仮定から始まります。このような補間多項式は、補間点と連続性の仮定などの間のk次多項式でなければなりません。フィルタリングには、フィルタリング関数の定義につながる同じ種類の仮定がありますか?
mavavilj 2016

@mavavilj、はい。まあ、いいえ、それほど「仮定」ではありません。フィルタリング作るには、の使用仕様「通過帯域」「ストップバンド」「遷移帯域」、そして私たちは、これらの仕様を満たすために、このような方法で、FIRまたはIIR伝達関数の係数を設定してみてください。
robert bristow-johnson 2016

回答:


14

次の形式の離散時間入力信号を考えます。

x[n]=cos(ω0n)

ここで、ラジアン周波数 ω0 0から π サンプルあたりのラジアン。

今の基本的な算術演算によって定義された離散時間(デジタル)LTI FIRフィルタの2種類の最も簡単な検討加算及び減算、それらの入力サンプルを、次いで、出力を生成y1[n] そして y2[n] による:

y1[n]=(x[n]+x[n1])/2   ,   sum filter
そして
y2[n]=(x[n]x[n1])/2   ,   difference filter

入力信号の周波数を設定して、これらのフィルターの定性分析を行いましょう ω0低い(近いです0)および(に近いπ)値、および対応する出力の監視 y1[n] そして y2[n] それぞれ;

最初に、 ω0低周波数に設定されています。次に、連続する入力サンプルx[n] そして x[n1]有することになる非常に類似した低周波の正弦波は、他の1つの試料からあまり変化しないので、値を。この場合、それらの合計加算されますが、それらのキャンセルされます。したがってy1[n] 入力の値にほぼ等しくなります x[n]、出力中 y2[n]キャンセルによりゼロに近くなります。定性分析の最初の部分は、最初のフィルターがy1[n]、低周波数信号を通過させながら、2番目のフィルター、 y2[n] それらを減衰させます。

分析の2番目の部分について、 ω0周波数に設定されてます。次に、入力サンプルの値x[n] そして x[n1]コサインはサンプル間で急速に変化するため、極性逆になります。これが当てはまる場合、それらの合計キャンセルされますが、それらの合計ます。したがってy1[n] 出力はほぼゼロになりますが、出力 y2[n] 入力に似ています x[n]。分析の2番目の部分は、最初のフィルターがy1[n]、2番目のフィルターが動作している間、高周波信号を停止し、 y2[n]、それらを渡します。

これら2つの定性分析を組み合わせると、最初のフィルターは y1[n]=0.5(x[n]+x[n1])あるローパス低周波数及び減衰高い周波数を通過フィルタは、第二のフィルタが、y2[n]=0.5(x[n]x[n1])低域を減衰させ、高域を通過させるハイパスフィルターです。

この設定では、より多くのサンプルを使用することで、より複雑なフィルターが実現されます。遅延は、それに応じて重み付けされた、より遠い遅延から取得されます。通過帯域と遮断帯域のカットオフ周波数、遷移帯域幅、およびリップルはすべて 、合計(または差分)サンプルに適用される重みと、合計(または差分)で使用されるサンプル数(フィルターの長さ)によって決定されます。

これらの重みは、フィルター係数(またはそのインパルス応答)と呼ばれます。h[n] フィルターを特徴付けるFIRフィルターの場合)。


3

あなたはおそらくすでに多くのフィルタリングを使用しています。移動平均はフィルターです!

一般的なフィルタリングは、ウィンドウ内のすべてのコンポーネントを平均するのではなく、コンポーネントに重みを付けることで、ファンシーな移動平均を実行すると考えてください。

信号を平滑化したいだけの場合は、平均で使用されている各値に、たとえばガウス(ベル)曲線で重み付けできます。これはローパスフィルターです。

特定の頻度を分離したい場合は、同じ頻度で各値に交互に正と負の重みを付けることができます。


こんにちは:すべての回答は素晴らしく、洞察に満ちたさまざまな見方ができました。私は時間領域から来たので、これらの答えは非常に興味深く、私が知らなかった多くの電球がオフになりました。どうもありがとう。
マークリーズ2018

3

入力サンプルの加重和を計算するときに、なぜ特定の周波数領域の振る舞いが得られるのかについての直感を探していると思います。ご存知のように、因果の長さの出力信号N FIRフィルターは、

(1)y[n]=k=0N1h[k]x[nk]

どこ h[n] フィルター係数(タップ)、または同等のフィルターの有限長インパルス応答であり、 x[n] 入力信号です。

さあ x[n]=ejω0n、すなわち、周波数での複素指数 ω0。対応する出力信号は

(2)y[n]=k=0N1h[k]ejω0(nk)=ejω0nk=0N1h[k]ejω0k=ejω0nH(ω0)

どこ

(3)H(ω)=k=0N1h[k]ejωk

ある周波数応答で評価し、フィルタのω=ω0。これは、インパルス応答の離散時間フーリエ変換に等しいh[n]

Eq。 (2) 周波数での入力周波数成分が ω0出力に表示されます。その振幅は、|H(ω0)|、その位相は arg{H(ω0)}。例として、係数を選択できますh[n] そのような H(ω0)=0 一定の頻度で ω0。この場合、入力信号の対応する周波数成分はフィルターによって完全に抑制されます。これがノッチフィルターの機能です。

Eq。 (2)離散時間フィルターの周波数領域の動作を説明します。希望する周​​波数応答を概算できますD(ω) 沿って H(ω) 係数を選択する h[n]適切な方法で。これは、近似理論、またはより具体的には、デジタルフィルターの(周波数領域)設計のトピックです。見ていこの回答デジタルフィルタ設計の簡単な概要について、いくつかの参照のために。


3

これまでに追加された有用な回答に、直感的に、波動理論、特に波の相互作用に基づいているため、フィルタリングが機能することを追加したいと思います。これは、直感的な例の膨大な配列を提供します。

しかし、また、基本的に2つの視点があります。1つは抽象的な視点であり、現実をモデル化してモデルを操作することで得られます。もう1つは「物理的な」現実です。つまり、自然界で実際に起こっていることです。

たとえば、実際には、音源からの音が壁で跳ね返り、リスナーの耳に戻ってきます。これは現実です。「モデリング」の現実とは、壁が単なるディテールであるということです。何が起こっているのかというと、別の音源があり、音源の音を再生している壁の後ろの明確な場所にあります。この単純なモデルにより、波の追加として反射を調べることができます...しかし、壁の反対側には何もありません。

y=a×cos(ωt+ϕ)発振器です。ベンチの上にある関数発生器から出てきた場合、y 出力のジャックに対応し、 a 振幅ダイヤルです ω 周波数ダイヤルであり、 φフェーズダイヤルです。したがって、私たちの抽象的なシンボルのそれぞれに物理的な意味があります。私たちは周波数ダイアルで遊ぶことができ、それはすぐに私たちにアクセス可能になり、それは私たちの経験の一部になります。

それで遊べますか hそのマット。Lはさらに上の彼の応答で話しているのですか?の物理的な対応は何ですかh?実際に何が起こっているのですか?とはh

h多くの素晴らしいものです。部屋はh。橋の下の長いトンネル通路はh。雰囲気はh。ピアノはh(一般的に、楽器の共振器)。海はh。ワイヤーの一部はh。ギターアンプはh

私たちが自由空間と呼んでいるものを想像してください。自由空間とは、あなたの声が平らにならないほど大きく、まったく共鳴しない空間です。とても不思議な感じです。「フラット」の本当の意味を理解するには、生地を販売しているショップ(または無響室 ...生地ショップの方が簡単です)にいる必要があります。すべての商品が音を非常に吸収するので、完全に隔離された感覚が得られ、方向感覚がなくなります。

とにかく、私たちは自由空間にいて、その関数発生器を目の前のどこかのスピーカーに置いています。それをオン。笛のような透き通った音が聞こえます。スピーカーは空気を振動運動に設定し、最終的には私たちの耳に到達します。

次に、花崗岩の平らなシートを持ち込みます。ホイールに取り付けられた大きな花崗岩のシートであり、好きな場所に配置できます。後ろのどこかに配置し、スピーカーと花崗岩のシートの間の特定の場所に移動すると、音が大きくなるまで音が小さくなります。完全に消えます。なんでこんなことが起こっているの?スピーカーが私たちの前で生成する波のピークは、私たちの後ろのファントムスピーカーによって生成される波の谷と(完全に)結合する(または、実際には、スピーカーからの同じ波が跳ね返るという事実)花崗岩シートの再結合。ちなみに、この跳ね返りの物理的性質のため、どこに反射があっても、反射信号の位相は反転します)。したがって、フロントスピーカーが圧力を発生させる場合、リアスピーカー(反射)が「吸引」を発生させ、空気は効果的に移動しません。

これは何と関係がありますか h

「空」から始めましょう h。いいえ、すべてゼロではありません。このように見えますh=[10000000]。耳に当たる信号はz=yh。のここでマットからの畳み込みを示します。上記のLの応答。これとともにhz と同じです y。これは私たちの自由空間です。花崗岩シートの詳細を取り込みます。これはどのように変化しますかh

このようなものかもしれません h=[1000010000]. Which represents 1 bounce some time later than the immediate forward wave reaching our ears. If the distance between the two 1s corresponds to half a wavelength of the frequency of our generator, z will be zero. Other wavelengths will be cancelling out proportionally.

So...We can carve the harmonic spectrum of z...by careful placement of echoes in h...

Now, forget about gravity. We float in free space (not outer space) and we bring in sheets of granite, sheets of plywood, sheets of plywood covered in fabric, sheets of really thick fabric, gypsum, glass, etc and we can position them in every way we like. Because of the different materials, the "echo profile" we are effectively sculpting will have different amplitudes. So your h will end up being something like h=[1.0,0,0,0,0,0.6,0,0.1,0.05,0,0,0,0,0].

Does this actually happen in reality? Yes! Every time that you experience sound in a beautiful concert hall, someone has sat there for hours trying to sculpt the room's h so that its reflections don't give people a headache or you can actually hear what the speaker says. And you can see the sculpting tools all around you, there are bass traps, there are diffusers, there are simply panels hanging from the ceiling, there are curtains, each one of these corresponding to one or more coefficients in h. In fact, the h was starting to be sculpted since the architect specified the shape of the space.

Can we "get" the h of a room? Certainly, go to your living room, inflate a balloon and leave it somewhere close to your TV, put a microphone somewhere close to the couch and pinch the balloon so that it bursts. What happens? A sharp atmospheric disturbance (a unit pulse) travels through space, it hits the microphone but also bounces off walls and objects and hits the microphone later. There you have it, an h that when convolved with the "flat" signal from your TV would simulate what you actually hear in your living room. Now, repeat the same experiment in the bathroom (covered in tiles, different signature), or a long bunker in Scotland.

Different rooms, different h, different hearing experience. Different hearing experience at the long cobble-stone underpass, different hearing experience in the fabric shop.

It's a thunderstorm. You see the bolt (that's your first 1) and later on you hear rumble (subsequent echoes of the electric arc). That's the h that carries information about the landscape and the atmosphere around us as the atmospheric disturbance caused by the lightning arc travels in space and bounces. It takes the bursting of more than a balloon to see it though. You hit the note of a piano, the wave travels along the string, bounces of its end and comes back, it also travels through the wooden body of the piano and returns. Different material for the strings and the body, different h, different piano.

Tie a light bulb to a brick, throw it overboard and record it bursting at depth (from this site). That's the h of the ocean below the boat, it conveys information about how sound propagates.

What do all these phenomena have in common? Waves! Mechanical waves in fact, in the case of sound and the ways they interact. And actually, it's just a good enough approximation. There are many interesting non-linear phenomena (or this one) that take place in the sea and in the air and certainly in electronic circuits (reality, in general) that get lumped together in this simple model of interacting sinusoids and where this representation of reality would break.

Finally, please note that in the "modelling" reality, (from the mathematical point of view) the convolution integral is a a way of solving differential equations (models of systems) and has other applications too (please see the last three in this list).


1

An intuitive way to look a FIR filter is as a sort-of running match function. A weighted-sum-of-samples outputs how much the input looks similar to some "match" value inherent in the weights.

A bandpass filter looks sort of like a chunk of some waveform at the frequency that you want the filter to pass. A good match from a segment of about the same frequency of input signal outputs a high positive value. Shift that input 90 degrees, and the match is orthogonal, or nearly so, so the filter outputs a low value. Shift another 90 degrees, and the signal waveform now looks to be roughly the inverse of the FIR waveform, so the filter outputs a negative value. This alternation from positive to negative thus produces an output waveform that somewhat resembles the input waveform if it is a good match at some phase and an opposite match at other phases. Other input waveforms, such as DC, or a much higher frequency, won't match nearly as well, so will produce lower output values.

A moving average or low pass FIR filter has lots of weights the same or nearly the same, so will output at a higher level when the input does not oscillate both with positive and negative values around DC, which will cancel out, at least partially, when summed after nearly the same weighting.

Whereas a FIR filter kernel that alternates every weight, or nearly so, will cancel out given a DC input, but better match highest frequency inputs, and thus output more given input that looks less like DC, e.g. a high-pass filter.

Since FIR filtering in as LTI process, the "linear" in LTI means you can sum multiple "match types" together to create a linear combination of frequency responses, which is sort-of why the inverse FT of a frequency response produces a impulse response that can be used for FIR filtering with roughly that desired frequency response.

Some functions, such as sine and cosine, can be closely approximated by a short recursion. An IIR filter can be looked at as simply a combination of a short recursion function generator that generates some desired FIR filter-like "match" waveform, plus simultaneously doing the above match process at the same time.

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.