Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Causal filter

From Wikipedia, the free encyclopedia

Insignal processing, acausal filter is alinear and time-invariantcausal system. The wordcausal indicates that the filter output depends only on past and present inputs. Afilter whose output also depends on future inputs isnon-causal, whereas a filter whose output dependsonly on future inputs isanti-causal. Systems (including filters) that arerealizable (i.e. that operate inreal time) must be causal because such systems cannot act on a future input. In effect that means the output sample that best represents the input at timet,{\displaystyle t,} comes out slightly later. A common design practice fordigital filters is to create a realizable filter by shortening and/or time-shifting a non-causal impulse response. If shortening is necessary, it is often accomplished as the product of the impulse-response with awindow function.

An example of an anti-causal filter is amaximum phase filter, which can be defined as astable, anti-causal filter whose inverse is also stable and anti-causal.

Each component of the causal filter output begins when its stimulus begins. The outputs of the non-causal filter begin before the stimulus begins.

Example

[edit]

The following definition is asliding ormoving average of input datas(x){\displaystyle s(x)\,}. A constant factor of12 is omitted for simplicity:

f(x)=x1x+1s(τ)dτ =1+1s(x+τ)dτ{\displaystyle f(x)=\int _{x-1}^{x+1}s(\tau )\,d\tau \ =\int _{-1}^{+1}s(x+\tau )\,d\tau \,}

wherex{\displaystyle x} could represent a spatial coordinate, as in image processing. But ifx{\displaystyle x} represents time(t){\displaystyle (t)\,}, then a moving average defined that way isnon-causal (also callednon-realizable), becausef(t){\displaystyle f(t)\,} depends on future inputs, such ass(t+1){\displaystyle s(t+1)\,}. A realizable output is

f(t1)=20s(t+τ)dτ=0+2s(tτ)dτ{\displaystyle f(t-1)=\int _{-2}^{0}s(t+\tau )\,d\tau =\int _{0}^{+2}s(t-\tau )\,d\tau \,}

which is a delayed version of the non-realizable output.

Any linear filter (such as a moving average) can be characterized by a functionh(t) called itsimpulse response. Its output is theconvolution

f(t)=(hs)(t)=h(τ)s(tτ)dτ.{\displaystyle f(t)=(h*s)(t)=\int _{-\infty }^{\infty }h(\tau )s(t-\tau )\,d\tau .\,}

In those terms, causality requires

f(t)=0h(τ)s(tτ)dτ{\displaystyle f(t)=\int _{0}^{\infty }h(\tau )s(t-\tau )\,d\tau }

and general equality of these two expressions requiresh(t) = 0 for allt < 0.

Characterization of causal filters in the frequency domain

[edit]

Leth(t) be a causal filter with corresponding Fourier transformH(ω). Define the function

g(t)=h(t)+h(t)2{\displaystyle g(t)={h(t)+h^{*}(-t) \over 2}}

which is non-causal. On the other hand,g(t) isHermitian and, consequently, its Fourier transformG(ω) is real-valued. We now have the following relation

h(t)=2Θ(t)g(t){\displaystyle h(t)=2\,\Theta (t)\cdot g(t)\,}

where Θ(t) is theHeaviside unit step function.

This means that the Fourier transforms ofh(t) andg(t) are related as follows

H(ω)=(δ(ω)iπω)G(ω)=G(ω)iG^(ω){\displaystyle H(\omega )=\left(\delta (\omega )-{i \over \pi \omega }\right)*G(\omega )=G(\omega )-i\cdot {\widehat {G}}(\omega )\,}

whereG^(ω){\displaystyle {\widehat {G}}(\omega )\,} is aHilbert transform done in the frequency domain (rather than the time domain). The sign ofG^(ω){\displaystyle {\widehat {G}}(\omega )\,} may depend on the definition of the Fourier Transform.

Taking the Hilbert transform of the above equation yields this relation between "H" and its Hilbert transform:

H^(ω)=iH(ω){\displaystyle {\widehat {H}}(\omega )=iH(\omega )}

References

[edit]
Retrieved from "https://en.wikipedia.org/w/index.php?title=Causal_filter&oldid=1224576751"
Categories:

[8]ページ先頭

©2009-2025 Movatter.jp