Файл: Речевых сигналов.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 03.12.2023

Просмотров: 234

Скачиваний: 7

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
1.2.2. Дискретизация
В последнее время в технике идет переход на цифровые методы об- работки информации. Это связано с тем, что цифровую информацию легче хранить (появились дешевые и удобные устройства для хранения инфор- мации, такие как жесткие диски компьютеров или лазерные диски), а так- же с тем, что цифровую информацию легко передавать по современным линиям связи практически без потерь.
Аналоговый сигнал – это число S , зависящее от времени
t
. При запи- си информации на носитель или воспроизведении с него сигнал неизбежно искажается различного рода шумами. Восстановить искаженный сигнал
(убрать шумы) нельзя. Можно, конечно, пытаться подавлять шумы, ис- пользуя некоторую дополнительную информацию (например, можно по- давлять частоты, в которых сосредоточены шумы), но при этом теряется и информация о самом сигнале, т.е. опять же вносятся искажения.
При оцифровке сигнала
( )
S t
производятся две операции –
дискретизация и квантование.

12
Дискретизация
– это замена сигнала
( )
S t
с непрерывным временем
t
на дискретизованный сигнал, т.е. это последовательность чисел
( )
S ti
для дискретного набора моментов времени
1 2
, , ,
i
t t
t

(чаще всего интер- валы между моментами времени
1
i
i
t t
t

Δ = −
берутся одинаковыми). При дискретизации время становится цифровым, моменты времени
ti
можно нумеровать, кодировать. Производится замена непрерывного времени
t
на последовательность дискретных значений
1 2
, , , ,
i
t t
t

а непрерывной (по времени и по уровню) функции сигнала
( )
S t
(рис. 1.2,
а
) некоторым мно- жеством непрерывных (по уровню) функций
( )
S ti
(рис. 1.2,
б
).
Рис. 1.2. Дискретизация по времени: а – аналоговый сигнал
( )
S t
; б – результирующий сигнал
( )
i
S t
При дискретизации часть информации о сигнале теряется. Но если сигнал
( )
S t
за время
t
Δ не сильно изменяется, числа
( )
S ti
и
( )
1
S ti
− близки друг к другу, то поведение
( )
S t
между моментами времени
ti
и
1
ti
− нетрудно восстановить (сигнал практически линейно изменяется во времени от
( )
1
S ti
− до
( )
S ti
). При дискретизации теряются составляющие сигнала с частотами порядка
1
f
t
d
> Δ и выше.
Дискретизация связана с некоторой погрешностью
ε
, которая зави- сит от шага дискретизации
1
t t
t
i
i
Δ = − − . При малых значениях шага дис- кретизации число точек замера велико, зато теряется мало информации.
Обратная картина наблюдается при больших значениях шага дискретиза- ции. Погрешность дискретизации
ε
в каждый момент времени
t
опреде- ляется по формуле
S
S
( )
3
S t
( )
3
S t
( )
2
S t
( )
4
S t
( )
2
S t
( )
4
S t
( )
1
S t
( )
1
S t
( )
S t
1
t
2
t
3
t
4
t
t
1
t
2
t
3
t
4
t
t
а) б)


13
( ) ( )
( )
t
S t
V t
ε
=

,
(1.2) где
( )
V t
– функция восстановления, которая по дискретным значениям восстанавливает
( )
S t
Виды дискретизации различаются по регулярности отсчетов:
− равномерная дискретизация, когда
t
Δ постоянно;
− неравномерная дискретизация, когда
t
Δ переменно, причем этот вид в свою очередь делится:
– на адаптивную, когда
t
Δ меняется автоматически в зависимости от текущего изменения сигнала. Это позволяет увеличивать шаг дис- кретизации, когда изменения сигнала
( )
S t
незначительны, и умень- шать – в противном случае;
– программируемую, когда
t
Δ изменяется оператором или в соответ- ствии с заранее выставленными условиями, например в фиксирован- ные моменты времени.
Частота Найквиста.
Гармонический сигнал может быть адекватно представлен дискретными отсчетами, если его частота не превышает поло- вины частоты дискретизации. Эта частота называется частотой Найквиста
(Nyquist frequency
( )
2 1 2
N
d
T
f
f
=
=
,
2
N
d
T
π
ω
ω
=
=
) [40, 43]. В зависи- мости от соотношения между частотой дискретизируемого гармоническо- го сигнала и частотой Найквиста возможны три случая.
1. Если частота гармонического сигнала
меньше
частоты Найквиста, то дискретные отсчеты позволяют правильно восстановить аналоговый сигнал (рис. 1.3,
а
).
2. Если частота гармонического сигнала
равна
частоте Найквиста, то дискретные отсчеты позволяют восстановить аналоговый сигнал с той же частотой, но амплитуда и фаза восстановленного сигнала (он показан пунктирной линией) могут быть искажены (рис. 1.3,
б
).
3. Если частота гармонического сигнала
больше
частоты Найквиста, восстановленный по дискретным отсчетам аналоговый сигнал (он показан пунктирной линией) будет также гармоническим, но с иной частотой
(рис. 1.3,
в
). Данный эффект носит название
появление ложных частот
(aliasing).

14
Рис. 1.3. Дискретизация гармонических сигналов с разной частотой
Теорема Котельникова.
Любой сигнал
( )
S t
, спектр которого не со- держит составляющих с частотами выше некоторого значения
2
B
B
f
π
ω
=
, может быть без потерь информации представлен своими дискретными от- счетами {
( )
S kT
}, взятыми с интервалом
Т
, удовлетворяющим следующе- му неравенству:
1 2
B
B
T
f
π
ω

=
. (1.3)
Данная теорема называется теоремой Котельникова (в зарубежных источниках – теоремой Найквиста, или теоремой дискретизации (sampling theorem)) [43, 45].
Восстановление исходного непрерывного сигнала
( )
S t
по набору его дискретных отсчетов {
( )
S kT
} производится по следующей формуле:
( )
( )
( )
S t
S kT
t
k
k
ϕ

=

= −∞
. (1.4)
Данная формула представляет собой разложение сигнала
( )
S t
в ряд по системе функций
( )
{
}
t
k
ϕ
, называемой базисом Котельникова:
( )
sin
t
kT
T
t
k
t
kT
T
π
ϕ
π







=

. (1.5) а) б) в)


15
Формирование непрерывного сигнала по его дискретным отсчетам поясняет рис. 1.4. Пунктирными показаны графики отдельных слагаемых формулы (1.3), сплошной линией – восстановленный сигнал. Ниже приве- ден код MATLAB, использованный при построении рисунка [7].
>> t=-2:0.01:6; % время для восстановленного сигнала
>> td=-2:6; % номера отсчетов
>> s=[0 0 4 3 2 1 0 0 0]; % дискретный сигнал
>> d=[td' s']; % данные для функции pulstran
>> y=pulstran(t, d, 'sinc'); % восстановленный сигнал
>> plot(td, s, 'O', t, y); % график восстановленного сигнала
>> hold on % вывод графиков отдельных sin-импульсов
>> for k=1:length(s), plot(t, s(k)*sinc(t-td(k)), ':'), end; hold off
В данном коде использована функция
pulstran
, которая позволяет сформировать сигнал в виде суммы конечного числа импульсов произ- вольной формы с заданными задержками и множителями, что делает ее очень удобной при построении графиков сигналов, восстановленных по дискретным отсчетам согласно теореме Котельникова.
Рис. 1.4 наглядно демонстрирует главное свойство сигнала с ограни- ченным спектром – его бесконечность во времени. Хотя отличны от нуля лишь несколько отсчетов показанного сигнала, аналоговый сигнал оказы- вается бесконечно колеблющимся: между нулевыми отсчетами (на рис. 1.4 это отсчеты –2, –1, 4, 5, 6 ) его значения отличны от нуля. Эти колебания нигде не заканчиваются, хотя их амплитуда стремится к нулю.
Рис. 1.4. Восстановление непрерывного сигнала по его дискретным отсчетам

16
Когда говорят об ограниченной полосе частот сигнала, имеется в ви- ду спектральная функция всего сигнала, имеющего бесконечную длитель- ность. При этом мгновенные спектры отдельных фрагментов сигнала мо- гут содержать сколь угодно высокие частоты. Под мгновенным спектром подразумевается спектральная функция «вырезанного» из сигнала фраг- мента конечной длительности.
В частности, в отдельном промежутке между соседними отсчетами сигнал с ограниченным спектром может иметь сколь угодно сложную форму, например произвольное число раз менять знак.
Примеры восстановления сигналов приведены в [43].
Изменение частоты дискретизации.
При решении различных задач обработки сигналов приходится увеличивать или уменьшать частоту дис- кретизации сигналов. Это необходимо, например, для согласования раз- личных стандартов хранения и передачи дискретной информации [43].
Классический пример – преобразование аудиозаписей между форматом компакт-дисков (
f d
= 44,1 кГц) и форматом цифровой магнитной записи
R DAT
(
f d
= 48 кГц).
Приведенный пример не относится к самым простым, поскольку ко- эффициент изменения частоты дискретизации не является целым числом.
В зависимости от значения этого коэффициента выделяют следующие ва- рианты обработки данных.
1.
Интерполяция (interpolation)
– повышение частоты дискретизации в целое число раз.
При интерполяции необходимо повысить частоту дискретизации в
N
раз, т.е. растянуть входной сигнал, а образовавшиеся промежутки между отсчетами заполнить.
Например, при повышении частоты дискретизации в два раза, необ- ходимо между каждой парой отсчетов исходного сигнала «нарисовать» но- вый отсчет, используя при этом информацию об окружающих отсчетах.
В программе MATLAB этому способу соответствует функция
interp
В простейшем случае синтаксис функции таков:
y=interp(x,r)
,
где
r –
кратность увеличения частоты дискретизации. Для интерполяции в данном случае используется нерекурсивный фильтр с линейной ФЧХ. По умолчанию порядок фильтра равен 8
r
, т.е. фильтр в каждый момент ис-


17
пользует восемь отсчетов входного сигнала. Частота среза фильтра по умолчанию равна половине исходной частоты Найквиста.
2
. Прореживание (decimation)
– понижение частоты дискретизации в целое число раз.
В задачах распознавания речи весьма актуальна проблема рацио- нального выбора частоты дискретизации
f d
. Поскольку полоса частот ре- чевых сигналов ограничена сверху 3 – 3,5 кГц, рациональным было бы значение
f d
= 8...10 кГц. Между тем зачастую оказывается, что речевой сигнал уже дискретизирован с намного более высокой частотой, рассчи- танной на сигналы музыкальной природы, т.е.
f d
= 44 … 48 кГц. Очевид- но, что целесообразно «проредить» сигнал, оставляя лишь каждый, напри- мер, 6-й отсчет исходного сигнала. В результате
f d
понизится с 44,1 до 8 кГц. Перед прореживанием нужно дополнительно отфильтровать частоты речевого сигнала, превышающие значение 3,5 кГц.
В программе MATLAB прореживание выполняется с помощью функции
decimate
. Синтаксис ее вызова следующий:
y = decimate(x, r)
, где
x
– входной сигнал,
r
– целочисленный коэф- фициент понижения частоты дискретизации,
y
– прореженный сигнал.
При этом по умолчанию используется ФНЧ Чебышева 1-го рода
8-го порядка с уровнем пульсаций в полосе пропускания 0,05 дБ и часто- той среза, равной 0,8 новой (после прореживания) частоты дискретизации.
Заметим, что синтаксис функции
decimate
позволяет управлять характери- стиками фильтра и при понижении частоты дискретизации в целое число раз уменьшается число отсчетов, содержащихся в сигнале (на число, рав- ное числу раз понижения частоты дискретизации).
3
. Передискретизация (resampling)
– изменение частоты дискретиза- ции в произвольное (в общем случае дробное) число раз.
Классическим примером, когда нужно изменить частоту дискретиза- ции в нецелое число раз, является переход от частоты 48 кГц, принятой в качестве стандарта цифровой магнитной записи, к частоте 44,1 кГц, приня- той для компакт-дисков (либо обратный переход).
Воспользуемся парой уже известных нам функций:
y=decimate(interp(x, r), q)
,

18
в результате чего получим процесс
y
с частотой дискретизации
d
d
p
F
F
q
′ =
Однако в программе MATLAB для этой цели предусмотрена специ- альная функция
resample
:
y=resample(x, p, q);
где
х
– исходный сигнал,
p
и
q
– числитель и знаменатель дробного коэффициента изменения частоты дискретизации,
y –
передискретизированный сигнал.
1.2.3. Квантование
Для преобразования аналогового сигнала в дискретный используется процедура, называемая квантованием.
Квантование сигнала
– это процедура, похожая на дискретизацию, только проводимая не со временем, а со значением сигнала
S
. Выбирается некий набор возможных значений сигнала
,
, ,
1 2
S S
Sn

и каждое
( )
S ti
сопоставляется с ближайшим числом из этого набора.
Иногда, чтобы внести в сигнал минимальные искажения, кванто- вание проводят так, что интервалы
1
S S
S
n
n
Δ =


оказываются нерав- ными (нелинейное квантование). Например, часто делают
S
Δ малень- ким при малом значении сигнала, чтобы относительная погрешность
(шум квантования/сигнал) не становилась очень большой при малых
S
Нелинейное квантование позволяет получить при приемлемой точности хранения сигнала большой динамический диапазон (отношение макси- мального значения сигнала к минимальному или к величине кванта).
Квантование по уровню
– преобразование непрерывных (по уровню) сигналов
( )
S ti
в моменты отсчета
ti
в дискретные. В результате непре- рывное множество значений сигнала
( )
S ti
в диапазоне от min
S
до max
S
преобразуется в дискретное множество значений
Sk
– уровней квантова- ния (рис. 1.5). Шаг квантования
S
Δ определяется по формуле
1
S
S
S
j
j
Δ =

− .


19
Рис. 1.5. Квантование по уровню: а – аналоговые дискретные по времени сигналы
( )
S ti ; б – квантованные по уровню сигналы
( )
S ti
При квантовании по уровню не всегда сигнал
( )
S ti
совпадает с уровнем квантования (см. сигнал
( )
2
S t
на рис. 1.5,
б
). В таком случае по- ступают одним из следующих способов:
1)
( )
S ti
отождествляют с ближайшим значением (в нашем примере – с 2
S
);
2)
( )
S ti
отождествляют с ближайшим меньшим (или большим) зна- чением. Отождествление не зависит от того, насколько близко к этому уровню квантования находится значение сигнала.
Очевидно, что и при квантовании по уровню возникает погрешность квантования
( )
Sk
ε
:
( ) ( )
S
S t
S
k
i
k
ε
=

(1.6)
Погрешность квантования по уровню тем меньше, чем меньше шаг квантования.
Различают два вида квантования по уровню:
1) равномерное, когда диапазон изменения сигнала разбивается на
m
одинаковых частей. Тогда, зная размер шага квантования, для представ- ления
Sk
достаточно знать число
k
. Другими словами, квантование с по- стоянным шагом
S
Δ называется равномерным;
2) неравномерное, когда диапазон изменения сигнала разбивается на
m
различных частей. Другими словами, квантование с изменяющимся ша- гом
S
Δ называется неравномерным [22].
( )
S t
( )
S t
( )
3
S t
max
S
( )
3
S t
( )
4
S t
2
S
( )
4
S t
( )
2
S t
1
S
( )
2
S t
( )
1
S t
min
S
( )
1
S t
1
t
2
t
3
t
4
t
t
1
t
2
t
3
t
4
t
t
а) б)

20
1.3. Технические и программные средства
формирования аудиоданных
Для обработки голоса необходимо предварительно записать его в оперативную память компьютера или на машинный носитель. Большинст- во персональных компьютеров оснащены оборудованием, необходимым для ввода и вывода звука. Это микрофон и звуковая плата. В общем виде процесс ввода речевых сообщений приведен на рис. 1.6.
Рис. 1.6. Схема ввода речевых сообщений в ЭВМ
Как известно, речевой сигнал формируется и передается в простран- стве в виде звуковых волн. Источником речевого сигнала служит речеоб- разующий тракт, который возбуждает звуковые волны в упругой воздуш- ной среде. Приемником сигнала является датчик звуковых колебаний, микрофон
– устройство для преобразования звуковых колебаний в элек- трические. Существует большое количество типов микрофонов (угольные, электродинамические, электростатические, пьезоэлектрические и др.), описанных в специальной литературе. Чувствительный элемент микрофо- на любого типа
– упругая мембрана, которая вовлекается в колебательный процесс под воздействием звуковых волн. Она связана с элементом, кото- рый преобразует колебания мембраны в электрический сигнал.
С выхода микрофона сигнал подается на вход звуковой карты персо- нального компьютера. При записи звуковая карта представляет собой ана- логово-цифровой преобразователь с широкими возможностями настройки параметров оцифровки, основными из которых являются частота дискре- тизации и разрядность кодирования. Данные параметры определяют каче- ство и размер выборки, получаемой в результате записи. Причем размер и качество прямо пропорциональны, т.е. чем выше качество записи, тем больше ее размер.
Существует огромное количество программных средств формирова- ния аудиоданных. Все они отличаются друг от друга, как правило, пользо- вательским интерфейсом и функциональными возможностями, но в их ос- нове лежит один и тот же принцип работы: запись, анализ, сжатие и очист- ка от шума сигнала. К таким средствам относятся:
− Sound Forge – отличный звуковой редактор от компании «Sonic
Foundry», сочетающий в себе мощь профессиональной дорогостоящей программы и простой пользовательский интерфейс;
Речь
Датчик звуковых колебаний
Звуковая карта
(АЦП)
ЭВМ