Escolar Documentos
Profissional Documentos
Cultura Documentos
=
=
otherwise , 0
, 2 , , 0 ], / [
] [
L L n L n x
n x
u
Figure below shows the up-sampling by a factor of 3:
Fig3.4 Example of Up-sampler with factor L=3
In practice, the zero-valued samples inserted by the up-sampler are replaced
with appropriate nonzero values using some type of filtering process and Process is
called interpolation and will be discussed later.
3.3.1 FREQUENCY-DOMAIN CHARACTERIZATION
Consider first a factor-of-2 up-sampler whose input-output relation in the
time-domain is given by
=
=
otherwise , 0
, 4 , 2 , 0 ], 2 / [
] [
n n x
n x
u
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 15
In terms of the z-transform, the input-output relation is then given by:
=
= =
even
] 2 / [ ] [ ) (
n
n
n
n
n
u u
z n x z n x z X
[]
In a similar manner, we can show that for a factor-of-L up-sampler
) ( ) (
L
u
z X z X =
On the unit circle, for
e j
e z = , the input-output relation is given by
) ( ) (
L j j
u
e X e X
e e
=
Figure below shows the relation between ) (
e j
e X and ) (
e j
u
e X for L = 2 in the case
of a typical sequence x[n]
Fig 3.5 Relation between ) (
e j
e X and ) (
e j
u
e X for L=2
3.4 DOWN-SAMPLING
Down-sampler is used to decrease the sampling rate by an integer factor. An
down-sampler with a down-sampling factor M, where M is a positive integer,
develops an output sequence y[n] with a sampling rate that is (1/M)th of that of the
input sequence x[n]. Down-sampler is linear but time-variant discrete time systems.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 16
Fig 3.6 Down-sampler
Downsampling operation is implemented by keeping every M-th sample of x[n] and
removing M-1 in-between samples to generate y[n].
The input-output relation is given by the following equation:
y[n] = x[nM]
Figure below shows the down-sampling by a factor of 3:
Fig 3.7 Example for down-sampling with factor M=3
3.4.1 FREQUENCY-DOMAIN CHARACTERIZATION
Applying the Z-transform to the input-output relation of a factor M down-
sampler Y[n] =x [Mn]
We get
Y (z) = []
The expression on the right-hand side cannot be directly expressed in terms of X (z).
To get around this problem, define a new sequence . Where
] [
int
n x
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 17
Now can formally related to x[n] by the equation
Where
Then applying Z-transform and reducing finally we get the following equation:
= ) (
int
z X ( )
1
0
1
M
k
k
M
W z X
M
Consider a factor-of-2 down-sampler with an input x[n] whose spectrum is as shown
below. The DTFTs of the output and the input sequences of this down-sampler are
then related as:
)} ( ) ( {
2
1
) (
2 / 2 / e e e j j j
e X e X e Y + =
Figure below shows the relation between ) (
e j
e X and ) (
2 / e j
e X for M = 2
Fig3.8 Relation between ) (
e j
e X and ) (
2 / e j
e X for M = 2
=
=
otherwise , 0
, 2 , , 0 ], [
] [
int
M M n n x
n x
] [ ] [ ] [
int
n x n c n x = ] [
int
n x
=
=
otherwise , 0
, 2 , , 0 , 1
] [
M M n
n c
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 18
3.5 SAMPLING RATE CONVERSION BY A FACTOR L/M
With an understanding of the down-sampling and up-sampling processes, we
now study the sampling rate conversion by a non-integer factor of L/M. This can be
viewed as two sampling conversion processes. In step 1, we perform the up-sampling
process by a factor of integer L following application of an interpolation filter H1 (z);
in step 2, we continue filtering the output from the interpolation filter via an anti-
aliasing filter H2 (z), and finally operate down-sampling. The entire process is
illustrated in the below figure.
Fig3.9 Sampling rate conversion by a factor L/M
Since the interpolation and anti-aliasing filters are in a cascaded form and
operate at the same rate, we can select one of them. We choose the one with the
lower stop frequency edge and choose the most demanding requirement for pass
band gain and stop band attenuation for the filter design. A lot of computational
saving can be achieved by using one low pass filter. Let us see one example of CD to
DAT form conversion. The sampling rate in CD is 44.1 kHz and in DAT is48 KHz.
Now the question is how to convert 44.1 KHz data to 48 KHz data? This
is as shown below:
48 / 44.1 = 160 / 147
Fig3.10 44.1 KHz to 48 KHz sampling rate conversion
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 19
3.6 ANALYSIS AND SYNTHESIS FILTERS
A basic operation in multirate signal processing is to decompose a signal into
a number of sub-band components, which can be processed at a lower rate
corresponding to the bandwidth of the frequency bands. Down-sampling mixes
frequency components in the original signal by aliasing and frequency folding.
Therefore, the signal should be filtered before decimation. The below figure shows
the decomposition of a signal into two sub-band components. The purpose of the
filters H1 and H2 is to extract the low- and high-frequency components of the signal
x before decimation. The set of filters shown in below figure is called an analysis
filters or analysis filter banks. If required, the signals may be decimated further into
narrower sub-band components.
A convenient way to implement the decimation is to use stages with the
decimation factor M= 2 as shown in figure. Then only one low-pass and one high-
pass filter is required. For M>2, band-pass filters with different Pass-bands are
required as well. The sub-band components obtained from analysis filter are then
allowed for processing.
Fig 3.11 Analysis Filter Bank
After processing of the separate sub-band components, they are combined to
reconstruct (a properly processed version of) the original signal at the original,
higher sampling rate. Up-sampling generates aliasing frequencies. Therefore, the
expanded signals should be filtered in order to extract the correct frequency
components. The set of filters used to reconstruct the desired signal is called
synthesis filter or synthesis filter banks.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 20
The below figure shows the block diagram of synthesis filters:
Fig 3.12 Synthesis Filter Bank
3.6.1 QUADRATURE MIRROR FILTER (QMF)
The basic building block in applications of Quadrature mirror filters (QMF)
is the two-channel QMF bank as shown in the below figure. This is a multirate
digital filter structure that employs two decimators in the signal analysis section
and two interpolators in the signal synthesis section. The low-pass and the high-
pass filters in analysis section have impulse responses H0 (z) and H1 (z),
respectively. Similarly, the low-pass and high-pass filters contained in the synthesis
section have impulse response F0 (z) and F1 (z), respectively
Fig 3.13 Two channel QMF structure
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 21
The analysis and the synthesis filters in the above figure are typically
complementary low-pass and high-pass filters that mirror each other about the digital
frequency, /2, as shown in below figure. Such filters are often called quadrature
mirror filters (QMF), since /2 correspond to one fourth the sampling frequency.
Fig 3.14 Magnitude response of Analysis and Synthesis filter
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 22
CHAPTER 4
SYSTEM IMPLEMENTATION
4.1 DESIGN OVERVIEW
In this project, we design a Quadrature Mirror Filter (QMF) Bank with
application to sub-band image coding. Then we extend our result to four-band filter
bank. The present invention relates to signal decomposition and reconstruction in sub
band coding and more particularly to analysis and synthesis filter banks that are
designed according to the quadrature mirror filter concept such that the sub band
coding of various types of signal may be accomplished with minimal computational
complexity so as to result in perfect signal reconstruction.
For the non-trivial PR FIR QMF design, we abandon H1 (z) =H0 (-z)
condition. Instead, we design H0 (z) so that it has a power symmetry property. After
designing 2 channel PR FIR QMF bank, we explore the compression strategy. For
transforming a signal to a digital form, we have to quantize the signal representing it
as n-bits. The problem is that how many bits we should allocate to each output of
analysis filter bank. At each output of the analysis filter bank, we need to allocate
different number of bits because each output of the analysis filter bank has a
different signal property (e.g. dynamic range). However, simultaneously, we need to
consider reconstruction quality since as we use fewer bits; we lose more information
of original signal. The key of the compression is to minimize the total number of bits
for representing all the outputs of the analysis filter bank keeping reconstruction
quality requirement. In this project, we use a greedy approach to handle the
compression problem.
In the second part of the project, we will explore the effectiveness of subband
coding for lossy image compression. We will use four compression systems:
1)2-channel PR FIR QMF bank
2) 2-channel Uniform FIR QMF bank,
3) 3-channel PR FIR QMF bank
4) 2D PR FIR QMF bank.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 23
At each compression system, we will use the greedy approach to solve the bit
allocation problem as in the first part of the project. Also, we will investigate the
effect of the optimized quantization method against the uniform quantization
method. For the bit allocation problem, first, we need to define the criterion of good
reconstruction quality somehow so that we stop the routine of allocating bits to each
output of the analysis bank. We will use two ways of evaluating the reconstruction
quality: quantitative and subjective. For the quantitative evaluation, we use the SNR
while for the while for the subjective evaluation; we use a 7-level impairment scale.
4.1.1 PERFECT RECONSTRUCTION FIR QMF BANK DESIGN
In the design of a two-channel perfect reconstruction FIR QMF filter bank,
we try to compress the output signal of the analysis bank by quantization. We will
quantize it with two methods: Uniform quantizer and Optimized quantizer by the
Lloyd-max method and discuss the difference. Also, for the problem of allocating
number of bits to each output of the analysis bank, we will present a greedy
approach.
Fig 4.1 Two channel QMF bank
4.2 SOFTWARE IMPLEMENTATION
A variety of techniques have been developed to efficiently represent speech
signals in digital form for either transmission or storage. Since most of the speech
energy is contained in the lower frequencies, we would like to encode the lower-
frequency band in more bits than the high-frequency band. Sub-band coding is a
method where the speech signal is subdivided into several frequency bands and each
band is digitally encoded separately An example of a frequency subdivision is let us
assume that the speech signal is sampled at a rate Fs samples per second. The first
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 24
frequency subdivision splits the signal spectrum into two equal width segments, a
low pass signal (0< F < Fs/4) and a high pass signal (Fs/4 < F < Fs/2). The second
frequency subdivision splits the low pass signal from the first stage into two equal
bands, a low pass signal (0 < F< Fs/8) and a high pass signal (Fs/8 < F < Fs/4).
Finally, the third frequency subdivision splits the low pass signal from the second
stage into two equal bandwidth signals. Thus, the signal is subdivided into 4
frequency bands, covering 3 octaves,
Decimation by a factor of 2 is performed after frequency subdivision. By
allocating a different number bit per samples to the signals in the 4 sub-band, we can
achieve a reduction in the bit rate of the digitalized speech signal.
4.2.1 BASIC SUBBAND CODER.
Fig 4.1 Subband coder
In sub band coding, the speech is first split into frequency bands using a bank
of band-pass filters. The individual band pass signals are then decimated and
encoded for transmission. A filter bank is a collection of band-pass filters, all
processing the same input signal. The important parameters in sub band coders are
the number of frequency bands and the frequency coverage of the system, and the
ways subband coders are coded. There are two kinds of sub band structures: Uniform
band structures, where all the bands have equal widths, and octave band structures,
where the bandwidths are half as great as the higher adjacent band and twice as great
as the lower adjacent band.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 25
4.2.2 PROCESS SPEECH CODING AND DECODING SYSTEM
The task of the speech coder is to digitize the speech signal and represent it
with a digital bit stream and to produce the highest possible speech quality at the
lowest possible bit-rate. The speech coder generally consists of three components:
speech analysis, parameter quantization and parameter coding. After analysis, the
samples must be quantized to reduce the number of bits required. The output of the
quantizer is provided to the coder which assigns a unique binary code to each
possible quantized representation. These binary codes are packed together for
efficient transmission .Quantizers is generally divided in two: Uniform or non
uniform quantizers, and adaptive quantizers. A non uniform quantizer or an adaptive
quantizer followed by an encoder that assigns a code to each quantization level is
called companding pulse code modulation (companding PCM) or adaptive PCM.
4.2.3 SYNTHESIS AND RECOMBINATION
The synthesis system performs the inverse of the analysis operation.
Between every two samples in each band we put in the value zero to increase the
sample rate. Then we merge the two lowest bands, for example: 0-1000 Hz and
1000-2000 Hz, into the reconstructed 0-2000 Hz band. The same operation is done to
the other two bands, 2000-3000 Hz and 3000-4000 Hz, are merged into one band
of 2000-4000 Hz. Again, we increase the sample rate in these two bands and merge
them.
4.2.4 ANALYSIS AND SYNTHESIS
First, we carried out Subband coder by creating analysis and synthesis
sections. This actions does not necessary add distortions in the voice, and the output
is equal to the source, except for some loss of higher frequencies. We recorded our
voice using sound recorder at 8KHz.It means the highest freq component is 4KHz
which correspond to 1 in Matlab.It is computationally very intensive to take FFT of
entire signal, therefore a better choice is to take some finite samples say 36000 for
the purpose of computing FFT.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 26
We implemented the code by two methods
a).Without noble identities: In this method we passed the input signal (speech)
through a low pass and high pass filters in the first stage. After that we decimated the
two signals (Lower band and upper band).This has the disadvantage of computing
the samples which we are finally going to throw away. However the end result was
good without getting aliasing in the final signal.
b).Using noble identities: In this method we decimated the signals first and then
passed them through a low pass and high pass filters in the first stage. We continued
with this approach till we get the four bands in the analysis section. However the end
result was aliasing in the final signal.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 27
CHAPTER 5
CONCLUSION
Sub-band coding is any form of transform coding that breaks a signal into a
number of different frequency bands and encodes each one independently. It is an
important extension of Filter-bank theory and widely used in data compression.
Speech coding is an integral part of our backbone communications services.
As wire line VoIP becomes more important and voice over Wi-Fi is introduced, the
end-to-end networks that support conversational voice will become much less
homogeneous with respect to protocols, latency, physical layer characteristics, and
voice codecs. Furthermore, it will be more difficult to develop and standardize
optimal end-to-end designs that incorporate these disparate multi hop connections.
As a result, continued work that addresses asynchronous tandem connections of
speech coders, latency, packet jitter, and packet loss concealment will be essential if
we are to maintain the high quality of voice services that we have come to expect.
Cross layer designs involving the Application, Media Access, and Physical
layers will be necessary to obtain the requisite quality and reliability and to improve
the efficiency of the wireless links. This will require that protocol developers, speech
codec designers, and physical layer engineers collaborate in establishing future voice
communications solutions. It is expected that mobile ad hoc networks and mesh
networks will be used for voice communications as well. These networks will
motivate the development of increased speech codec functionalities, such as bit rate
scalability, bandwidth scalability, and diversity-oriented methods along the lines of
multiple descriptions coding. Finally, we note that voice is the preferred method of
human communication. Although there have been times when it seemed that the
voice communications problem was solved, such as when the PSTN was our primary
network or later when digital cellular networks reached maturity, such is not the case
today. Reflecting upon the issues and developments highlighted in this paper, it is
evident that there is a diverse set of challenges and opportunities for research and
innovation in speech coding and voice communications.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 28
REFERENCES
[1].PRINCEN, J. P. and BRADLEY, A. B.: Analysis / synthesis filter bank
design based on time domain aliasing cancellation, IEEE Trans. Acoust.,
Speech, Signal Processing, 1986, ASSP-34 (5), pp. 11531161.
[2].Subband coding of images using vector quantization, Peter H. Westerink,
Dick E. Boekee, Jan Biemond, IEEE transactions on communications, vol -36.
[3].J. D. Johnston, A filter family designed for use in quadrature mirror filter
banks In Proc. Int. Conf. Accoust. Speech,Signal Processing,,pp.291-294,Apr,
1980.
[4].R. E. Crochiere and L. R. Rabiner, Multirate digital signal processing,
Englewood Cliffs, NJ: Prentice Hall, 1983
[5].A. K. Jain, Fundamentals of Digital Image Processing, Prentice Hall, 1989.
[6].Gersho, .Speech Coding,. Digital Speech Processing, A.N. Ince, ed., Kluwer
Academic Publishers, Boston, 1992, pp. 73-100.
[7].Schafer R. W. and Rabiner L. R., "A Digital Signal Processing Approach to
Interpolation," Proc. IEEE, Vol. 61, pp. 692-702, June 2003.
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 29
APPENDIX
FILTER BANK DESIGN
The interest in digital filter banks has grown dramatically over the last few
years. Owing to the trend toward lower cost, higher speed microprocessors, digital
solutions are becoming attractive for a wide variety of applications. Filter banks
allow signals to be decomposed into subbands, often facilitating more efficient and
effective processing. They are particularly visible in the areas of image compression,
speech coding, and image analysis. The desired characteristics of sub band
decomposition will naturally vary from application to application. Moreover, within
any given application, there are amyriad of issues to consider. First, one might
consider whether to use FIR or IIR filters. IIR designs can offer computational
advantages, while FIR designs can offer greater flexibility in filter characteristics. In
this chapter we focus exclusively on FIR design. Second, one might identify the
time-frequency or space-frequency representation that is most appropriate. Uniform
decompositions and octave-band decompositions are particularly popular at present.
At the next level, characteristics of the analysis filters should be defined. This
involves imposing specifications on the analysis filter pass band deviations,
transition bands, and stop band deviations. Alternately or in addition, time domain
characteristics may be imposed, such as limits on the step response ripples, and
degree of regularity. One can consider similar constraints for the synthesis filters.
For coding applications, the characteristics of the synthesis filters often have a
dominant effect on the subjective quality of the output.
Finally, one should consider analysis-synthesis characteristics. That is, one
has flexibility to specify the overall behavior of the system. In most cases, one views
having exact reconstruction as being ideal. Occasionally, however, it may be
possible to trade some small loss in reconstruction quality for significant gains in
computation, speed, or cost. In addition to specifying the quality of reconstruction, it
SUBBAND CODING USING FILTER BANKS OCTOBER 2011
DEPT OF ECE, SBC, PATTOOR 30
is generally possible to control the overall delay of the system from end to end. In
some applications, such as two-way speech and video coding, latency represents a
source of quality degradation. Thus, having explicit control over the analysis-
synthesis delay can lead to improvement in quality. The intelligent design of
applications-specific filter banks involves first identifying the relevant parameters
and optimizing the system with respect to them. As is typical, the filter bank analysis
and reconstruction equations lead to complex tradeoffs among complexity, system
delay, filter quality, filter length, and quality of performance. This chapter is devoted
to presenting an introduction to filter bank design. Filter bank design has reached a
state of maturity in many regards. To cover all of the important contributions in any
level of detail would be impossible in a single chapter. However, it is possible to
gain some insight and appreciation for general design strategies germane to this
topic. In addition to discussing design methodologies for linear analysis-synthesis
systems, we also consider the design of a couple of new nonlinear classes of filter
banks that are currently receiving attention in the literature.