ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У « Б е л Г У » )
ИНСТИТУТ ИНЖЕНЕРНЫХ ТЕХНОЛОГИЙ И ЕСТЕСТВЕННЫХ НАУК
КАФЕДРА ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННЫХ
СИСТЕМ И ТЕХНОЛОГИЙ
ВЫЯВЛЕНИЕ УЧАСТКОВ АКТИВНОСТИ РЕЧИ В ЗАДАЧАХ СТЕГАНОГРАФИИ
Магистерская диссертация
обучающегося по направлению подготовки 11.04.02 Инфокоммуникационные технологии
и системы связи,
магистерская программа «Системы и устройства радиотехники и связи»
очной формы обучения, группы 07001532
Бухало Дениса Сергеевича
Научный руководитель
канд. техн. наук,
доцент кафедры
Информационнотелекоммуникационных
систем и технологий
НИУ «БелГУ» Прохоренко Е.И.
Рецензент
Ведущий инженер электросвязи
участка систем коммутации № 1
г. Белгорода Белгородского
филиала ПАО «Ростелеком»
Уманец С.В.
БЕЛГОРОД 2017
2
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ
3
ГЛАВА 1 ОСНОВНЫЕ ПОЛОЖЕНИЯ ТЕОРИИ
ОБНАРУЖЕНИЯ АКТИВНОСТИ РЕЧИ
ГЛАВА 2 ОБЗОР МЕТОДОВ КОДИРОВАНИЯ РЕЧЕВОГО
5
10
СИГНАЛА
2.1 VAD на основе сравнения с энергетическим порогом
10
2.2 VAD на основе коэффициентов линейного предсказания
12
2.3 Метод обнаружения пауз на основе субполосного анализа
14
ГЛАВА 3 ИССЛЕДОВАНИЕ АЛГОРИТМОВ ВЫЯВЛЕНИЯ
АКТИВНОСТИ РЕЧИ
18
3.1 Сравнительная оценка работоспособности методов
обнаружения пауз
18
3.2 Оценка выявления исключения пауз на ёмкость речевого
материала
27
3.3 Оценка выявления точности определения границы пауза/речь
на вероятность ошибки декодирования
29
ЗАКЛЮЧЕНИЕ
33
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
35
ПРИЛОЖЕНИЕ А
40
ПРИЛОЖЕНИЕ Б
42
ПРИЛОЖЕНИЕ В
43
ПРИЛОЖЕНИЕ Г
45
ПРИЛОЖЕНИЕ Д
47
ПРИЛОЖЕНИЕ Е
49
ПРИЛОЖЕНИЕ Ж
53
ПРИЛОЖЕНИЕ З
60
3
ВВЕДЕНИЕ
Задача
защиты
информации
от
несанкционированного
доступа
решалась во все времена на протяжении истории человечества. Одним из
решений таковой задачи является маскировка информации. Этим занимаются
две науки – криптография и стеганография. Целью первой является скрытие
информации за счёт шифрования, а второй – передача информации путём
сохранения в тайне самого факта передачи. Доминирующую роль среди
средств
защиты
информации
играет
шифрование
сообщений
с
использованием методов криптографии, хоть они и не могут обеспечить
необходимую защищенность каналов связи от несанкционированного
доступа к информации со стороны третьих лиц. Поэтому в этих условиях
защита информации, основанная на применении средств стеганографии,
является целесообразной.
Развитие средств вычислительной техники дало новый толчок для
развития
стеганографии.
Так
одним
из
направлений
современной
стеганографии является цифровая стеганография [1,11,22], под которой
подразумевают скрытие одних данных в другие посредством методов
цифровой
обработки
сигналов.
В
качестве
исходного
материала
используются цифровые данные, удобные для обмена, хранения и передачи.
К таковым относятся речевые данные, которые являются наиболее удобной и
естественной формой информационного обмена.
В голосовой связи речь может быть охарактеризована как прерывистый
носитель информации из-за пауз, которые в режиме диалога могут занимать
до 60% длительности исходных звукозаписей. В причину того, что внедрение
информации при использовании стеганографических методов целесообразно
осуществлять только в те отрезки речевых данных, где присутствует
активная речь [1,11,22,31,36], то задача выявления участков активности речи
является актуальной.
4
Поэтому целью данной работы является оценка эффективности
методов выявления активности речи, позволяющих определять границы
«активная речь/пауза» (т.е. осуществлять кодирование сигнала).
Для достижения цели научно-исследовательской работы поставлены
следующие задачи:
1) обзор основных методов кодирования речевого сигнала;
2) сравнительная
оценка
работоспособности
методов
кодирования речевого сигнала;
3) оценка выявления исключения пауз на ёмкость речевого
материала;
4) оценка выявления точности определения границ активная
речь/пауза на вероятность ошибки декодирования.
Объектом исследования являются методы кодирования речевого
сигнала, а предметом исследования – речевые данные.
В работе использованы методы статистического анализа, цифровой
обработки
речевых
данных,
линейной
алгебры,
субполосного
анализа/синтеза и вычислительных экспериментов.
Данная работа состоит из Введения, трёх глав, Заключения и
Приложений. Работа изложена на 64 страницах машинописного текста,
включая 31 рисунок, 7 таблиц и список литературных источников из 47
наименований.
5
ГЛАВА 1 ОСНОВНЫЕ ПОЛОЖЕНИЯ ТЕОРИИ
ОБНАРУЖЕНИЯ АКТИВНОСТИ РЕЧИ
В голосовой связи речь может быть охарактеризована как прерывистый
носитель
информации
особенностями
из-за
данного
вида
пауз,
которые
сигналов
являются
по
характерными
сравнению
с
другими
мультимедийными сигналами, такими как видео, аудио и данные [6,47].
Интервалы, где голосовая информация присутствует, называют участками
активной речи, а паузы между речевыми «всплесками» – участками пауз.
Рисунок 1.1 – Участки активной речи и паузы
Речевой сигнал, как и другие виды сложных сигналов произвольной
формы, при их изучении и анализе, удобно представлять в виде некоторой
комбинации более простых сигналов известной формы. Такой приём, когда
произвольная
функция
детерминированных
раскладывается
базисных
по
функций,
различным
называется
системам
обобщённым
спектральным анализом.
Основным инструментом, используемым в спектральном анализе,
является пара преобразований Фурье, которые позволяют связать временной
сигнал с его представлением в частотной области.
6
Прямое преобразование Фурье:
xt
X e
it
(1.1)
dt ,
где X - частотное представление сигнала временного сигнала x t .
Обратное преобразование Фурье:
1
X
2
xt e
jt
dt
(1.2)
Соотношения 1.1 и 1.2 являются эквивалентными, поскольку могут
быть получены друг из друга линейным преобразованием.
0.08
0.014
0.06
Амплитуда трансформант Фурье
0.012
Амплитуда, В
0.04
0.02
0
-0.02
-0.04
0.008
0.006
0.004
0.002
-0.06
-0.08
0.01
0
200
400
600
800
Время, отсчёты
1000
1200
0
1400
0
500
1000
1500
2000
2500
Частота, Гц
3000
3500
4000
а
б
Рисунок 1.2 – Сигнал, соответствующий безударному звуку «А», во временной
(а) и частотной (б) областях ( f d = 8 кГц)
-3
0.02
5
4.5
Амплитуда трансформант Фурье
0.015
Амплитуда, В
0.01
0.005
0
-0.005
-0.01
-0.015
-0.02
x 10
4
3.5
3
2.5
2
1.5
1
0.5
0
50
100
150
200
250
Время, отсчёты
300
350
400
450
0
0
500
1000
1500
2000
2500
Частота, Гц
3000
3500
а
б
Рисунок 1.3 – Сигнал, соответствующий звуку «В», во временной (а) и
частотной (б) областях ( f d =8 кГц)
4000
7
0.05
0.35
0.04
0.3
Амплитуда трансформант Фурье
0.03
Амплитуда, В
0.02
0.01
0
-0.01
-0.02
-0.03
0.25
0.2
0.15
0.1
0.05
-0.04
-0.05
0
200
400
600
Время, отсчёты
800
1000
0
1200
0
500
1000
1500
а
2000
2500
Частота, Гц
3000
3500
4000
б
Рисунок 1.4 – Сигнал, соответствующий звуку «Н», во временной (а) и
частотной (б) областях ( f d =8 кГц)
0.08
3
0.07
Амплитуда трансформанты Фурье
4
Амплитуда, В
2
1
0
-1
-2
-3
-4
0.06
0.05
0.04
0.03
0.02
0.01
0
100
200
300
400
500
Время, отсчёты
600
а
700
800
0
0
500
1000
1500
2000
2500
Частота, Гц
3000
3500
4000
б
Рисунок 1.5 – Сигнал, соответствующий паузе, во временной (а) и частотной
(б) областях ( f d =8 кГц)
С связи с тем, что звуки речи меняют друг друга, то основным
свойством речевых сигналов следует принять нестационарность, т.е.
характеристики речевых сигналов меняются во времени. Так одной из
основных характеристик, меняющейся в зависимости от анализируемого
отрезка сигнала, является энергия сигнала, которая может быть выражена
через равенство Парсеваля:
8
x
t T
2
t
1
x d
2
t
2
x
где
x
2
t
X , T
t
2
d ,
(1.3)
Pr x ,
(1.4)
r 0
- энергия отрезка сигнала; Pr x - энергия сигнала в r - том
2
t
частотном интервале.
Исследования тонкой структуры энергетического спектра речевого
сигнала в частотной области позволили установить, что энергия звуков речи
распределена неравномерно и сосредоточена в достаточно узких частотных
интервалах (см. рисунки 1.2 Б-1.4 Б), в то время как энергия отрезка сигнала,
принадлежащего паузе, распределена равномерно во всём анализируемом
частотном диапазоне (см. рисунок 1.5 Б).
Для анализа особенностей речевых сигналов можно использовать
метод вычисления точных значений частей энергии, сосредоточенных в
заданных частотных интервалах [14,15,16,17,18,19].
Полный набор частей энергии отрезка сигнала можно определить как:
Pr x T Ar x ,
где
x
(1.5)
- отрезок анализируемого сигнала; r - номер анализируемого
частотного интервала, r 1, R , где R – количество частотных интервалов, на
которые разбивается ось частот; Ar - субполосная матрица, рассчитанная для
r-того частотного интервала [14,15]:
sin 2 (i k ) sin1 (i k )
,ik
(i k )
,
Ar aik
2
1
,
ik
где
2 , 1
- границы r -того частотного интервала, учитывая
(1.6)
9
0 r r 1
r 1 r R
(1.7)
.
Тогда с использованием ф.1.7 рисунки 1.2Б – 1.5Б будут представлены
в следующем виде:
-3
0.06
5
x 10
значение энергии в отрезке сигнала
значение энергии в отрезке сигнала
4.5
0.05
0.04
0.03
0.02
0.01
4
3.5
3
2.5
2
1.5
1
0.5
0
0
2
4
6
8
10
12
номер частотного интервала
14
0
16
0
2
4
А
6
8
10
12
номер частотного интервала
14
16
Б
Рисунок 1.6 – Распределение энергии для сигналов, соответствующим звукам
0.14
0.35
0.12
0.3
значение энергии в отрезке сигнала
значение энергии в отрезке сигнала
«А» (А) и «В» (Б)
0.1
0.08
0.06
0.04
0.02
0
0
2
4
6
8
10
12
номер частотного интервала
А
14
16
0.25
0.2
0.15
0.1
0.05
0
0
2
4
6
8
10
12
номер частотного интервала
14
16
Б
Рисунок 1.7 – Распределение энергии для сигналов, соответствующим звуку
«Н» (А) и паузе (Б)
10
ГЛАВА 2 ОБЗОР МЕТОДОВ КОДИРОВАНИЯ
РЕЧЕВОГО СИГНАЛА
Широкое применение в информационно – телекоммуникационных
системах нашли алгоритмы Voice Activity Detector (VAD) [4, 6, 21, 41].
Реализация алгоритмов VAD основана на различиях речевого сигнала и
шума. При этом основное внимание уделяется следующим особенностям:
- речь является нестационарным процессом [12, 37];
- фоновый шум стационарен на более длинном отрезке времени по
сравнению с речью [7, 29];
- уровень речевого сигнала обычно выше уровня фонового шума.
2.1 VAD на основе сравнения с энергетическим порогом
Одной из простейших реализаций VAD является принятие решения о
наличии или отсутствии полезного сигнала на основе сравнения уровня
энергии фрагмента сигнала с энергетическим порогом [4,18,26].
Алгоритм данного метода выглядит следующим образом:
1. Создать
и
(или)
загрузить
звуковой
файл
формата
*.wav,
содержащий некоторое количество периодов молчания (пауз).
2. Задать начальные параметры:
1) длину анализируемого отрезка N (значение подобрать эмпирически,
исходя из предварительного анализа длительности звуков и пауз в речевых
сигналах);
2) начальное значение энергетического порога H , которое должно
быть максимальным (т.е. настолько большим, чтобы первый отрезок
идентифицировался как пауза, поскольку мы предполагаем, что любой
звуковой сигнал начинается с периода молчания).
3. Создать цикл анализа отрезков сигнала.
11
4. В теле цикла для отрезка анализа:
4.1. Вычислить величину энергии сигнала:
N
P x(i) 2 ,
(2.1)
i 1
где
T
x x1 ,..., xi ,..., x N - анализируемый отрезок сигнала, i 1, N , где N -
длина окна анализа; P - значение энергии сигнала x .
4.2. Сравнить величину энергии с пороговым значением, т.е. проверять
условие P H ;
4.3. Если условие выполняется, то отрезок сигнала идентифицируется
как пауза и следует:
а) вычислить усредненное значение энергии Pср (с учетом значений
предыдущих отрезков анализа);
б) вычислить значение порога, уточненное по среднему значению
энергии:
H K Pср ,
(2.2)
где K – коэффициент, определенный эмпирически;
в) кодировать паузу (для кодирования пауз можно использовать
различные способы, например, запомнить номер отрезка анализа, или
запоминать номер начального отсчета и длину паузы);
4.4. Если условие не выполняется, то перейти к анализу следующего
отрезка.
Такая реализация целесообразна лишь в том случае, когда уровень
фонового шума низкий по сравнению с уровнем сигнала, порождаемого
звуками речи. К тому же к недостаткам метода можно отнести то, что он не
12
адаптивный, т.к. коэффициент K подбирается эмпирически. Поэтому при
программной реализации было решено вычислять значение энергетического
порога как:
H
N M
X (i)
2
M,
(2.3)
i 1
где
T
X X 1 ,..., X i ,..., X N *M - анализируемая запись, i 1, N , где N - длина
окна анализа, M - количество отрезков анализа.
Программная реализация предложенного метода в среде Matlab
представлена в ПРИЛОЖЕНИИ Б.
2.2 VAD на основе коэффициентов линейного предсказания
В
алгоритмах
VAD
широко
используются
коэффициенты
автокорреляции для определения энергетического уровня сигнала и его
стационарности [8,23]. Решение о наличии речевого сигнала принимается в
том случае, если энергия сигнала превышает пороговое значение и сигнал
является нестационарным [17,18].
r i
,
r 0
(2.4)
r i xk xk i , i 0, p ,
(2.5)
p
Df A0 r 0 2 Ai
i 1
N i
k 0
p i
Ai a k a k i , i 0, p ,
(2.6)
k 0
где
Df n - среднее значение автокорреляции сигнала, вычисленное для n -го
отрезка; rn i - коэффициенты автокорреляции n -го отрезка входного
сигнала;
An i
-
коэффициенты
автокорреляции
средних
значений
коэффициентов линейного предсказания n -го отрезка; p - порядок модели;
13
T
x x1 ,..., x j ,..., xN - анализируемый сигнал, j 1, N ; N - длина окна анализа;
а - средние
значение
коэффициентов
линейного
предсказания,
рассчитываемые на основе средних коэффициентов автокорреляции с
использованием алгоритма Левинсона - Дарбина [38] (см. ПРИЛОЖЕНИЕ
А).
Если абсолютное значение разности вежду значениями Df текущего и
последующего отрезков больше, чем установленное пороговое значение, то
ткущий отрезок считается нестационарным, в противном случае –
стационарным.
В дополнение к среднему значению автокорреляции сигнала Df ,
можно вычислять значение остаточной энергии:
E A0r 0 2 Ai r i ,
p
(2.7)
i 1
где
E - остаточная энергия; r i - коэффициенты автокорреляции входного
сигнала;
Ai - коэффициенты
автокорреляции
средних
значений
коэффициентов линейного предсказания; p - порядок модели.
Для определения пороговых значений величин Df и E , сравнивается
разница этих значений для текущего и предыдущего отрезков, которые
составляют совокупность обучающей выборки (т.е. заведомо отнесены к
шуму). Для этого обучающая выборка разбивалась во временной области на
отрезки фиксированной длины N (128 и 256 отсчётов при f д 8000 Гц ) со
сдвигов в 5 отсчётов. Для каждого фрагмента вычислялись значение
остаточной
энергии
автокорреляции Df
E
(2.7)
и
среднее
значение
коэффициентов
(2.4). В качестве пороговых значений выступают
максимальные значения остаточной энергии E , вычисленное для отрезка из
14
обучающей выборки, и максимальное значение абсолютных величин
разностей между Df соседних отрезков, полученное на этапе обучения.
Программные реализации предложенного метода в среде Matlab
представлены в ПРИЛОЖЕНИИ В и ПРИЛОЖЕНИИ Г.
2.3 Метод обнаружения пауз на основе субполосного анализа
Распределение долей энергии по частотным интервалам может быть
использовано для обнаружения пауз в речевом сигнале. Решающая функция
для проверки гипотезы о том, что анализируемый отрезок сигнала
соответствует паузе между звуками данных имеет вид [17,18]:
S max Pr PrП для любых r 1, R ,
где
(2.8)
Pr - значение части энергии r - ого частотного интервала для отрезка
сигнала, соответствующего активной речи; Pr П - значение части энергии r ого частотного интервала для отрезка сигнала, соответствующего паузе; S решающая функция.
При этом значение Pr П
усреднения
по
большому
получается на этапе обучения за счёт
количеству
отрезков
сигнала,
заведомо
относящимся к паузам:
Ny
Pr П
где
P
k 1
П
r k
Ny
,
(2.9)
N y - количество отрезков сигнала в паузе, которые используются для
усреднения.
15
Если
выполняется
неравенство
(2.10),
то
принимается,
что
анализируемый отрезок относится к паузе.
S h ,
где
h - пороговое
значение,
(2.10)
обеспечивающее
заданный
уровень
вероятности ложной тревоги, т.е. PS h 1 .
Пороговое значение h можно получить из основанного на неравенстве
Чебышева выражении (2.11).
h S П DП d ,
где
S П - пороговое
значение,
(2.11)
обеспечивающее
заданный
уровень
вероятности ложной тревоги, т.е. PS h 1 .
Словесное описание алгоритма
1. Ввести количество R частотных интервалов и значение длительности
обрабатываемого отрезка сигнала N;
2. Для
r 1,.., R; i, k 1,.., N
осуществить
вычисления
элементов
матриц (см. ф. 1.6);
3. Ввести заведомо относящиеся к паузе данные длительностью N y N ;.
4. Для k 1,.., N y выполнить:
4.1. Ввести вектор значений обрабатываемого отрезка сигнала
x k ( x k1 ,.., x kN ) T ;
4.2. Вычислить вектор yyk ( y1Tr ,.., y1TR )Tk AA xk
J
4.3.Для r 1,.., R вычислить ( Pr ) kП ( y 2jr )1 ;
j 1
5. Для r 1,.., R вычислить
PrП
Ny
( Pr ) kП / N y
k 1
16
6. Для k 1,.., N y вычислить S kП max(( Pr ) kП / PrП ), r 1,.., R ;
Ny
7. Вычислить S П
k 1
( S kП ) / N y
и DП2
Ny
( S kП ) 2 / N y S П2 ;
k 1
8. Ввести значение вероятности ложной тревоги 1 ;
9. Выполнить итерации по определению порога:
9.1. Ввести m 0; a0 2;
9.2. Вычислить hm S П D П / a m ;
Ny
9.3. Вычислить m sig ( S kП hm ), sig ( x) 1, x 0; sig ( x) 0, x 0;
k 1
9.4. Если | m | 2 то положить h hm и прекратить итерации;
9.5. В противном случае при m вычислить am1 : (1 am ) * am ,
если
же
выполняется
неравенство
m ,
то
вычислить
am1 : (1 am ) * am , положить m m 1 и перейти к выполнению 9.2;
10. Задать длительность M I * N , I 1,2,... , предназначенных для
сжатия за счёт обнаружения и кодирования пауз данных;
11. Ввести предназначенные для обработки данные z ( z1 ,.., z M ) T ;
12. Задать шаг смещения вдоль отрезка обрабатываемых данных К,
такой, что отношение U N / K является целым числом;
13. Выразить MM ( I 1) * U ;
14. Для k 1,.., MM выполнить:
14.1. Положить xk ( x1k ,.., x Nk )T , xmk z( k 1) K m ;
14.2. Вычислить вектор yyk ( y1Tr ,.., y1TR )Tk AA xk
Jr
14.3. Для r 1,.., R вычислить ( Pr ) k ( y 2jr )1 ;
j 1
14.4. Вычислить S k max(( Pr ) k / PrП ), r 1,.., R
14.5. Если
Sk h ,
то
принимается
решение
о
наличии
в
анализируемом отрезке данных, порождаемых звуками речи, полагается
17
k k 1 и при выполнении условия k MM выполняются предыдущие
операции, начиная с подпункта 14.1, а при выполнении неравенства k MM
вычисления заканчиваются. В противном случае (неравенство Sk h не
выполняется) принимается решение о принадлежности анализируемого
отрезка данных паузе и выполняются следующие действия:
14.6. Если на предыдущем этапе (предыдущем k) не принималось
решения о наличии паузы, то началу новой паузы присваивается код,
Cn (k n 1) K , а длительности присваивается значение En K ,где k n номер
итерации
при
которой
обнаружено
начало
n-той
паузы
в
обрабатываемой совокупности данных. Если же и на предыдущем этапе
отрезок анализируемых данных был отнесен к паузе номером n, то код
начала паузы не изменяется, а длительность увеличивается на величину шага
смещения, то есть вычисляется En En K ;
14.7.
Полагается
k k 1
и
при
выполнении
условия
k MM выполняются предыдущие операции, начиная с подпункта 17.1, а
при выполнении неравенства k MM вычисления заканчиваются.
15. Конец.
Программная реализация предложенного метода в среде Matlab
представлена в ПРИЛОЖЕНИИ Д.
18
ГЛАВА 3 ИССЛЕДОВАНИЕ АЛГОРИТМОВ
ВЫЯВЛЕНИЯ АКТИВНОСТИ РЕЧИ
3.1 Сравнительная оценка работоспособности методов
обнаружения пауз
Для проведения эксперимента был записан речевой материал,
соответствующий фразе «Он пошёл каменистой тропинкою вверх от залива».
Речевой материал состоит не только из активной речи, но и из периода
паузы, в самом начале записи (для обучающей выборки). Фраза была
записана при частоте дискретизации 8000 Гц и 16 уровней квантования.
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
0
1
2
3
4
5
время, отсчёты
6
7
Рисунок 3.1 – Обрабатываемый сигнал во временной области
8
9
4
x 10
19
Для оценки адекватности работы алгоритмов, кодирование пауз было
проведено
вручную,
т.е.
границы
сегментов
были
определены
по
осциллограмме и зафиксированы их значения.
Таблица 3.1 - Значения отсчётов, соответствующие началу и окончанию
сегментов
он
пошёл каменистой тропинкою
вверх
от
залива
№ отсчёта начала сегмента
34000
37569
45661
53478
65002
70831
№ отсчёта конца сегмента
35784
43107
53477
61509
69466
77000
Рисунок 3.2 – Обрабатываемый сигнал во временной области, разбитый на
сегменты
Если представить входную последовательность в виде бит, где 0
означает, что данный отсчёт представляет собой шум, а 1 – активный сигнал,
то сигнал примет следующий вид:
20
1
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
6
7
8
9
4
x 10
Рисунок 3.3 – Обрабатываемый сигнал, представленный в виде двоичной
последовательности
Благодаря такому представлению легко визуально видеть разницу в
границах сегментов, найденный вручную и с помощью алгоритма
кодирования пауз.
Для того, чтобы продемонстрировать работу алгоритмов в одинаковых
условиях, была выбрана единая для всех длина отрезка анализа N , равная
256 отсчётам. Для обучения используются первые 30000 отсчётов сигнала.
21
0.25
сигнал во временной области
кодированные паузы
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
5
6
время, отсчёты
7
8
9
10
4
x 10
Рисунок 3.4 А – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное во временной области
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.4 Б – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности
22
Из рисунков 3.4 А и 3.4 Б можно отметить, что довольно-таки много
отрезков, когда активная речь была воспринята как пауза. Поэтому подобный
метод лучше использовать только при малых внутренних шумах. В случаях,
когда в речи используются малоэнергетичные (или шумоподобные) звуки
(например "ч"), детектор может принять их за паузу.
В ПРИЛОЖЕНИИ Е представлены результаты работы алгоритма при
изменении длины отрезка анализа
N , а также изменении формулы
вычисления значения энергетического порога H с ф. (2.2) на ф. (2.3).
Можно отметить, что при уменьшении длины отрезка анализа,
улучшения в определении границ активной речи и пауз не наблюдается:
N=256
N=128
1
0.8
0.6
0.4
0.2
0
3
3.5
4
4.5
5
5.5
6
время, отсчёты
6.5
7
7.5
8
4
x 10
Рисунок 3.5 – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности при
разной длине отрезка анализа N
Проведём аналогичные исследования для метода VAD на основе
коэффициентов линейного предсказания:
23
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
5
6
время, отсчёты
7
8
9
10
4
x 10
Рисунок 3.6 – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=256, p=8)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.7 – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=256, p=8)
24
Из рисунков 3.6-3.7 можно отметить, что не было обнаружено ни одной
паузы между словами в произнесённой фразе, а также, что даже те отрезки,
на которых происходило обучение, восприняты как активная речь.
В ПРИЛОЖЕНИИ Ж представлены результаты работы алгоритма при
изменении длины отрезка анализа N и порядка модели p .
В рамках эксперимента, было исследовано, как искусственное
увеличение пороговых значений влияет на кодирование пауз (см. рисунок
3.7).
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.8 – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=256, p=8) при
увеличении пороговых значений в 10 раз
25
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.9 – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=256, p=8) при увеличении пороговых значений в 10 раз
Можно отметить, что с увеличением пороговых значений Df и E ,
способность
алгоритма
VAD
на
основе
коэффициентов
линейного
предсказания обнаружить паузы значительно улучшилась. Поэтому можно
утверждать, что подобный алгоритм требует улучшений при обучении.
Проведём аналогичные исследования для метода обнаружения пауз на
основе субполосного анализа:
26
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
5
4
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.10 – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=16)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок 3.11 – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=16), представленное в виде двоичной
последовательности
27
В ПРИЛОЖЕНИИ З представлены результаты работы алгоритма при
изменении длины отрезка анализа N и количества интервалов, на которые
разбивается ось частот R .
Таким образом на основании рисунков 3.3 А – 3.8 Б можно сделать
вывод,
что
методы
являются
VAD
работоспособными
только
при
эмпирической подстройке параметров во время обучения, т.е. не являются
адаптивными,
в отличии
от
метода обнаружения
пауз
на
основе
субполосного анализа.
3.2 Оценка выявления исключения пауз на ёмкость речевого
материала
Оценить, насколько исключение пауз влияет на общий объём речевого
материала,
введём величину
Kсж
-
коэффициент
сжатия,
который
рассчитывается в соответствии с ф.3.1.
K сж
где
N исх
,
N акт. р
(3.1)
Nисх - количество отсчётов исходного сигнала до обработки; N акт. р -
количество отсчётов сигнала, содержащего только активную речь (т.е. без
пауз).
Для того, чтобы адекватно оценить результаты эксперимента,
вычислим значение Kсж для идеального случая, т.е. когда паузы были
определены вручную:
K сж
95192 отсчётов
2,8157 раз
33808 отсчётов
28
Таким образом, если полученные в результате экспериментов значения
Kсж будут больше значения 2,8 , то активная речь была воспринята как пауза
и информация в сообщении утеряна, а если меньше 2,8 - значит сжатия за
счёт удаления пауз происходит не эффективно.
Эксперименты проводились при разных параметрах:
- для метода VAD на основе сравнения с энергетическим порогом менялись длина обрабатываемого отрезка N .
- для метода VAD на основе коэффициентов линейного предсказания –
менялись длина обрабатываемого отрезка N , и порядок модели p .
- для метода обнаружения пауз на основе субполосного анализа –
менялись длина обрабатываемого отрезка N , и количество интервалов, на
которые разбивается ось частот R .
Все полученные результаты сведены в таблицы 3.2 – 3.4.
Таблица 3.2 – Значение коэффициента сжатия Ксж для метода VAD на основе
сравнения с энергетическим порогом
N 128 отсчётов
N 256 отсчётов
5,5851
5,4467
Kсж , раз
Таблица 3.3 – Значение коэффициента сжатия Ксж для метода VAD на основе
коэффициентов линейного предсказания
p 8
p 10
p 15
p 20
N 128 отсчётов
1,0564
1,0445
1,0549
1,0685
N 256 отсчётов
1,0655
1,0599
1,1067
1,0685
Kсж , раз
29
Таблица 3.4 – Значение коэффициента сжатия Ксж для метода обнаружения
пауз на основе субполосного анализа
N 128 отсчётов
Kсж ,
N 256 отсчётов
R 16
R 32
R 64
R 16
R 32
R 64
2,5372
2,5635
2,6178
2,5119
2,3983
2,4951
раз
Таким образом, на основании таблиц 3.2-3.4 можно сделать вывод о
том, что метод обнаружения пауз на основе субполосного анализа является
оптимальным с точки зрения сжатия речевого материала при исключении
пауз. Это обосновывается тем, что значения Kсж при подобном методе
наиболее близки к значению коэффициента сжатия, рассчитанного вручную.
3.3 Оценка выявления точности определения границы пауза/речь
на вероятность ошибки декодирования
Оценка эффективности работы алгоритмов осуществлялась на основе
определения вероятностей ошибок I и II рода. При этом за основную
принималась гипотеза о наличии паузы.
Вероятность ошибки I рода PI рода («ложная тревога») рассчитывалась
по формуле:
PI рода
где
N пр _ пауз
,
N сигн
(3.2)
Nпр _ пауз - количество отсчётов, принятых за паузу в заведомо
известном полезном сигнале;
известном полезном сигнале.
Nсигн - количество отсчётов в заведомо
30
Вероятность ошибки II рода PII рода («пропуск цели») рассчитывалась по
формуле:
PII рода
N пр _ сигн
,
N пауз
(3.3)
где Nпр _ сигн - количество отсчётов, принятых за полезный сигнал в
заведомо известном фрагменте пауз; N пауз - количество отсчётов в заведомо
известном фрагменте пауз.
Эксперименты проводились при разных параметрах:
- для метода VAD на основе сравнения с энергетическим порогом менялись длина обрабатываемого отрезка N .
- для метода VAD на основе коэффициентов линейного предсказания –
менялись длина обрабатываемого отрезка N , и порядок модели p .
- для метода обнаружения пауз на основе субполосного анализа –
менялись длина обрабатываемого отрезка N , и количество интервалов, на
которые разбивается ось частот R .
Все полученные результаты сведены в таблицы 3.5 – 3.7.
Таблица 3.5 – Значение вероятностей ошибок PIрода и PIIрода для метода VAD на
основе сравнения с энергетическим порогом
N 128 отсчётов
N 256 отсчётов
PI рода
PII рода
PI рода
PII рода
0,4959
0
0,4849
0,0010
31
Таблица 3.6 – Значение вероятностей ошибок PIрода и PIIрода для метода VAD на
основе коэффициентов линейного предсказания
N 128 отсчётов
N 256 отсчётов
PI рода
PII рода
PI рода
PII рода
p 8
0
0,9172
0
0,9047
p 10
0
0,9339
0
0,9131
p 15
0
0,9193
0
0,8505
p 20
0
0,9006
0
0,9006
При этом наиболее адекватные результаты для метода VAD на основе
коэффициентов линейного предсказания фиксируются при увеличении
пороговых значений в 10 раз (N=256, p=8): PI рода 0,0824 , PII рода 0,0935 .
Таблица 3.7 – Значение вероятностей ошибок PIрода
и PIIрода для метода
обнаружения пауз на основе субполосного анализа
N 128 отсчётов
N 256 отсчётов
R 16
R 32
R 64
R 16
R 32
R 64
PI рода
0,0115
0,0152
0,0190
0,0039
0,0039
0,0039
PII рода
0,0668
0,0626
0,0521
0,0688
0,0980
0,0729
Основную опасность при обработке сигналов представляют ошибки II
рода, поэтому подобные алгоритмы стараются минимизировать вероятность
ошибки II рода при фиксированном значении вероятности ошибки I рода.
Несмотря на то, что минимальное значение вероятности ошибки II рода
соответствует методу VAD на основе сравнения с энергетическим порогом,
его нельзя назвать оптимальным, т.к. значение вероятности ошибки I рода
достаточно велико, что свидетельствует о том, что в некоторых случаях
активная речь была воспринята как пауза. Поэтому с точки зрения
32
минимального значения ошибок I и II рода оптимальным является метод
обнаружения пауз на основе субполосного анализа.
33
ЗАКЛЮЧЕНИЕ
В данной исследовательской работе проведён сопоставительный анализ
эффективности
нескольких
наиболее
распространённых
методов
кодирования речевого сигнала. Данные методы должны быть способны
обнаружить границу «активная речь/сигнал», и являются первым шагом в
алгоритмах
внедрения
информации
в
речь
посредством
методов
стеганографии.
В работе были реализованы алгоритмы VAD на основе сравнения с
энергетическим порогом, VAD на основе коэффициентов линейного
предсказания, а также метод обнаружения пауз на основе субполосного
анализа. Эффективность методов оценивалась с помощью следующих
характеристик:
- на основе Kсж - коэффициент сжатия, который характеризует
насколько исключение пауз влияет на общий объём речевого материала
- на основе определения вероятностей ошибок декодирования I и II
рода, а именно сколько отсчётов сигнала отсчётов активной речи было
воспринято как пауза и наоборот.
В результате сопоставительного анализа были сформулированы
следующие выводы:
•
методы
VAD
являются
работоспособными
только
при
эмпирической подстройке параметров во время обучения, т.е. не являются
адаптивными,
в отличии
от
метода обнаружения
пауз
на
основе
субполосного анализа.
•
метод обнаружения пауз на основе субполосного анализа
является оптимальным с точки зрения сжатия речевого материала при
исключении пауз. Это обосновывается тем, что значения Kсж при подобном
методе наиболее близки к значению коэффициента сжатия, рассчитанного
вручную. В методе VAD на основе сравнения с энергетическим порогом
34
активная речь была воспринята как пауза и информация в сообщении
утеряна, а в методе VAD на основе коэффициентов линейного предсказания
Kсж слишком мал, что означает, что сжатие за счёт удаления пауз
происходит не эффективно.
•
Несмотря на то, что минимальное значение вероятности ошибки
II рода соответствует методу VAD на основе сравнения с энергетическим
порогом, его нельзя назвать оптимальным, т.к. значение вероятности ошибки
I рода достаточно велико, что свидетельствует о том, что в некоторых
случаях активная речь была воспринята как пауза. Поэтому с точки зрения
минимального значения ошибок I и II рода оптимальным является метод
обнаружения пауз на основе субполосного анализа.
Таким образом, выявление участков активности речи наиболее
эффективно осуществляется на основе метода обнаружения пауз на основе
субполосного анализа, который учитывает основное свойство речевых
сигналов, а именно концентрацию энергии сигнала в узкой полосе частот.
Поэтому его использование обосновано в задачах поиска активной речи при
использовании методов стеганографии.
35
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1.
Аграновский А.В. Стеганография, цифровые водяные знаки и
стеганоанализ [Текст] / А.В. Аграновский, А.В. Балакин, В.Г. Грибунин, С.А.
Сапожников.- М.: Вузовская книга, 2009.- 220 с.: ил.
2.
Аграновский, А.В. Теоретические аспекты алгоритмов обработки
и классификации речевых сигналов [Текст] / А.В. Аграновский, Д.А. Леднов
– М.: Радио и связь, 2004. – 164 с.
3.
Айфичер Э. Цифровая обработка сигналов: практический подход,
2-е издание [Текст]: Пер. с англ. / Айфичер Э., Джервис Б. – М.:
Издательский дом «Вильямс», 2004. – 992 с.:ил.
4.
Белов С.П. Об уменьшении объема трафика при пакетной
передаче речевых сообщений за счет кодирования пауз [Текст] / С.П. Белов,
Е.И. Прохоренко // Научные ведомости Белгородского государственного
университета. Серия: Информатика и прикладная математика. - Белгород,
2006. - № 1 (21). – Вып. 2. - С. 141–148.
5.
Бондарев, В.Н. Цифровая обработка сигналов. Методы и средства
[Текст]: Учеб. Пособие для вузов. 2-е изд / Бондарев В.Н., Трестре Г.,
Чернега В.С. – Х: Конус, 2001. – 398 с.:ил.
6.
Волченков
В.
А.
Методы
и
алгоритмы
детектирования
активности речи [Текст] / В.А. Волченков, В.В. Витязев // Цифровая
Обработка Сигналов. – 2013. - № 1. – С. 54-60.
7.
Гантмахер, В.Е.
Шумоподобные сигналы. Анализ, синтез,
обработка [Текст] / В.Е. Гантмахер, Н.Е. Быстров, Д.В. Чеботарев. – СПб.:
Наука и Техника, 2005. – 400 с.: ил.
8.
Герасимов
А.В.
Применение
метода
модифицированного
линейного предсказания к задачам выделения акустических признаков
речевых сигналов [Текст] / А.В. Герасимов, О.А. Морозов, В.Р. Фидельман //
Радиотехника и Электроника. – 2005. – том 50. №10. – с. 1287 – 1292.
36
9.
Голд, Б. Цифровая обработка сигналов [Текст] / Б. Голд, Ч.
Рейдер. – М.: Сов. Радио, 1973. – 368 с.
10.
Гольденберг Л.М. Цифровая обработка сигналов. [Текст] / Л.М.
Гольденберг. – М.: Радио и связь, 1985. – 312 с.
11.
Грибунин Г.В. Цифровая стеганография [Текст] / В. Г. Грибунин,
И. Н. Оков, И. В. Туринцев.- М.: СОЛОН-Пресс, 2002.- 272c.: ил.
12.
Гудонавичюс, Р.В. Распознавание речевых сигналов по их
структурным свойствам [Текст] / Р.В. Гудонавичюс, П.П. Кемешис, А.Б.
Читавичюс. – Л., «Энергия», 1977. – 64 с.: ил.
13.
Динамические спектры речевых сигналов [Текст] М.Ф. Деркач,
Р.Я. Гумецкий, Б.М. Гура, М.Е. Чабан. – Львов: Вища школа. Изд-во при
Львов. Ун-те, 1983. - 168 с.
14.
Жиляков Е.Г. Вариационные методы анализа и построения
функций по эмпирическим данным: моногр.
[Текст] / Е.Г. Жиляков. -
Белгород: Изд-во БелГУ, 2007. – 160 с.
15.
Жиляков Е.Г. Методы анализа и построения функций по
эмпирическим данным на основе частотных представлений: монография
[Текст] / Е.Г. Жиляков. - Белгород: Изд-во БелГУ, 2007. – 160 с.
16.
Жиляков
Е.Г.
Методы
обработки
речевых
данных
в
информационно-телекоммуникационных системах на основе частотных
представлений [Текст] / Е.Г. Жиляков, С.П.Белов, Е.И. Прохоренко. –
Белгород: БелГУ, 2007. – 136 с.
17.
Жиляков Е. Г. Об анализе и синтезе речевых сигналов в
IP-телефонии
[Текст]
/
Е.Г.
Жиляков,
А.А.
Фирсова
//
Вестник
Национального технического университета Харьковский политехнический
институт. Серия: Информатика и моделирование. – 2009. - № 43. – С. 84-91.
18.
Жиляков Е.Г. Об эффективности различных подходов, к
сегментации речевых сигналов на основе обнаружения пауз [Текст] / Е.Г.
Жиляков, С.П. Белов, А.С. Белов и др. ; БелГУ // Научные ведомости БелГУ.
37
Сер. История. Политология. Экономика. Информатика. - 2010. - №7(78),
вып.14/1.-С. 187-193.
19.
Жиляков, Е.Г. Сегментация речевых сигналов на основе анализа
распределения энергии по частотным интервалам [Текст] / Е.Г. Жиляков,
Е.И. Прохоренко, А.В. Болдышев, А.А. Фирсова, М.В. Фатова // Научные
ведомости Белгородского государственного университета. Серия: История.
Политология. Экономика. Информатика, Том 18 – 2011. - №7-1 (102). – С.
187-196.
20.
Залманзон Л.А. Преобразование Фурье, Уолша, Хаара и их
применение в управлении, связи и других областях. [Текст] / Залманзон Л.А.
– М.: Наука. Гл. ред. Физ.-мат.лит., 1989 год. 496 с.
21.
Зверев, В.А. Выделение сигналов из помех численными методами
[Текст] / В.А. Зверев, А.В. Стромков. – Нижний Новгород: ИПФ РАН, 2001.
– 188 с.
22.
Конахович Г.Ф. Компьютерная стеганография. Теория и практика
[Текст] / Г.Ф. Конахович, А.Ю. Пузыренко.- К.: МК-Пресс, 2006.- 288с.: ил.
23.
анализе
Коротаев Г.А. Некоторые аспекты линейного предсказания при
речевого
сигнала
[Текст]
/
Г.А.
Коротаев
//
Зарубежная
радиоэлектроника. – 1991. - №7. – с.13-31
24.
Лайонс, Р. Цифровая обработка сигналов [Текст] / Лайонс Р; - 2-е
изд. ; Пер. с англ. − М.: ООО "Бином-Пресс", 2006 − 656 с.: ил.
25.
Марпл-мл,
С.Л.
Цифровой
спектральный
анализ
и
его
приложения [Текст] / Марпл-мл. С.Л.; Пер. с англ. −М.: Мир, 1990.
26.
Методы цифровой обработки сигналов для решения прикладных
задач. Монография [Текст] / Под ред. В.И. Марчука. – М.:: Радиотехника,
2012. – 128 с.:ил.
27.
Михайлов В.Г. Измерение параметров речи [Текст] / В.Г.
Михайлов, Л.В. Златоустова; Под ред. М.А. Сапожкова. – М.: Радио и связь,
1987. – 168 с.: ил.
38
28.
Назаров М.В. Методы цифровой обработки и передачи речевых
сигналов [Текст] / М.В. Назаров, Ю.Н. Прохоров. – М.: Радио и связь, 1985. –
176 с.
29.
Обнаружение радиосигналов [Текст] / П.С. Акимов, Ф.Ф.
Евстратов, С.И. Захаров и др.; Под. ред. А.А. Колосова. – М.: Радио и связь,
1989. – 288 с.: ил.
30.
Петраков,
А.В.
Защитные
информационные
технологии
аудиовидеоэлектросвязи: Учеб. Пособие [Текст] / А.В. Петраков. – М.:
Машиностроение, 2010. – 616 c.: ил.
31.
Пономарь М. О. Состояние разработки алгоритмов скрытого
встраивания информации в просодические параметры речи [Текст] / Н.О.
Пономарь // Вестник Московского государственного лингвистического
университета. – 2011. - № 619. – С. 175-182.
32.
Рабинер Л.Р. Цифровая обработка речевых сигналов [Текст] / Л.Р.
Рабинер, Р.В. Шафер; под ред. М.В. Назарова, Ю.Н. Прохорова. – М.: Радио
и связь, 1981. – 495 с.
33.
Рандалл, Р. Б. Частотный анализ [Текст] / Р. Б. Рандалл. –
Глоструп, Дания: К. Ларсен и сын А/О, 1989. – 389 с.
34.
Раушер К. Основы спектрального анализа [Текст]: Пер. с англ. С.
М. Смольского / Под ред. Ю. А. Гребенко - М.: Горячая линия-Телеком, 2006.
– 225 с.
35.
Романюк Ю.А. Дискретное преобразование Фурье в цифровом
спектральном анализе. Учебное пособие [Текст] / Ю.А. Романюк – М.:
МФТИ, 2007. – 120 с.
36.
Салагай, М.О. Просодические средства защиты смысловой
информации [Текст]: автореф. дис. на соиск. учен. степ. канд. филол. наук
(10.02.21) / Салагай Марина Олеговна; Московский технический университет
связи и информатики. – Москва, 2011. – 29 с.
37.
Сапожников, М.А. Вокодерная связь [Текст]/ М.А. Сапожников,
В.Г. Михайлов.-М: Радио и связь , 1983. – 248 с.: ил.
39
38.
Сергиенко А.Б. Цифровая обработка сигналов [Текст] / А.Б.
Сергиенко. – СПб.: Питер, 2003. – 604 с.
39.
Смит
С.
Цифровая
обработка
сигналов:
практическое
руководство для инженеров и научных работников [Текст] / Стивен Смит ;
пер. с англ. А. Ю. Линовича, С. В. Витязева. - Москва : Додэка-XXI, 2008. –
718 с.
40.
Солонина, А.И. Основы цифровой обработки сигналов [Текст]/
А.И. Солонина, Д.А. Улахович, С.М. Арбузов, Е.Б.Соловьева. – СПб.: БХВПетербург, 2005. – 768с.: ил.
41.
Сорокин В.Н. Сегментация речи на кардинальные элементы
[Текст] / В.Н. Сорокин, А.И. Цыплихин // Информационные процессы, 2006,
Т. 6, №3, с. 177-207.
42.
Сюзев В.В. Основы теории цифровой обработки сигналов [Текст]
/ В.А. Сюзев – М.: РТСофт, 2014. – 752 с.
43.
Трахтман А.М. Введение в обобщённую спектральную теорию
сигналов [Текст] / А.М. Трахтман– М.: Изд-во «Советское радио», 1972. – 352
с.
44.
Фланаган, Джеймс Л. Анализ, синтез и восприятие речи Speech
analysis synthesis and perception [Текст] / Джеймс Л. Фланаган.;Пер. с англ.
А.А. Пирогова; Под ред. А.А. Пирогова. – М.: Издательство «Связь», 1968. –
360с.: ил.
45.
Харкевич А.А. Спектры и анализ [Текст] Изд. 5-е / А.А.
Харкевич. – М.:: Книжный дом «ЛИБРОКОМ», 2009. – 240 с.
46.
Шелухин О.И. Цифровая обработка и передача речи [Текст] /
О.И. Шелухин, Н.Ф. Лукьянцев; под ред. О.И. Шелухина. – М.: Радио и
связь, 2000. – 456 с.
47.
Kondoz
A.M.
Digital
Speech.
Coding
for
Low
Communication Systems. – John Wiley & Sons, Ltd. 2004.– 442 p.
Bit
Rate
40
ПРИЛОЖЕНИЕ А
Алгоритм Левинсона - Дарбина [38]:
Вычисляются параметры предсказания первого порядка b11 (А.1) и
средний квадрат ошибки предсказания E1 (А.2).
b11
Rn (1)
Rn (0)
(А.1)
E1 Rn 0 1 b11
Вычисляется
добавляемый
2
элемент
(А.2)
вектора
коэффициентов
предсказания при k 2, p :
k
bk
где
Rn k kT1 kk11
,
Ek 1
(А.3)
k - перевёрнутый вектор - столбец значений корреляционной
функции;
kk - вектор - столбец коэффициентов предсказания k-го порядка,
полеченный на k-ой итерации;
bik - i-тый элемент вектора коэффициентов предсказания, полученный
на k-ой итерации.
Производится обновление остальных коэффициентов предсказания:
kk1 kk11 kk11bkk ,
(А.4)
где kk - перевернутый вектор - столбец коэффициентов предсказания
k-го порядка, полеченный на k-ой итерации.
41
Пересчитывается средний квадрат ошибки предсказания:
2
Ek Ek 1 1 bkk
(А.5)
При этом коэффициенты линейного предсказания определяются как:
an (np) , n 1, p
(А.6)
42
ПРИЛОЖЕНИЕ Б
Листинг для VAD на основе сравнения с энергетическим порогом
clc
clear
[X,Fs,bits]=wavread('путь_файла\имя_файла'); % загрузка файла
En=sum(X.^2);
N=(задать длину анализируемого отрезка);
H=(En/(length(X)/N));
sdv=5; % сдвиг окна
kol_vo_int=floor((length(X)-N)/sdv)+1;
i=0;
for n=1:kol_vo_int
x=X(n*sdv-(sdv-1):n*sdv-(sdv-1)+(N-1));
En_sh=sum(x.^2);
if En_sh<H
i=i+1;
Sh(i)=En_sh;
sr_Sh=mean(Sh);
H=(En/(length(X)/N))+sr_Sh;
Nomer(i)=n*sdv-(sdv-1);
end
end
k=1;
kod(k,1)=Nomer(1);
for i=1:length(Nomer)-1
if Nomer(i+1)-Nomer(i)>sdv
k=k+1;
kod(k,1)=Nomer(i+1);
kod(k-1,2)=Nomer(i);
end
end
kod(k,2)=length(X); % кодовая книга, содержащая границы пауз
43
ПРИЛОЖЕНИЕ В
Листинг этапа обучения для VAD на основе коэффициентов
линейного предсказания
clc
clear
[X,Fs,bits]=wavread('путь_файла\имя_файла'); % загрузка файла
N=128;
p=15;
for nn=1:30000;
sdv=1;
x=X(1+sdv*(nn-1):N+sdv*(nn-1));
for k=0:p
s=0;
for m=1:(N-k)
s=s+(x(m))*(x(m+k));
end
RR(k+1)=s;
end
for k=1:p+1
R(k)=RR(k)/RR(1);
end
clear k s m
E(1)=R(1);
ka(1)=R(2)/E(1);
al(1,1)=ka(1);
for i=2:p
E(i)=(1-ka(i-1)^2)*E(i-1);
s=0;
for j=1:(i-1)
s=s+al(i-1,j)*R(i-j+1);
end
ka(i)=(R(i+1)-s)/E(i);
al(i,i)=ka(i);
for j=(i-1):-1:1
al(i,j)=al(i-1,j)-ka(i)*al(i-1,i-j);
end
end
clear E i s j ka R
for i=1:p
44
alfa(i)=al(p,i);
end
clear i al
for i=0:p
Aa=0;
for k=1:(p-i)
Aa=Aa+(alfa(k))*(alfa(i+k));
end
A(i+1)=Aa;
end
clear Aa i k
s=0;
ss=0;
for i=1:p
s=s+A(i+1)*(RR(i+1)/RR(1));
ss=ss+A(i+1)*RR(i+1);
end
Df(nn)=A(1)*RR(1)+2*s;
E(nn)=A(1)*RR(1)+2*ss;
for i=1:length(Df)-1
Dff=abs(Df(i+1)-Df(i));
end
clear s ss
end
Df=max(Dff) %пороговое значение разницы автокорреляции сигнала
E=max(E) % пороговое значение остаточной энергии
45
ПРИЛОЖЕНИЕ Г
Листинг для VAD на основе коэффициентов линейного
предсказания
clc
clear
N=256;
Df_h=(пороговое значение);
E_h=(пороговое значение);
p=8;
Df1=(сначала вычислить Df1 для первого отрезка анализа. Вычисляется
как Df2 при nn=1);
[X,Fs,bits]=wavread('путь_файла\имя_файла'); % загрузка файла
Y=zeros(1,length(X));
for nn=2:floor(length(X)/N)
x=X(nn*N-(N-1):nn*N);
for k=0:p
s=0;
for m=1:(N-k)
s=s+(x(m))*(x(m+k));
end
RR(k+1)=s;
End
for k=1:p+1
R(k)=RR(k)/RR(1);
end
clear k s m
E(1)=R(1);
ka(1)=R(2)/E(1);
al(1,1)=ka(1);
for i=2:p
E(i)=(1-ka(i-1)^2)*E(i-1);
s=0;
for j=1:(i-1)
s=s+al(i-1,j)*R(i-j+1);
end
46
ka(i)=(R(i+1)-s)/E(i);
al(i,i)=ka(i);
for j=(i-1):-1:1
al(i,j)=al(i-1,j)-ka(i)*al(i-1,i-j);
end
end
clear E i s j ka Ry
for i=1:p
alfa(i)=al(p,i);
end
clear i al
for i=0:p
Aa=0;
for k=1:(p-i)
Aa=Aa+(alfa(k))*(alfa(i+k));
end
A(i+1)=Aa;
end
clear Aa i k
s=0;
ss=0;
for i=1:p
s=s+A(i+1)*(RR(i+1)/RR(1));
ss=ss+A(i+1)*RR(i+1);
end
Df2=A(1)*RR(1)+2*s;
E=A(1)*RR(1)+2*ss;
clear s ss
if abs(Df2-Df1)>Df_h
Y(nn*N-(N-1):nn*N)=1;
else if E>E_h
Y(nn*N-(N-1):nn*N)=1;
else Y(nn*N-(N-1):nn*N)=0;
end
end
Df1=Df2;
end
Y – кодовая книга, состоящая из {0} {1}, где {0} кодируется пауза, а
{1} – активная речь
47
ПРИЛОЖЕНИЕ Д
Листинг для обнаружения пауз на основе субполосного анализа
clc
clear
close all
%%
[X,Fs,bits]=wavread('путь_файла\имя_файла'); % загрузка файла
X=X';
R=% ‘колличество интервалов’;
N=128; % длина отрезка
u=[0:pi/R:pi];
for r=1:R
for i=1:N
for k=1:N
if i~=k
A(i,k,r)=(sin(u(r+1)*(i-k))-sin(u(r)*(i-k)))/(pi*(i-k));
else A(i,k,r)=(u(r+1)-u(r))/pi;
end
end
end
end
n1='отсчёт начала паузы'
n2='отсчёт конец паузы'
pause=X(n1:n2);
k=floor((length(pause))/N);
for i=1:k
R_pause=pause(N*(i-1)+1:N*i);
for r=1:R
P_pause(i,r)=R_pause*A(:,:,r)*R_pause';
end
end
Ps_pause=sum(P_pause)/k;
for i=1:k
for r=1:R
S_pause(i,r)=P_pause(i,r)./Ps_pause(r);
end
Sm_pause(i)=max( S_pause(i,:));
end
S=sum(Sm_pause)/k;
D=sqrt(sum(Sm_pause.^2)/k-S^2);
48
alpha=0.1; % вероятность тревоги
m=0; a=2;
h=S+D/a*sqrt(alpha);
beta=0;
for i=1:k
b=Sm_pause(i)-h;
if b>0
beta = beta+1;
end
end
while abs(alpha-beta)>alpha
if alpha<beta
a=(1-alpha*a)*a;
elseif alpha>beta
a=(1+alpha*a)*a;
end
h=S+D/a*sqrt(alpha);
beta=0;
for i=1:k
b=Sm_pause(i)-h;
if b>0
beta = beta+1;
end
end
end;
s1=0;
k=floor((length(X))/N);
for i=1:k
R_sign=X(N*(i-1)+1:N*i);
for r=1:R
P_sign(i,r)= R_sign*A(:,:,r)* R_sign';
S_sign(i,r)=P_sign(i,r)./Ps_pause(r);
end
Sm_sign(i)=max(S_sign(i,:));
if Sm_sign(i)>h
XX(N*(i-1)+1:N*i)=X(N*(i-1)+1:N*i);
else
XX(N*(i-1)+1:N*i)=zeros(1,N);
s1=s1+1;
M(s1,1)=N*(i-1)+1;
M(s1,2)=N*i;
end
end
49
ПРИЛОЖЕНИЕ Е
Результаты работы метода VAD на основе сравнения с энергетическим
порогом при изменении параметров.
0.25
сигнал во временной области
кодированные паузы
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
5
6
время, отсчёты
7
8
9
10
4
x 10
Рисунок Е.1 А – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное во временной области при N=128 отсчётов
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Е.1 Б – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности при
N=128 отсчётов
50
0.25
сигнал во временной области
кодированные паузы
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
5
6
время, отсчёты
7
8
9
10
4
x 10
Рисунок Е.2 А – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное во временной области при N=128 отсчётов,
H=K∙Pср (К=0,5)
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Е.2 Б – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности при
N=128 отсчётов, H=K∙Pср (К=0,5)
51
0.25
сигнал во временной области
кодированные паузы
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
5
6
время, отсчёты
7
8
9
10
4
x 10
Рисунок Е.3 А – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное во временной области при N=128 отсчётов,
H=K∙Pср (К=5)
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Е.3 Б – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности при
N=128 отсчётов, H=K∙Pср (К=5)
52
0.25
сигнал во временной области
кодированные паузы
0.2
0.15
амплитуда сигнала
0.1
0.05
0
-0.05
-0.1
-0.15
-0.2
0
1
2
3
4
10
9
8
7
6
5
время, отсчёты
4
x 10
Рисунок Е.4 А – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное во временной области при N=256 отсчётов,
H=K∙Pср (К=5)
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Е.4 Б – Кодирование пауз методом VAD на основе сравнения с
энергетическим порогом, представленное в виде двоичной последовательности при
N=256 отсчётов, H=K∙Pср (К=5)
53
ПРИЛОЖЕНИЕ Ж
Результаты работы метода VAD на основе коэффициентов линейного
предсказания.
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.1 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=256, p=10)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.1 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=256, p=10)
54
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
5
4
время, отсчёты
3
2
1
9
8
7
6
4
x 10
Рисунок Ж.2 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=256, p=15)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.2 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=256, p=15)
55
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
2
1
3
5
4
время, отсчёты
6
9
8
7
4
x 10
Рисунок Ж.3 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=256, p=20)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.3 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=256, p=20)
56
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
5
4
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.4 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=128, p=8)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.4 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=128, p=8)
57
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.5 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=128, p=10)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.5 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=128, p=10)
58
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.6 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=128, p=15)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.6 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=128, p=15)
59
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.7 А – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное во временной области (N=128, p=20)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок Ж.7 Б – Кодирование пауз методом VAD на основе коэффициентов
линейного предсказания, представленное в виде двоичной последовательности
(N=128, p=20)
60
ПРИЛОЖЕНИЕ З
Результаты работы метода обнаружения пауз на основе субполосного
анализа при изменении параметров.
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.1 А – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=32)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.1 Б – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=32), представленное в виде двоичной
последовательности
61
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.2 А – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=64)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.2 Б – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=256, R=64), представленное в виде двоичной
последовательности
62
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.3 А – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=16)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.3 Б – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=16), представленное в виде двоичной
последовательности
63
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.4 А – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=32)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.4 Б – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=32), представленное в виде двоичной
последовательности
64
0.3
сигнал во временной области
кодированные паузы
0.25
0.2
амплитуда сигнала
0.15
0.1
0.05
0
-0.05
-0.1
-0.15
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.5 А – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=64)
1.2
границы сегментов, отобранные вручную
границы сегментов, найденные алгоритмом
1
0.8
0.6
0.4
0.2
0
1
2
3
4
5
время, отсчёты
6
7
8
9
4
x 10
Рисунок З.5 Б – Кодирование пауз методом обнаружения пауз на основе
субполосного анализа (N=128, R=64), представленное в виде двоичной
последовательности
65
Магистерская
диссертация
выполнена
мной
совершенно
самостоятельно. Все использованные в работе материалы и концепции из
опубликованной научной литературы и других источников имеют ссылки на
них.
«___» ________________ _____ г.
__________________________
(подпись)
_____________________
(Ф.И.О.)
Отзывы:
Авторизуйтесь, чтобы оставить отзыв