Санкт-Петербургский государственный университет
Прикладная математика и информатика
Кафедра теоретической кибернетики
Жеребцов Александр Юрьевич
Распознование звуковых сигналов в
микрофонном массиве
Бакалаврская работа
Научный руководитель:
д. ф.-м. н., профессор Барабанов А. Е.
Рецензент:
к. ф.-м. н., доцент. Бондарко В. А.
Санкт-Петербург
2016
SAINT-PETERSBURG STATE UNIVERSITY
Applied Mathematics and Informatics
Chair of theoretical cybernetics
Alexander Zherebtsov
Recognition of sound signals in microphone
array
Bachelor’s Thesis
Scientific supervisor:
professor Andrey Barabanov
Reviewer:
docent Vladimir Bondarko
Saint-Petersburg
2016
Оглавление
Введение
4
1. Постановка задачи
5
2. Звуковая волна
6
3. Определение расположения по зашумленному сигналу
7
4. Решение системы
9
5. Матрица ковариации ошибки
10
6. Свойства микрофонов
12
7. Алгоритм
16
Заключение
19
Список литературы
20
3
Введение
С развитием робототехники всё чаще встают задачи локализации
и распознавания объектов по данным, полученным при помощи различного оборудования и датчиков. В данной работе рассматривается
задача локализации источника звука, в частности, определение расположения говорящего человека. Подобная задача решается в человеческом мозгу при определении направления на источник звука. Используя больше чем два устройства для приема и обработки звука, имеется
возможность получить больше информации о расположении. В данном
случае, в качестве оборудования для проведения экспериментов используется массив из четырех микрофонов, а также внешняя звуковая карта
с возможностью записи одновременно необходимого количества аудио
потоков. При этом сам звуковой сигнал проходит стадию дискретизации и оцифровки, и в конечном счете представляется в виде массива
числовых данных с плавающей запятой. Полученный массив обрабатывается при помощи специально написанной программы для локализации источника. Ключевой особенностью этой работы является то, что
при решении задачи принимаются во внимание искажения, вносимые
при записи, связанные с характеристиками используемых микрофонов.
4
1. Постановка задачи
Имеется 4 конечные последовательности чисел S (1) , S (2) , S (3) , S (4) длинны n. Все числа в последовательностях не превышают по модую единицы. Каждая из последовательностей представима в виде:
S (i) = M ic(U (i) )
U (i) (k) = V (k − δi ) + ρi (k),
где преобразование M ic(U ) соответствует выходу некоторой дискретной линейной стационарной системы H при подаче на вход сигнала U .
Кроме того известны 4 вектора p1 , p2 , p3 , p4 Требуется найти неизвестные параметры δi и найти вектор X, минимизирующий норму невязки
для системы
||X − p1 || − ||X − p2 || = δ1 − δ2
||X − p1 || − ||X − p3 || = δ1 − δ3
||X − p || − ||X − p || = δ − δ
1
4
1
4
||X − p2 || − ||X − p3 || = δ2 − δ3
||X − p2 || − ||X − p4 || = δ2 − δ4
||X − p || − ||X − p || = δ − δ
3
4
3
4
5
2. Звуковая волна
Звуковую волну можно рассматривать как пример колебательного
процесса. В воздухе скорость распространения звуковых колебаний варьируется от 320 до 350 метров в секунду в зависимости от температуры
и давления. Одной из характеристик звуковой волны является звуковое давление, определяемое как избыточное давление, возникающее в
среде при прохождении через неё звуковой волны. При отдалении от
источника звука один и тот же сигнал будет воспринят микрофонами
по-разному. В идеальном случае сигнал придет с задержкой, связанной
с конечностью скорости распространения волны.
Таким образом, если значение звукового давления в точке на расстоянии d1 от источника, как функцию от времени, определить за S(t),
то значение давления в точке на расстоянии d2 можно записать в виде
αS(t + (d1 − d2 )v), где v - скорость звука в воздухе.
В реальности на вид звукового сигнала влияют волны, отраженные
от окружающих предметов и стен, а также внешние шумы. Величина
α не является постоянной, а зависит от спектра сигнала и от свойств
окружающей среды. Помимо того, при записи сигнала при помощи микрофона на результат будут влиять характеристики микрофона и звукозаписывающего оборудования.
6
3. Определение расположения по зашумленному сигналу
В данной работе рассматривается метод определения положения источника звука, основанный на расчете разницы расстояний от источника до каждого из микрофонов. Вначале рассмотрим ситуацию, в которой микрофоны не вносят никаких искажений в полученный сигнал.
Пусть U (1) - сигнал полученный от первого микрофона, а U (2) - от
второго микрофона. Разобьем сигналы на составляющие:
U (i) (k) = α(i) V (k − δi ) + ρ(i) (k),
V - Исходный сигнал
ρ(i) — внешние шумы, предполагаемые малыми по амплитуде и слабо
коррелированными с основным сигналом.
В этом случае взаимнокорреляционная функция определяется как
∑
R12 (∆12 ) = k U (1) (k) · U (2) (k + ∆12 )
∑
R12 (∆12 ) = α(1) α(2) k V (k − δ1 ) · V (k − δ2 + ∆12 )+
(
)
∑
+ k ρ(1) (k) α(2) V (k − δ2 + ∆12 ) + ρ(2) (k + ∆12 ) +
∑
+ k ρ(2) (k + ∆12 )α(1) V (k − δ1 )
(1)
При данных предположениях взаимнокорреляционная функция от
двух различных сигналов будет достигать своего максимального значения при сдвигах близких к сдвигам, которые соответствуют задержке
в приеме оригинальных сигналов между микрофонами. А именно, при
∆ij = δj − δi
Отклонения при определении сдвига будут зависеть от характера
шума. Так, например, в случае с белым шумом отклонение сдвига можно рассматривать как случайную величину.
Зная сдвиг легко посчитать разницу в расстоянии соответствующую
этому сдвигу:
∆ij
δij =
v,
F
7
∆ij - сдвиг
v - скорость звука в воздухе.(340 м/с)
F - частота дискретизации звукового сигнала.
Распишем систему уравнений, связывающую разницу в расстоянии
между микрофонами с положением источника:
||X − p1 || − ||X − p2 || = δ12
||X − p1 || − ||X − p3 || = δ13
||X − p || − ||X − p || = δ
1
4
14
(2)
||X
−
p
||
−
||X
−
p
||
=
δ
2
3
23
||X − p2 || − ||X − p4 || = δ24
||X − p || − ||X − p || = δ
3
4
34
pi - положение i-го микрофона в пространстве.
X - искомое положение источника.
Геометрическое место точек каждого из уравнений представляет собой двуполосный гиперболоид в трехмерном пространстве. Точка, удовлетворяющая системе уравнений, должна лежать на пересечении этих
гиперболоидов. Таким образом, данная система переопределена, нелинейна и более того, линеаризованная система может быть плохо обусловленной. В связи с этим нет смысла искать точное решение. Вместо
этого предлагается рассматривать задачу минимизации квадрата нормы вектора невязки.
8
4. Решение системы
Для решения задачи определения положения, требуется найти решение системы (2). Данная система переопределена и может не иметь
точного решения. В связи с этим приходится решать задачу минимизации функционала от вектора невязки предыдущей системы, а именно[1]:
F =
3 ∑
4
∑
(||X − p(i) || − ||X − p(j) || − δij )2
i=1 j=i+1
Градиент функционала F равен
Fx = 2
3 ∑
4
∑
i=1 j=i+1
Fy = 2
3 ∑
4
∑
i=1 j=i+1
Fz = 2
3 ∑
4
∑
i=1 j=i+1
(
(
(
(i)
X x − px
||X − p(i) ||
−
(j)
X x − px
||X − p(j) ||
(i)
(j)
X y − py
X y − py
−
||X − p(i) || ||X − p(j) ||
(i)
Xz − p z
||X − p(i) ||
−
(j)
X z − pz
||X − p(j) ||
)
· (||X − p(i) || − ||X − p(j) || − δij )
)
· (||X − p(i) || − ||X − p(j) || − δij )
)
· (||X − p(i) || − ||X − p(j) || − δij )
Приравнивая к нулю градиент, получим необходимое условие для
локального минимума функционала. У данной системы уравнений также нет аналитического решения, однако мы можем использовать градиент при решении задачи численными методами.
При решении задачи минимизации функционала предлагается использовать градиентные методы. Стоит учитывать, что данный функционал может иметь несколько локальных минимумов, а линеаризованная система может оказаться плохо обусловленной(в чем легко убедиться, рассмотрев систему в точке отдаленной от точек p(i) ).
Для сведения к минимуму влияния данных факторов, при практическом решении данной задачи градиентным методом начальные данные были выбраны из сетки с целью минимизации начального значения
функционала. А именно, в качестве начальных данных последовательно выбирались точки равномерно расположенные в узлах сетки. Размеры сетки связаны лишь с ограничением на расположение источника.
9
5. Матрица ковариации ошибки
Введем обозначения
||X − p1 || − ||X − p2 ||
G(X) =
||X − p1 || − ||X − p3 || ,
||X − p1 || − ||X − p4 ||
δ12
δ = δ12
δ12
(3)
Тогда подсистему системы (2) можно записать в виде
F (X) = δ.
(4)
Пусть X0 - точное решение системы (4) при δ = δ0 . Пусть X1 - точное
решение системы (4) при δ = δ1 . В таком случае выполнено равенство
G(X1 ) − G(X0 ) = δ1 − δ0 .
Ввиду непрерывности G, в малой окресности X0 будет выполнено
G′ (X0 ) · (X1 − X0 ) = δ1 − δ0 + o(|X1 − X0 |).
За исключением пограничных случаев F ′ (X0 ) не вырождена и следовательно:
X1 − X0 ≈ (G′ (X0 ))−1 · (δ1 − δ0 ).
Таким образом, если рассматривать δ1 − δ0 в качестве нормально
распределенной случайной величины с нулевым математическим ожиданием и ковариационной матрицей Q, то отклонение X1 − X0 будет
также распределено нормально с нулевым математическим ожиданием
и матрицей ковариации
G′ (X0 ))−1 Q(G′ (X0 ))−1 )T .
При тех же предположениях, отклонение в расстоянии по направлению на источник будет нормально распределено с дисперсией
X0T G′ (X0 ))−1 Q(G′ (X0 ))−1 )T X0
.
|X0 |2
10
Отклонение угла в плоскости (x, y) в первом приближении будет
распределено как
(
)
v
2arctg
,
2|X0 |
где
v ∼ N (0, XNT G′ (XN ))−1 Q(G′ (X0 ))−1 )T XN /|XN |2 ),
XN = (−X 0y X0x 0)T .
Разница в отклонении угла перпендикулярного плоскости (x, y) будет распределена как
)
(
u
,
2arctg
2|X0 |
где
u ∼ N (0, XNT 2 G′ (XN ))−1 Q(G′ (X0 ))−1 )T XN 2 /|XN 2 |2 ),
XN 2 = XN × X0 .
Таким образом, все интересующие нас характеристики будут иметь
распределения зависящие как от положения источника в пространстве,
так и от ошибки в определении разницы расстояний.
11
6. Свойства микрофонов
В ходе работы была проведена серия экспериментов. На вход динамика подавался сигнал вида
A(t) sin(2πf t)
где A(t) = 1 в середине промежутка и линейно приближается к нулю на
границе. При этом сигнал на выходе микрофона ожидаемо представим
в виде
B(t) sin(2πf t + ϕ)
Установив соответствие между ожидаемым и реальным сигналом,
находится коэффициенты B, ϕ [2]. Зная эти коэффициенты можно выразить значение передаточной функции системы динамик - воздушная
среда - микрофон в точке f следующим образом:
H(f ) =
B iϕ
e
A
Эксперимент был проведен для частот f от 110 Гц до 3520 Гц, для
каждого из четырех микрофонов и для различных положений динамика относительно микрофонов.
Таким образом, было построено приближение передаточной функции для каждого из микрофонов на указанных промежутках частот.[3]
Стоит отметить, что при использовании качественного динамика его
влияние на передаточную функцию будет не значительным и его можно
исключить из рассмотрения.
Зная передаточную функцию и полученный с микрофона сигнал
мы можем, воспользовавшись прямым и обратным преобразованием
Фурье, получить сигнал, который был бы ближе к исходному. Преобразованный таким образом сигнал будет содержать в себе меньше отклонений связанных со свойствами микрофонов и потому может быть
использован для более точного определения местоположения.
12
Amplitude
0.4
0.3
0.2
0.1
0
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
Amplitude ratio
1.6
1.4
1.2
1
0.8
Amplitude ratio
2
1.5
1
0.5
Amplitude ratio
1
0.9
0.8
0.7
Amplitude ratio
0.8
0.7
0.6
0.5
0.4
Рис. 1: Амплитудно-частотная характеристика.
13
2
Phase
1.5
1
0.5
0
−0.5
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
0
500
1000
1500
2000
Frequency(Hz)
2500
3000
3500
4000
Phase difference
0.2
0.1
0
−0.1
Phase difference
−0.2
0
−0.1
−0.2
−0.3
−0.4
Phase difference
0.2
0.1
0
−0.1
Phase difference
−0.2
0.3
0.2
0.1
0
−0.1
Рис. 2: Фазо-частотная характеристика.
14
На первых графиках на страницах изображены соответственно графики среднего, по четырем микрофонам, значения амплитудно-частотной
и фазо-частотной характеристик. Ниже изображены графики отношения амплитуд для каждого из микрофонов к среднему значению для
амплитудно-частотной характеристики и разницы фаз для фазо-частотной
характеристики. Как видно из графиков амплитудно-частотной характеристики, сдвиг фазы для выходного сигнала может варьироваться до
половины периода. Этот сдвиг может оказать существенное влияние на
взаимнокорреляционную функцию сигналов. Это в свою очередь влияет на точность локализации источника звука.
Стоит отметить, что не смотря на то, что в экспериментах использовались одинаковые модели микрофонов, на графиках явно видны их
различия. Так по графикам фазо-частотной характеристики можно заметить разницу до десятых долей периода, что пусть и не так сильно,
но повлияет на результаты последующих вычислений. По графикам
амплитуд также можно увидеть заметные различия между микрофонами, что оказывает влияние на то, какой вклад будут вносить каждый
из участков спектра входного сигнала на конечный результат.
15
7. Алгоритм
- Воспроизвести специальный файл на качественном оборудовании, записав полученный результат на используемые микрофоны.
- Обработать полученные записи, получив на выходе амплитудно-фазовую
частотную характеристику для записанных частот.
На этом действия необходимые для определения свойств микрофонов заканчиваются. Далее следует обработка сигнала с микрофонов и
его локализация.
- Взять преобразование Фурье от входного сигнала.
- Поделить на передаточную функцию соответствующего микрофона.
- Взять обратное преобразование от преобразованного сигнала.
- Посчитать взаимнокорреляционную функцию для каждой пары микрофонов и найти сдвиг её максимизирующий.
- Посчитать разницу расстояний до источника для каждого микрофона, основываясь на сдвиге.
- Основываясь на разнице расстояний найти положение источника.
16
z
ϕ
∆
b
∆
∆ϕ
cϕ
∆
-100 0
20
-90
80
87
9
5
2
-85
-50
20
-60
87
91
11
15
3
-50
-85
20
-30
79
81
20
24
4
0
-100
20
0
98
99
48
21
5
-50
-85
20
30
88
87
1
5
6
85
-50
20
60
66
88
3
3
7
100
0
20
90
32
52
3
5
8
-100 0
20
-90
78
87
8
5
9
-85
-50
20
-60
88
89
10
13
10
-50
-85
20
-30
84
90
28
26
11
0
-100
20
0
51
83
3
2
12
-50
-85
20
30
77
86
6
1
13
85
-50
20
60
80
64
22
31
14
100
0
20
90
82
80
1
1
15
-100 0
20
-90
83
88
20
22
16
-85
-50
20
-60
88
92
7
23
17
-50
-85
20
-30
90
95
8
30
18
0
-100
20
0
100
100
21
46
19
-50
-85
20
30
86
88
1
10
20
85
-50
20
60
71
80
4
2
21
100
0
20
90
59
76
6
4
22
-100 0
20
-90
77
87
8
5
23
-85
-50
20
-60
86
86
1
1
24
-50
-85
20
-30
76
86
13
6
25
0
-100
20
0
77
83
1
1
26
-50
-85
20
30
90
91
1
7
27
85
-50
20
60
71
74
13
13
28
100
0
20
90
24
77
2
2
№
x
1
avarage
y
76.71 84.53 9.96
Таблица 1. Результаты экспериментов.
17
11.75
b - ошибки в определении
Здесь (x, y, z) - положение диктора. ∆, ∆
положения для алгоритма учитывающего свойства микрофонов и для
cϕ - ошибки в определении направления на
прямого алгоритма. ∆ϕ , ∆
источник звука (угловой координаты в плоскости (x,y)) для указанных
алгоритмов.
Все значения связанные с положением приведены в сантиметрах, а
углы в градусах.
Как видно из таблицы, в большинстве случаев полученный алгоритм
заметно точнее определяет расположение источника звука. Точность
определения направления на источник в среднем также была увеличена.
Стоит отметить большое значение модуля ошибки при определении положений для обоих алгоритмов. Это можно объяснить явлением
реверберации, когда отраженные от предметов и стен колебания вносят существенные изменения на полученный микрофоном сигнал. Также стоит учитывать погрешности при определении точки максимума
взаимнокорреляционной функции, которые также оказывают заметное
влияние на ошибку в определении положения при значительном отдалении источника от микрофонов.
18
Заключение
В результате работы было проведено множество экспериментов с записью звуковых сигналов при помощи специально установленных микрофонов и дополнительного оборудования. Был реализован алгоритм
для определения положения источника звука, а также разработаны способы улучшения результатов его работы. Полученный в итоге алгоритм
может найти широкое применение как в системах определения источников звука, так и в системах требующих определения источников различных колебаний.
19
Список литературы
[1] Benesty, Sondhi, Huang. Springer Handbook of Speech Processing. Part
1 | 51. –– Springer, 2008. –– P. 1056.
[2] А.В.Опенгейм, Р.В.Шафер. Цифровая обработка сигналов / Под
ред. С.Я. Шац. –– М. : Связь, 1979. –– С. 67.
[3] Рабинер Л., Гоулд Б. Теория и применение цифровой обработки сигналов / Под ред. С.Я. Шац. –– М. : Мир, 1979. –– С. 30.
20
Отзывы:
Авторизуйтесь, чтобы оставить отзыв