- •Алгоритмы распознавания речевых сигналов с использованием признаков, основанных на линейном предсказании.
- •4.1. Меры сходства.
- •4.2. Нормализация темпа речи.
- •Алгоритмы динамического программирования [9]
- •Метод градиентного спуска [9].
- •Кусочно-линейный метод [10]
- •Марковское моделирование [3,9].
- •4.3. Многодикторные системы распознавания речи.
- •5. Программная система для распознавания речи.
- •5.1. Выделение начала и конца слова.
- •5.2. Алгоритм вычисления клп-параметров.
- •5.3. Алгоритм динамического программирования.
5.2. Алгоритм вычисления клп-параметров.
Структурная схема выделения КЛП-параметров представлена на рисунке 5.2.
Входные данные алгоритма представляют собой файл речевых отсчетов, взятых с частотой дискретизации Fs = 11 кГц (t 90 мкс); порядок предсказания (по умолчанию равный 12).
Длительность временного окна анализа составляет ~11,5 мс. В соответствии с этим сигнал разбивается на сегменты длительностью 128 отсчетов.
Для выделения коэффициентов линейного предсказания используется автокорреляционный метод. Он основан на предположении, что сигнал равен нулю вне интервала анализа. В связи с этим сигнал необходимо пропустить через окно конечной длительности w(m),которое стремиться к нулю на концах интервала, иначе в начале и в конце интервала анализа погрешность будет слишком большой. Для уменьшения спектральных искажений сигнала из-за граничных условий сигнал взвешивается весовой функцией окна Хэмминга, описанной выше.
Рисунок 5.2.Алгоритм вычисления КЛП - параметров
Отсчеты автокорреляционной функции определяются по формуле
(5.4)
где f(i) – отсчеты речевого сигнала в моменты времениi,i=0,…,N;
(N+1) – количество отсчетов в интервале анализа;
(m+1)– количество отсчетов автокорреляционной функции.
Они служат входными данными для рекурсивного алгоритма Левинсона-Дарбина.
E(0) = r(0), (5.5)
(5.6)
(5.7)
,v = 1,…,s-1 (5.8)
(5.9)
s = 1,…,m (5.10)
Окончательное решение
(5.11)
b-параметры определяются по формулам
, (5.12)
, (5.13)
,a0=1 (5.14) Результами работы алгоритма являются коэффициенты линейного предсказания {av},{bv} и суммарная ошибка для всех сегментов. После окончания вычислений коэффициенты могут быть записаны в файл.
Коэффициенты автокорреляции, квадратичная ошибка для всех параметров записываются в файл параметров, который впоследствии может быть использован для распознавания. У распознаваемого и эталонного сигналов порядок предсказания должен быть одинаковым. Этот порядок выбран равным 12.
Выходные данные: файл параметров, содержащий коэффициенты автокорреляции и ошибку предсказания; файл КЛП-параметров; дополненый файл эталонов.
5.3. Алгоритм динамического программирования.
Алгоритм осуществляет нормализацию длин сигнала и эталона путем нахождения оптимальной меры растяжения/сжатия участков эталона и сигнала. Структурная схема алгоритма приведена на рисунке 5.3.
В качестве уравнения динамического программирования используется уравнение с двукратной степенью деформации
Рисунок 5.3. Алгоритм динамического программирования
(5.15)
В качестве алгоритма использована одна из разновидностей динамического программирования, которая обычно примеяется для нахождения кратчайшего пути между двумя вершинами в ациклическом графе. Он состоит в последовательном применении уравнения динамического программирования ко всем сегментам исходного сигнала и первого сегмента эталона. Затем, это уравнение применяется для всех сегментов второго эталона, и т.д. Значение весовой функции для последнего сегмента сигнала и эталона будет мерой сходства сигнала и эталона.
В качестве расстояния между навлюдаемым Rи эталоннымb объектами, используется величина