Introduction to Digital Filters
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Moving Average Filters
CHAPTER 15 Moving Average Filters The moving average is the most common filter in DSP, mainly because it is the easiest digital filter to understand and use. In spite of its simplicity, the moving average filter is optimal for a common task: reducing random noise while retaining a sharp step response. This makes it the premier filter for time domain encoded signals. However, the moving average is the worst filter for frequency domain encoded signals, with little ability to separate one band of frequencies from another. Relatives of the moving average filter include the Gaussian, Blackman, and multiple- pass moving average. These have slightly better performance in the frequency domain, at the expense of increased computation time. Implementation by Convolution As the name implies, the moving average filter operates by averaging a number of points from the input signal to produce each point in the output signal. In equation form, this is written: EQUATION 15-1 Equation of the moving average filter. In M &1 this equation, x[ ] is the input signal, y[ ] is ' 1 % y[i] j x [i j ] the output signal, and M is the number of M j'0 points used in the moving average. This equation only uses points on one side of the output sample being calculated. Where x[ ] is the input signal, y[ ] is the output signal, and M is the number of points in the average. For example, in a 5 point moving average filter, point 80 in the output signal is given by: x [80] % x [81] % x [82] % x [83] % x [84] y [80] ' 5 277 278 The Scientist and Engineer's Guide to Digital Signal Processing As an alternative, the group of points from the input signal can be chosen symmetrically around the output point: x[78] % x[79] % x[80] % x[81] % x[82] y[80] ' 5 This corresponds to changing the summation in Eq. -
Linear Filtering of Random Processes
Linear Filtering of Random Processes Lecture 13 Spring 2002 Wide-Sense Stationary A stochastic process X(t) is wss if its mean is constant E[X(t)] = µ and its autocorrelation depends only on τ = t1 − t2 ∗ Rxx(t1,t2)=E[X(t1)X (t2)] ∗ E[X(t + τ)X (t)] = Rxx(τ) ∗ Note that Rxx(−τ)=Rxx(τ)and Rxx(0) = E[|X(t)|2] Lecture 13 1 Example We found that the random telegraph signal has the autocorrelation function −c|τ| Rxx(τ)=e We can use the autocorrelation function to find the second moment of linear combinations such as Y (t)=aX(t)+bX(t − t0). 2 2 Ryy(0) = E[Y (t)] = E[(aX(t)+bX(t − t0)) ] 2 2 2 2 = a E[X (t)] + 2abE[X(t)X(t − t0)] + b E[X (t − t0)] 2 2 = a Rxx(0) + 2abRxx(t0)+b Rxx(0) 2 2 =(a + b )Rxx(0) + 2abRxx(t0) −ct =(a2 + b2)Rxx(0) + 2abe 0 Lecture 13 2 Example (continued) We can also compute the autocorrelation Ryy(τ)forτ =0. ∗ Ryy(τ)=E[Y (t + τ)Y (t)] = E[(aX(t + τ)+bX(t + τ − t0))(aX(t)+bX(t − t0))] 2 = a E[X(t + τ)X(t)] + abE[X(t + τ)X(t − t0)] 2 + abE[X(t + τ − t0)X(t)] + b E[X(t + τ − t0)X(t − t0)] 2 2 = a Rxx(τ)+abRxx(τ + t0)+abRxx(τ − t0)+b Rxx(τ) 2 2 =(a + b )Rxx(τ)+abRxx(τ + t0)+abRxx(τ − t0) Lecture 13 3 Linear Filtering of Random Processes The above example combines weighted values of X(t)andX(t − t0) to form Y (t). -
Designing Filters Using the Digital Filter Design Toolkit Rahman Jamal, Mike Cerna, John Hanks
NATIONAL Application Note 097 INSTRUMENTS® The Software is the Instrument ® Designing Filters Using the Digital Filter Design Toolkit Rahman Jamal, Mike Cerna, John Hanks Introduction The importance of digital filters is well established. Digital filters, and more generally digital signal processing algorithms, are classified as discrete-time systems. They are commonly implemented on a general purpose computer or on a dedicated digital signal processing (DSP) chip. Due to their well-known advantages, digital filters are often replacing classical analog filters. In this application note, we introduce a new digital filter design and analysis tool implemented in LabVIEW with which developers can graphically design classical IIR and FIR filters, interactively review filter responses, and save filter coefficients. In addition, real-world filter testing can be performed within the digital filter design application using a plug-in data acquisition board. Digital Filter Design Process Digital filters are used in a wide variety of signal processing applications, such as spectrum analysis, digital image processing, and pattern recognition. Digital filters eliminate a number of problems associated with their classical analog counterparts and thus are preferably used in place of analog filters. Digital filters belong to the class of discrete-time LTI (linear time invariant) systems, which are characterized by the properties of causality, recursibility, and stability. They can be characterized in the time domain by their unit-impulse response, and in the transform domain by their transfer function. Obviously, the unit-impulse response sequence of a causal LTI system could be of either finite or infinite duration and this property determines their classification into either finite impulse response (FIR) or infinite impulse response (IIR) system. -
Finite Impulse Response (FIR) Digital Filters (II) Ideal Impulse Response Design Examples Yogananda Isukapalli
Finite Impulse Response (FIR) Digital Filters (II) Ideal Impulse Response Design Examples Yogananda Isukapalli 1 • FIR Filter Design Problem Given H(z) or H(ejw), find filter coefficients {b0, b1, b2, ….. bN-1} which are equal to {h0, h1, h2, ….hN-1} in the case of FIR filters. 1 z-1 z-1 z-1 z-1 x[n] h0 h1 h2 h3 hN-2 hN-1 1 1 1 1 1 y[n] Consider a general (infinite impulse response) definition: ¥ H (z) = å h[n] z-n n=-¥ 2 From complex variable theory, the inverse transform is: 1 n -1 h[n] = ò H (z)z dz 2pj C Where C is a counterclockwise closed contour in the region of convergence of H(z) and encircling the origin of the z-plane • Evaluating H(z) on the unit circle ( z = ejw ) : ¥ H (e jw ) = åh[n]e- jnw n=-¥ 1 p h[n] = ò H (e jw )e jnwdw where dz = jejw dw 2p -p 3 • Design of an ideal low pass FIR digital filter H(ejw) K -2p -p -wc 0 wc p 2p w Find ideal low pass impulse response {h[n]} 1 p h [n] = H (e jw )e jnwdw LP ò 2p -p 1 wc = Ke jnwdw 2p ò -wc Hence K h [n] = sin(nw ) n = 0, ±1, ±2, …. ±¥ LP np c 4 Let K = 1, wc = p/4, n = 0, ±1, …, ±10 The impulse response coefficients are n = 0, h[n] = 0.25 n = ±4, h[n] = 0 = ±1, = 0.225 = ±5, = -0.043 = ±2, = 0.159 = ±6, = -0.053 = ±3, = 0.075 = ±7, = -0.032 n = ±8, h[n] = 0 = ±9, = 0.025 = ±10, = 0.032 5 Non Causal FIR Impulse Response We can make it causal if we shift hLP[n] by 10 units to the right: K h [n] = sin((n -10)w ) LP (n -10)p c n = 0, 1, 2, …. -
Chapter 3 FILTERS
Chapter 3 FILTERS Most images are a®ected to some extent by noise, that is unexplained variation in data: disturbances in image intensity which are either uninterpretable or not of interest. Image analysis is often simpli¯ed if this noise can be ¯ltered out. In an analogous way ¯lters are used in chemistry to free liquids from suspended impurities by passing them through a layer of sand or charcoal. Engineers working in signal processing have extended the meaning of the term ¯lter to include operations which accentuate features of interest in data. Employing this broader de¯nition, image ¯lters may be used to emphasise edges | that is, boundaries between objects or parts of objects in images. Filters provide an aid to visual interpretation of images, and can also be used as a precursor to further digital processing, such as segmentation (chapter 4). Most of the methods considered in chapter 2 operated on each pixel separately. Filters change a pixel's value taking into account the values of neighbouring pixels too. They may either be applied directly to recorded images, such as those in chapter 1, or after transformation of pixel values as discussed in chapter 2. To take a simple example, Figs 3.1(b){(d) show the results of applying three ¯lters to the cashmere ¯bres image, which has been redisplayed in Fig 3.1(a). ² Fig 3.1(b) is a display of the output from a 5 £ 5 moving average ¯lter. Each pixel has been replaced by the average of pixel values in a 5 £ 5 square, or window centred on that pixel. -
ELEG 5173L Digital Signal Processing Ch. 5 Digital Filters
Department of Electrical Engineering University of Arkansas ELEG 5173L Digital Signal Processing Ch. 5 Digital Filters Dr. Jingxian Wu [email protected] 2 OUTLINE • FIR and IIR Filters • Filter Structures • Analog Filters • FIR Filter Design • IIR Filter Design 3 FIR V.S. IIR • LTI discrete-time system – Difference equation in time domain N M y(n) ak y(n k) bk x(n k) k 1 k 0 – Transfer function in z-domain N M k k Y (z) akY (z)z bk X (z)z k 1 k 0 M k bk z Y (z) k 0 H (z) N X (z) k 1 ak z k 1 4 FIR V.S. IIR • Finite impulse response (FIR) – difference equation in the time domain M y(n) bk x(n k) k 0 – Transfer function in the Z-domain M Y (z) k H (z) bk z X (z) k 0 – Impulse response h(n) [b ,b ,,b ] 0 1 M • The impulse response is of finite length finite impulse response 5 FIR V.S. IIR • Infinite impulse response (IIR) – Difference equation in the time domain N M y(n) ak y(n k) bk x(n k) k1 k0 – Transfer function in the z-domain M k bk z Y(z) k0 H (z) N X (z) k 1 ak z k1 – Impulse response can be obtained through inverse-z transform, and it has infinite length 6 FIR V.S. IIR • Example – Find the impulse response of the following system. Is it a FIR or IIR filter? Is it stable? 1 y(n) y(n 2) x(n) 4 7 FIR V.S. -
A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement
Linkoping¨ Studies in Science and Technology Dissertation No. 1171 A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement Bjorn¨ Svensson Department of Biomedical Engineering Linkopings¨ universitet SE-581 85 Linkoping,¨ Sweden http://www.imt.liu.se Linkoping,¨ April 2008 A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement c 2008 Bjorn¨ Svensson Department of Biomedical Engineering Linkopings¨ universitet SE-581 85 Linkoping,¨ Sweden ISBN 978-91-7393-943-0 ISSN 0345-7524 Printed in Linkoping,¨ Sweden by LiU-Tryck 2008 Abstract Filtering is a fundamental operation in image science in general and in medical image science in particular. The most central applications are image enhancement, registration, segmentation and feature extraction. Even though these applications involve non-linear processing a majority of the methodologies available rely on initial estimates using linear filters. Linear filtering is a well established corner- stone of signal processing, which is reflected by the overwhelming amount of literature on finite impulse response filters and their design. Standard techniques for multidimensional filtering are computationally intense. This leads to either a long computation time or a performance loss caused by approximations made in order to increase the computational efficiency. This dis- sertation presents a framework for realization of efficient multidimensional filters. A weighted least squares design criterion ensures preservation of the performance and the two techniques called filter networks and sub-filter sequences significantly reduce the computational demand. A filter network is a realization of a set of filters, which are decomposed into a structure of sparse sub-filters each with a low number of coefficients. -
Digital Signal Processing Filter Design
2065-27 Advanced Training Course on FPGA Design and VHDL for Hardware Simulation and Synthesis 26 October - 20 November, 2009 Digital Signal Processing Filter Design Massimiliano Nolich DEEI Facolta' di Ingegneria Universita' degli Studi di Trieste via Valerio, 10, 34127 Trieste Italy Filter design 1 Design considerations: a framework |H(f)| 1 C ıp 1 ıp ıs f 0 fp fs Passband Transition Stopband band The design of a digital filter involves five steps: Specification: The characteristics of the filter often have to be specified in the frequency domain. For example, for frequency selective filters (lowpass, highpass, bandpass, etc.) the specification usually involves tolerance limits as shown above. Coefficient calculation: Approximation methods have to be used to calculate the values hŒk for a FIR implementation, or ak, bk for an IIR implementation. Equivalently, this involves finding a filter which has H.z/ satisfying the requirements. Realisation: This involves converting H.z/ into a suitable filter structure. Block or flow diagrams are often used to depict filter structures, and show the computational procedure for implementing the digital filter. 1 Analysis of finite wordlength effects: In practice one should check that the quantisation used in the implementation does not degrade the performance of the filter to a point where it is unusable. Implementation: The filter is implemented in software or hardware. The criteria for selecting the implementation method involve issues such as real-time performance, complexity, processing requirements, and availability of equipment. 2 Finite impulse response (FIR) filter design A FIR filter is characterised by the equations N 1 yŒn D hŒkxŒn k kXD0 N 1 H.z/ D hŒkzk: kXD0 The following are useful properties of FIR filters: They are always stable — the system function contains no poles. -
Lecture 2 - Digital Filters
Lecture 2 - Digital Filters 2.1 Digital filtering Digital filtering can be implemented either in hardware or software; in the first case, the numerical processor is either a special-purpose chip or it is assembled out of a set of digital integrated circuits which provide the essential building blocks of a digital filtering operation – storage, delay, addition/subtraction and multiplication by constants. On the other hand, a general-purpose mini-or micro-computer can also be programmed as a digital filter, in which case the numerical processor is the computer’s CPU, GPU and memory. Filtering may be applied to signals which are then transformed back to the analogue domain using a digital to analogue convertor or worked with entirely in the digital domain. 33 2.1.1 Reasons for using a digital rather than an analogue filter The numerical processor can easily be (re-)programmed to implement a num- • ber of different filters. The accuracy of a digital filter is dependent only on the round-off error in • the arithmetic. This has two advantages: – the accuracy is predictable and hence the performance of the digital signal processing algorithm is known apriori. – The round-off error can be minimized with appropriate design techniques and hence digital filters can meet very tight specifications on magnitude and phase characteristics (which would be almost impossible to achieve with analogue filters because of component tolerances and circuit noise). The widespread use of mini- and micro-computers in engineering has greatly • increased the number of digital signals recorded and processed. Power sup- ply and temperature variations have no effect on a programme stored in a computer. -
Digital Signal Processing Tom Davinson
First SPES School on Experimental Techniques with Radioactive Beams INFN LNS Catania – November 2011 Experimental Challenges Lecture 4: Digital Signal Processing Tom Davinson School of Physics & Astronomy N I VE R U S I E T H Y T O H F G E D R I N B U Objectives & Outline Practical introduction to DSP concepts and techniques Emphasis on nuclear physics applications I intend to keep it simple … … even if it’s not … … I don’t intend to teach you VHDL! • Sampling Theorem • Aliasing • Filtering? Shaping? What’s the difference? … and why do we do it? • Digital signal processing • Digital filters semi-gaussian, moving window deconvolution • Hardware • To DSP or not to DSP? • Summary • Further reading Sampling Sampling Periodic measurement of analogue input signal by ADC Sampling Theorem An analogue input signal limited to a bandwidth fBW can be reproduced from its samples with no loss of information if it is regularly sampled at a frequency fs 2fBW The sampling frequency fs= 2fBW is called the Nyquist frequency (rate) Note: in practice the sampling frequency is usually >5x the signal bandwidth Aliasing: the problem Continuous, sinusoidal signal frequency f sampled at frequency fs (fs < f) Aliasing misrepresents the frequency as a lower frequency f < 0.5fs Aliasing: the solution Use low-pass filter to restrict bandwidth of input signal to satisfy Nyquist criterion fs 2fBW Digital Signal Processing D…igi wtahl aSt ignneaxtl? Processing Digital signal processing is the software controlled processing of sequential data derived from a digitised analogue signal. Some of the advantages of digital signal processing are: • functionality possible to implement functions which are difficult, impractical or impossible to achieve using hardware, e.g. -
Lecture 5 - Digital Filters
Lecture 5 - Digital Filters 5.1 Digital filtering Digital filtering can be implemented either in hardware or software; in the first case, the numerical processor is either a special-purpose chip or it is assembled out of a set of digital integrated circuits which provide the essential building blocks of a digital filtering operation – storage, delay, addition/subtraction and multiplica- tion by constants. On the other hand, a general-purpose mini-or micro-computer can also be programmed as a digital filter, in which case the numerical processor is the computer’s CPU and memory. Filtering may be applied to signals which are then transformed back to the analogue domain using a digital to analogue convertor or worked with entirely in the digital domain (e.g. biomedical signals are digitised, filtered and analysed to detect some abnormal activity). 5.1.1 Reasons for using a digital rather than an analogue filter The numerical processor can easily be (re-)programmed to implement a number of different filters. The accuracy of a digital filter is dependent only on the round-off error in the arithmetic. This has two advantages: – the accuracy is predictable and hence the performance of the digital signal processing algorithm is known a priori. – The round-off error can be minimized with appropriate design tech- niques and hence digital filters can meet very tight specifications on magnitude and phase characteristics (which would be almost impossi- ble to achieve with analogue filters because of component tolerances and circuit noise). 59 The widespread use of mini- and micro-computers in engineering has greatly increased the number of digital signals recorded and processed. -
Oversampling with Noise Shaping • Place the Quantizer in a Feedback Loop Xn() Yn() Un() Hz() – Quantizer
Oversampling Converters David Johns and Ken Martin University of Toronto ([email protected]) ([email protected]) University of Toronto slide 1 of 57 © D.A. Johns, K. Martin, 1997 Motivation • Popular approach for medium-to-low speed A/D and D/A applications requiring high resolution Easier Analog • reduced matching tolerances • relaxed anti-aliasing specs • relaxed smoothing filters More Digital Signal Processing • Needs to perform strict anti-aliasing or smoothing filtering • Also removes shaped quantization noise and decimation (or interpolation) University of Toronto slide 2 of 57 © D.A. Johns, K. Martin, 1997 Quantization Noise en() xn() yn() xn() yn() en()= yn()– xn() Quantizer Model • Above model is exact — approx made when assumptions made about en() • Often assume en() is white, uniformily distributed number between ±∆ ⁄ 2 •∆ is difference between two quantization levels University of Toronto slide 3 of 57 © D.A. Johns, K. Martin, 1997 Quantization Noise T ∆ time • White noise assumption reasonable when: — fine quantization levels — signal crosses through many levels between samples — sampling rate not synchronized to signal frequency • Sample lands somewhere in quantization interval leading to random error of ±∆ ⁄ 2 University of Toronto slide 4 of 57 © D.A. Johns, K. Martin, 1997 Quantization Noise • Quantization noise power shown to be ∆2 ⁄ 12 and is independent of sampling frequency • If white, then spectral density of noise, Se()f , is constant. S f e() ∆ 1 Height k = ---------- ---- x f 12 s f f f s 0 s –---- ---- 2 2 University of Toronto slide 5 of 57 © D.A. Johns, K. Martin, 1997 Oversampling Advantage • Oversampling occurs when signal of interest is bandlimited to f0 but we sample higher than 2f0 • Define oversampling-rate OSR = fs ⁄ ()2f0 (1) • After quantizing input signal, pass it through a brickwall digital filter with passband up to f0 y ()n 1 un() Hf() y2()n N-bit quantizer Hf() 1 f f fs –f 0 f s –---- 0 0 ---- 2 2 University of Toronto slide 6 of 57 © D.A.