Causal filter
   HOME

TheInfoList



OR:

In
signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing '' signals'', such as sound, images, and scientific measurements. Signal processing techniques are used to optimize transmissions, ...
, a causal filter is a linear and time-invariant
causal system In control theory, a causal system (also known as a physical or nonanticipative system) is a system where the output depends on past and current inputs but not future inputs—i.e., the output y(t_) depends only on the input x(t) for values of t \ ...
. The word ''causal'' indicates that the filter output depends only on past and present inputs. A
filter Filter, filtering or filters may refer to: Science and technology Computing * Filter (higher-order function), in functional programming * Filter (software), a computer program to process a data stream * Filter (video), a software component tha ...
whose output also depends on future inputs is non-causal, whereas a filter whose output depends ''only'' on future inputs is anti-causal. Systems (including filters) that are ''realizable'' (i.e. that operate in real 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 time t, comes out slightly later. A common design practice for
digital filter In signal processing, a digital filter is a system that performs mathematical operations on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of electronic filter, t ...
s 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 a
window function In signal processing and statistics, a window function (also known as an apodization function or tapering function) is a mathematical function that is zero-valued outside of some chosen interval, normally symmetric around the middle of the int ...
. An example of an anti-causal filter is a
maximum phase In control theory and signal processing, a linear, time-invariant system is said to be minimum-phase if the system and its inverse are causal and stable. The most general causal LTI transfer function can be uniquely factored into a series of an ...
filter, which can be defined as a
stable A stable is a building in which livestock, especially horses, are kept. It most commonly means a building that is divided into separate stalls for individual animals and livestock. There are many different types of stables in use today; the ...
, anti-causal filter whose inverse is also stable and anti-causal.


Example

The following definition is a moving (or "sliding") average of input data s(x)\,. A constant factor of 1/2 is omitted for simplicity: :f(x) = \int_^ s(\tau)\, d\tau\ = \int_^ s(x + \tau) \,d\tau\, where ''x'' could represent a spatial coordinate, as in image processing. But if x\, represents time (t)\,, then a moving average defined that way is non-causal (also called ''non-realizable''), because f(t)\, depends on future inputs, such as s(t+1)\,. A realizable output is :f(t-1) = \int_^ s(t + \tau)\, d\tau = \int_^ 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 function ''h''(''t'') called its
impulse response In signal processing and control theory, the impulse response, or impulse response function (IRF), of a dynamic system is its output when presented with a brief input signal, called an impulse (). More generally, an impulse response is the reac ...
. Its output is the
convolution In mathematics (in particular, functional analysis), convolution is a mathematical operation on two functions ( and ) that produces a third function (f*g) that expresses how the shape of one is modified by the other. The term ''convolution'' ...
: f(t) = (h*s)(t) = \int_^ h(\tau) s(t - \tau)\, d\tau. \, In those terms, causality requires : f(t) = \int_^ h(\tau) s(t - \tau)\, d\tau and general equality of these two expressions requires ''h''(''t'') = 0 for all ''t'' < 0.


Characterization of causal filters in the frequency domain

Let ''h''(''t'') be a causal filter with corresponding Fourier transform ''H''(ω). Define the function : g(t) = which is non-causal. On the other hand, ''g''(''t'') is
Hermitian {{Short description, none Numerous things are named after the French mathematician Charles Hermite (1822–1901): Hermite * Cubic Hermite spline, a type of third-degree spline * Gauss–Hermite quadrature, an extension of Gaussian quadrature m ...
and, consequently, its Fourier transform ''G''(ω) is real-valued. We now have the following relation : h(t) = 2\, \Theta(t) \cdot g(t)\, where Θ(''t'') is the Heaviside unit step function. This means that the Fourier transforms of ''h''(''t'') and ''g''(''t'') are related as follows : H(\omega) = \left(\delta(\omega) - \right) * G(\omega) = G(\omega) - i\cdot \widehat G(\omega) \, where \widehat G(\omega)\, is a
Hilbert transform In mathematics and in signal processing, the Hilbert transform is a specific linear operator that takes a function, of a real variable and produces another function of a real variable . This linear operator is given by convolution with the functi ...
done in the frequency domain (rather than the time domain). The sign of \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: : \widehat H(\omega) = i H(\omega)


References

* * {{DEFAULTSORT:Causal Filter Signal processing Filter theory