1
Speech and Audio Processing and Recognition
Dr Wenwu Wang
Centre for Vision Speech and Signal Processing
Department of Electronic Engineering
Email: [email protected]
Office: 04BB01
speech and audio processing (part 3)
Frequency response of H(z)
1 iez
2
The frequency response of the vocal tract filter can be best obtained by performing the DFT of the impulse response.
It can also be directly calculated from the pole-zero plot, due to the relation between DFT and Z-transform.
Essentially, the frequency response of the vocal tract can be obtained by sampling its Z-transform along the unit circle:
The magnitude response can be obtained as:
Exercise: derive the expression for the phase response of H(z).pii
qii
i
ee
eebeH
1
10)(
How to separate spectral envelop and spectral details from spectrum?
Mag
nitu
de in
dB
Spectrum
Spectral envelope
(containing information about formant structure)
Spectral details
4
Two techniques can be used
Linear Prediction
Cepstrum Analysis
5
Recall “resonance” effect in speech production
Source: (Ellis 2013)
Vocal tract acts as a variable resonator In simple term, resonance = “formants”
6
Resonance
Source: (Ellis 2013)
7
Simulate resonance with a single pair-poles filter
8
Source filter model
Source: (Ellis 2013)
Source: excitation signal defining the fine structure of the speech.
Filter: subsequent shaping by physical resonances
9
The “resonance” in spectrum
Source: (Ellis 2013)
10
Linear prediction
q
jj
p
kk jnubknsans
01
][][][
In the time-domain, filtering of the excitation signal through the vocal tract filter described in previous slides can be written equivalently as:
The above equation is known as autoregressive moving average (ARMA) process. That is, a sampled value at the output of a linear filter is a weighted average of its past output samples, past input samples and the current input sample. In general, both poles and zeros exist, and it is also referred to as a pole-zero filtering process which can be further split into AR process and MA process written respectively as:
][][][ 01
nubknsansp
kk
q
jj jnubns
0
][][
AR (all-pole filter)
MA (all-zero filter)
Linear prediction (cont.)
p
k
kk za
GzH
1
1][
11
Linear prediction analysis or linear predicative coding (LPC) is a powerful method used in speech processing and coding for modelling the short-term correlations between speech samples.
It is a mathematical operation where future values of a discrete-time signal are estimated as a weighted summation of previous samples, i.e. an AR process (all-pole filter), where G is a gain factor:
This effectively exploits the redundancy between consecutive samples and encodes and transmits only the non-redundant information in the signal.
Although nasals and fricatives can cause anti-resonances in the transfer function, suggesting the usage of a pole-zero filter, a reasonable approximation to the vocal tract filter can be obtained by the above all-pole filter with a sufficiently high order p.
Linear prediction (cont.)
p
kk knsans
1
][][̂
12
Linear prediction provides efficient methods for calculating the coefficients of an all-pole filter from real speech which leads to a compact representation of the formant structure. In speech coding, the LPC coefficients are quantised and encoded and then transmitted to a speech decoder, which reconstructs an approximation to the original speech.
The output of a linear predictor with coefficients is defined as:
The prediction error between the actual signal and its predicted value is given by:
The coefficients are calculated by minimising the short-term mean-squared prediction error:
ka
p
kk knsansnsnsne
1
][][][̂][][
2
1
2 ][][]}[{p
kk knsansEneE
LPC coefficients estimation
)(
)2(
)1(
)0()2()1(
)2()0()1(
)1()1()0(
2
1
pR
R
R
a
a
a
RpRpR
pRRR
pRRR
n
n
n
pnnn
nnn
nnn
13
Autocorrelation method:
where is the short-time autocorrelation function:
.,...,0;][][)(1
0
pjjmsmsjRjN
mnnn
)( jRn
The LPC coefficients can be solved using the set of linear equations known as the Yule-Walker equations:
The above matrix is a Toeplitz matrix, and therefore the equation is usually solved by a recursive algorithm known as Durbin’s algorithm.
LPC coefficients estimation
)0,(
)0,2(
)0,1(
),()2,()1,(
),2()2,2()1,2(
),1()2,1()1,1(
2
1
pa
a
a
pppp
p
p
n
n
n
pnnn
nnn
nnn
14
Covariance method:
where measures the similarity over a fixed number of samples between two sequences which are slightly delayed with respect to one-another:
.1,1;][][),(1
0
pjpijmsimsjiN
mnnn
),( jin
The LPC coefficients can be solved using the following set of linear equations:
The above matrix is not a Toeplitz matrix, and therefore the equation is usually solved by matrix inversion.
Inverse filtering
)()()( zUzHzS
15
Once the estimates of the linear prediction coefficients have been obtained, the excitation signal can be obtained from the speech signal using inverse filtering
)()()()()( 1 zSzAzSzHzU
)(zAwhere is an inverse filter of the vocal tract transfer function )(zH
Inverse filtering results in a residual with a flatter spectrum than the original speech. However, the residual still contains useful information about the speech signal, e.g. whether it is voiced/unvoiced, and the periodicity of the speech. For voiced sounds, it has a pulse-like nature, so it is common to apply periodicity estimation to the residual rather than the original speech.
Inverse filtering (cont.)
16
The LPC residual of a voiced segment obtained by inverse filtering
Order selection of the LPC model
17
Roughly speaking, the number of peaks in the magnitude response is equal to the number of poles. As p increases, the error between the AR fit and the speech signal
decreases, and the estimated coefficients result in a closer fit to the actual spectral shape, and vice versa.
In practice, LPC modelling is usually used to model the formant structure, so the spectral detail obtained from the higher order is unnecessary, and LPC orders of around 20-30 are sufficient to model the first few formants in speech.
Generally, LPC spectrum provides a better match to the spectral peaks than the spectral valleys, due to the usage of an all-pole filter to model the spectrum, without any zeros to model the spectral valleys.
Order selection of the LPC model
18
19
Estimate formant frequency
Estimate from the LPC spectrum
Estimate from the Z-transform of the vocal tract transfer function
20
LPC analysis
Source: (Ellis 2013)
20ms
Prediction gain
Qpd
e
e
s
d
s SNRGndE
nsESNR
2
2
2
2
2
2
2
2
]}[{
]}[{
21
The prediction error has a smaller variance compared with the original signal. Therefore if we quantise and encode the prediction error instead of the original signal, the error in the quantisation/encoding scheme can be reduced, for a given bit rate. Let d[n] be the quantisation error, the signal-to-quantising noise ratio of the system is:
2
2
e
spG
2
2
d
eQSNR
Prediction gain SNR of the quantiser
Speech synthesis from the LPC model
22
After obtaining the LPC coefficients, it is a simple matter to re-synthesize the original speech Generating periodic impulses or white noise. Convolving the LPC coefficients with the generated excitation signals.
Source: (Ellis 2013)
+
Cepstral analysis
23
LPC modelling has been widely used in speech processing due to its simplicity and computational efficiency.
The LPC spectral envelope provides a poor fit to the spectral valleys
An assumption is made that the excitation is Gaussian noise or a single impulse, while multiple glottal pulses could exist within the window used for estimating the prediction coefficients, especially for female or high pitched speech.
A more accurate but less efficient approach to separate the excitation signal from the vocal tract transfer function is cepstral deconvolution. Essentially, this is a process whereby fine spectral detail can be separated from the smooth spectral shape (formant structure).
Definition of cepstrum
mikSDFTcc 2])[log(][ 1
24
Complex cesptrum The complex cepstrum is defined as the inverse Fourier transform of
the logarithm of the phase unwrapped spectrum.
Real cesptrum The real cepstrum is simply obtained by discarding the phase
information
)][log(][ 1 kSDFTcr
Both complex and real cepstrum are real valued, as s[n] is real, and S[k] is complex conjugate symmetric.
The main drawback with the real cepstrum is that the phase information is discarded and it is not possible to reconstruct the original spectrum, while it is possible to do this from the complex cepstrum by using an inverse DFT.
Phase unwrapping
25
][][][ kkk hus
is the phase of the speech spectrum in the k-th frequency bin, and is measured by taking the angle of S[k], which has a range of .],(
Any substitution produces the same complex value of S[k].
mikkss
2][][
To produce a smooth phase spectrum from bin to bin, the phase needs to be unwrapped, i.e. adding integer multiples of to the initial phase estimates. 2
][][][ nhnuns
][][][ kHkUkS
Convolution Theorem
][
][
][
][][
][][
][][
ki
ki
ki
u
h
s
ekUkU
ekHkH
ekSkS
DFT
Phase unwrapping
26
Phase unwrapping
Cepstrum is a special case of homomorphic filtering
27
Homomorphic system:
A homomorphic system can be split into a cascade of three homomorphic systems:
Source: (Rabiner & Schafer, 1978)
Cepstrum is a special case of homomorphic filtering (cont.)
28
Source: (Rabiner & Schafer, 1978)
Cepstrum Liftering
29
Procedure for computing cepstrum
Figure source: http://cnx.org/content/m12469/latest/
Cepstrum
30
Cepstrum: various steps
Source: (Taylor, 2009) = DFT
Cepstrum: example
31Real cesptrum of a short vowel segment
32
Cepstrum: more examples
Real cesptrum of other short vowel segments (only half quefrencies are shown). Horizontal axis is in ms, and vertical axis shows the magnitudes.
Figure source: http://cnx.org/content/m12469/latest/
Cepstrum
33
Even through the cepstrum involves a transform from time to frequency domains, and then an inverse transformation, it is not accurate to say that it is back to the time domain, due to the nonlinear logarithmic function that is used in the operation.
The axis of the cepstrum is therefore given the name quefrency, in the similar spirit as creating “cepstrum” versus “spectrum”.
Any regular periodicity in the spectrum would produce a peak in the cepstrum, in the same way that periodicity in the time domain produces a peak in the frequency domain.
Harmonics are equally spaced apart in frequency, so they would produce a peak along the quefrency axis at a position (and an integer multiple of this position) which would be proportional to the pitch period.
The low end of the quefrency axis corresponds to the smooth spectral shape or formant structure, and the middle and high ends correspond to harmonics and spectral detail. In other words, the contributions of the excitation signal and the vocal tract transfer function occupy different regions of the quefrency axis.
34
Terminology
Figure source: http://cnx.org/content/m12469/latest/
Terms for Spectrum Derived Terms for Cepstrum
Spectrum Cepstrum
Frequency Quefrency
Harmonics Rahmonics
Magnitude Gamnitude
Phase Saphe
Filter Lifter
Low-pass filter Short-pass lifter
High-pass filter Long-pass lifter
The terminology was invented by Bogert et al. (1960)
Spectrum v.s. Cepstrum
35
Waveform of a vowel segment (512 samples) Spectrum of the vowel
Cepstrum of the vowel segment The first 20 cepstral coefficientsExamples from: http://mi.eng.cam.ac.uk/~ajr/SA95/node33.html
36
Liftering
Liftering in cepstrum is similar to “filtering” in the spectrum. All cepstrum coefficients are set to zero, except the low end
coefficients (such as the first 20 coefficients together with their reflected counterparts at negative frequencies). This process is called low-pass liftering.
The spectral envelope which contains the formant structural information can be estimated by liftering.
The spectral envelope obtained from cepstrum is a good fit in both peaks and valleys, in contrast to LPC, where a better fit was obtained to the peaks than to the valleys.
37
Liftering: demonstration
Plot of ]}[{ cDFT40,...1],[ c
Source: Rabiner & Schafer, 2007
Liftering
38
Spectrum of a vowel segment and its spectral envelop obtained by liftering the first 20 cepstrum coefficients
Liftering
39
Liftered log-magnitude spectrum obtained by using only the first K cepstrum coefficients. It can be seen that with more coefficients, more spectral details can be obtained (similar effect to the use of different orders in LPC modelling to get different spectral details). Source: (Taylor 2009).
40
An application example of cepstrum: pitch frequency estimation
Win
dow
(fr
am
e) n
um
ber
Source: Rabiner & Schafer, 2007
Frames 1-5 correspond to unvoiced speech
Frames 8-15 correspond to voiced speech
Frames 6-7 contain a mixture of voiced and unvoiced excitation
41
An application example of cepstrum liftering: echo/reverberation removal
42
An application example of cepstrum liftering: echo/reverberation removal
Source: Bruel & Kjaer, 1981
Mel-frequency cepstral coefficients (MFCCs)
43
MFCC is similar to the computation of the real cepstrum, the difference is that instead of using the DFT, where frequency bins are linearly-spaced apart, the signal is passed through a filter bank in which frequency bands are non-linearly spaced apart, but equi-distant on the mel-scale.
The mel-scale is roughly linear below 500Hz, and roughly logarithmic above this, and is based on the perceptual model of pitch sensitivity.
The MFCCs features are frequently used in speech recognition, and an advantage of MFCCs is that the amplitude spectrum can be summarised by a relatively small number (commonly around 13) of perceptually-relevant features.
44
Filter bank for computing MFCCs
Speech signal is analysed using STFT.
The DFT values at various frequency bands are grouped together in each critical band.
They are then weighted according to the weighting function defined by the triangular shape as shown in the next slide.
45
Filter bank for computing MFCCs
46
Filter bank for computing MFCCs (cont.)
FFT FFT FFT … … FFT
Spectrum… …
Mel-filters & Cepstrum Analysis
… …
… …
47
Comparison of smoothing techniques based on LPC, Cepstrum and Mel cepstrum
Source: Rabiner & Schafer, 2007
48
We have discussed …
• Source filter model + resonance
• LPC model
• LPC analysis & synthesis
• Cepstrum analysis
• Liftering
• MFCCs
Top Related