Applied Speech and Audio Processing: With matlab examples


Download 2.66 Mb.
Pdf ko'rish
bet67/170
Sana18.10.2023
Hajmi2.66 Mb.
#1708320
1   ...   63   64   65   66   67   68   69   70   ...   170
Bog'liq
Applied Speech and Audio Processing With MATLAB Examples ( PDFDrive )

4.5. Auditory scene analysis
79
Figure 4.7
Illustration of the feature of closure using steadily rising tonal frequencies. In the first
sequence (a), these are interrupted by gaps, whereas in the second sequence (b), the rising tones
are interrupted by white noise.
In audio terms, this process of filling in expected information happens commonly
during speech communications, especially when carried out in the presence of interfering
noise. At a higher language level, this would be one of the reasons why context is so
important to speech intelligibility (discussed in Section 3.3.4).
In Matlab, we can demonstrate this effect by again using the freqgen function of
Section 2.7.3 to create a sound comprising of rising tones, and then to insert either gaps
or noise portions into the sound. The pattern created is shown in Figure 4.7, using the
following Matlab code:
gs=0.30;
%gap/noise length in seconds
ls=1.50;
%length of sound in seconds
Fs=8000;
%sample rate
fr=110;
to=880;
gap_len=Fs*gs;
au_len=Fs*ls;
gap=zeros(1,gap_len);
noise=rand(1,gap_len);
%Make a steadily rising note
note_f=[fr:(to-fr)/(au_len-1):to];
au=freqgen(note_f,Fs);
au_gap=au;
au_noise=au;


80
Hearing
%Now put the gaps 1/2 way up
au_gap(au_len/2+1:au_len/2+gap_len)=gap;
au_noise(au_len/2+1:au_len/2+gap_len)=noise;
%Now repeat several times
au_gap=repmat(au_gap,1,3);
au_noise=repmat(au_noise,1,3);
Replaying the noisy version first, listeners will hear a steady rising sinewave, moving
from 110 Hz to 880 Hz. During the rising period, there will be three periods of loud white
noise. The interpretation by most listeners is that the sinewave is continuous, but parts of
it cannot be heard because of the noise. Try and decide whether you think the sinewave
is continuous:
soundsc(au_noise, Fs);
By contrast, when replacing the noise periods by a gap of silence, the discontinuity in
the sinewave is immediately obvious:
soundsc(au_gap, Fs);
By and large, humans are fairly sensitive to discontinuities – whether audio, visual
(edges) or even tactile and thus the fact that two discontinuities can be hidden by white
noise of the same average amplitude is significant. As a final check, we can compare
how audible the sinewave would really be if it were replayed simultaneously with the
noise instead of being replaced by the noise:
soundsc(repmat(au,1,3)+au_noise, Fs)
The answer is that the sinewave is clearly audible even in the presence of that noise.
The HAS interpreted the first playback as being a continuous sinewave, even when the
sinewave was not audible, but would have been were it actually present. This is clearly an
illustration of the brain filling in gaps in its interpretation of the events which it witnesses.
Interestingly, GSM and several other speech coders introduce a sound known as com-
fort noise, a pseudo-random white noise sound, at times when silence would otherwise
be present. This is done to improve the perception of listeners, based on observations
which showed that listeners were discomforted by periods of total silence during a voice
communications session. Perhaps, in line with our experiment to test the effects of clo-
sure using periods of noise, another advantage of comfort noise is the ability to ‘blind’
the HAS to otherwise disturbing and obvious waveform discontinuities in a speech coder
output.



Download 2.66 Mb.

Do'stlaringiz bilan baham:
1   ...   63   64   65   66   67   68   69   70   ...   170




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling