Databases Reference
In-Depth Information
Generally, a maximum is detected by checking the autocorrelation value against a threshold;
if the value is greater than the threshold, a maximum is declared to have occurred. When there
is uncertainty about the magnitude of the maximum value, it is difficult to select a value for
the threshold. Another problem occurs because of the interference due to other resonances in
the vocal tract. There are a number of algorithms that resolve these problems in different ways
(see [ 116 , 119 ] for details).
In this section, we will describe a closely related technique, employed in the LPC-10
algorithm, that uses the average magnitude difference function (AMDF). The AMDF is defined
as
k 0
+
N
1
N
AMDF
(
P
) =
1 |
y i
y i P |
(2)
i
=
k 0
+
{
y n }
{
y n }
If a sequence
sequence
will have values close to each other, and therefore the AMDF will have a minimum at P 0 .Ifwe
evaluate this function using the /e/ and /s/ sequences, we get the results shown in Figures 18.6
and 18.7 . Notice that not only do we have a minimum when P equals the pitch period, but
any spurious minimums we may obtain in the unvoiced segments are very shallow; that is, the
difference between the minimum and average values is quite small. Therefore, the AMDF can
serve a dual purpose: it can be used to identify the pitch period as well as the voicing condition.
The job of pitch extraction is simplified by the fact that the pitch period in humans tends
to fall in a limited range. Thus, we do not have to evaluate the AMDF for all possible values
of P . For example, the LPC-10 algorithm assumes that the pitch period is between 2.5 and
19.5 milliseconds. Assuming a sampling rate of 8000 samples a second, this means that P is
between 20 and 160.
is periodic with period P 0 , samples that are P 0 apart in the
2.2
2.0
1.8
1.6
1.4
AMDF ( P )
1.2
1.0
0.8
0.6
0.4
0.2
20
40
60
80
Pitch period ( P )
100
120
140
160
F I GU R E 18 . 6
AMDF function for the sound /e/ in test.
Search WWH ::




Custom Search