Огляд алгоритмів аудиоаналитики

Розробки Синезис не обмежуються однією лише видеоаналитикой. Ми займаємося і аудиоаналитикой. Ось про неї-то ми і хотіли сьогодні вам розповісти. З цієї статті ви дізнаєтеся про найбільш відомих аудиоаналитических системах, а також алгоритми та їх специфіки. В кінці матеріалу — традиційно — список джерел та корисних посилань, в тому числі аудиобиблиотек.

Обережно: стаття може довго грузиться — багато картинок.
Автор: Михайло Антоненко.

У той час як відеоаналіз став стандартною функцією багатьох охоронних відеокамер, вбудована аудиоаналитика продовжує залишатися досить рідкісним явищем, незважаючи на наявність як самого аудіоканалу в пристроях, так і доступних обчислювальних потужностей для обробки звуку [1]. Тим не менш, аудиоаналитика володіє деякими перевагами у порівнянні з видеоаналитикой: вартість мікрофонів і їх обслуговування значно дешевше, ніж відеокамер; при роботі системи в режимі реального часу потік даних аудіоінформації значно менше за обсягом, ніж потік даних з відеокамер, що пред'являє більш лояльні вимоги до пропускної здатності каналу передачі даних. Системи аудиоаналитики можуть бути особливо затребувані для міського спостереження, де можна автоматично почати транслювати живе відео на поліцейський пульт з місця вибуху і стрільби. Технології аудиоаналитики також можуть використовуватися при вивченні відеозапису і визначенні подій. Зі зростанням обізнаності про можливості застосування даних систем аудиоаналитики буде тільки розширюватися. Давайте почнемо з основ:

Існуючі рішення в області аудиоаналитики
Мабуть, найвідомішою системою є ShotSpotter [2], лідер в США при детектуванні пострілів з вогнепальної зброї в міських умовах. В найбільш небезпечних районах встановлені спрямовані мікрофони (на стовпах, будинках, інших високий спорудах), які вловлюють звуки міського фону. У разі позитивної ідентифікації пострілу, інформація з GPS-координатами конкретного мікрофона передається на центральний комп'ютер, де проводиться додатковий аналіз звуку, щоб відсіяти можливі помилкові спрацьовування, ніби пролітає вертольота або, наприклад, вибуху петарди. Якщо постріл підтверджується, патруль виїжджає на місце. Система, встановлена у Вашингтоні ще в 2006 році, за минулі роки локалізувала 39000 пострілів з вогнепальної зброї, і поліція змогла швидко відреагувати в кожному конкретному випадку. [3]



Серед постачальників послуг аудиоаналитики в РФ можна виділити «SistemaSarov» [4]. Система акустичного моніторингу дозволяє в автоматичному режимі виділяти в звуковому потоці акустичні артефакти, виконувати їх попередню класифікацію (за типом тривожної події), а у разі оснащення термінального пристрою GPS/ГЛОНАСС сигналу, визначати координати події і зберігати події в архів. [5]



Проект «AudioAnalytics» [6], що базується у Великобританії, надає відразу кілька рішень для різних варіантів використання. Архітектура пропонованих рішень має наступний вигляд: програма CoreLogger, що працює на пристрої кінцевого користувача, що дозволяє приймати та відображати/зберігати тривожні події. Працює у зв'язці з іншою частиною загальної системи — Sound Packs — що являє собою не що інше як набір різних модулів аудиоаналитики. Основні можливості даних модулів являють собою детектування наступних аудиособытий:

  • агресія (розмова на підвищених тонах, крик);
  • сигналізація автомобілів;
  • разбивающееся скло;
  • пошук ключових слів («міліція», «допоможіть» і т. д.);
  • постріли;
  • крик/плач дитини.
Додатково надається частина системи під назвою Core Trainer, яка на підставі поданої їй на вхід набору аудіосигналів, виділить найбільш відрізняються (виділяються) частини і сформує новий патерн для SoundPacks.

Методи та підходи до детектуванню і розпізнавання аудиособытий різних типів (постріл, розбите скло, крик)
У якості прикладу вихідних даних представлені спектрограми трьох різних типів аудиособытий:
1. Набір пострілів.


2. Розбите скло


3.Крик


Відповідні аудіозаписи викачані з бази аудіоданих [7]. Серед інших джерел вихідних аудіоданих можна відзначити бази даних[8] [9] [10] [11].
Задача розпізнавання різних тривожних аудиособытий підрозділяється на 2 підзадачі [12]:

  • детектування (виділення) різких імпульсних сигналів з фонового шуму в потоці аудіо даних;
  • класифікація (розпізнавання) детектованого сигналу до одного з типів аудіо подій.


Детектування імпульсних виділяються аудиособытий
Більшість методів ґрунтуються на визначенні потужності для набору послідовних неперекрывающихся блоків аудіо сигналу [13]. Потужність для k-го блоку сигналу, що складається з N відліків, визначається як




В якості прикладу наведено аудіосигнал з пострілом, що стався на позначці 4.6, а також набір значень потужностей для блоків з N=4000 відліків, що відповідає тривалості кожного блоку близько 90мс.
Різні методи відрізняються способом автоматичного детектування блоку, відповідного різкого імпульсному звуку:
на основі стандартного відхилення нормованих значень потужностей блоків;
на основі застосування медіанного фільтра для значень потужностей блоків;
по динамічному порогу для значень потужностей блоків.
Давайте розглянемо їх трохи докладніше:

Метод на основі стандартного відхилення нормованих значень потужностей блоків

Ключовим аспектом цього методу є нормування розглянутого набору значень потужності блоків до діапазону [0, 1]:



Далі обчислюється стандартне відхилення (дисперсія) отриманого набору значень:




У разі фонового шуму, значення блоків потужності будуть приблизно рівномірно розподілені в діапазоні [0-1] (видно на фото зліва). Так як при надходженні нового значення потужності для блоку аудіосигналу, відбувається перенормировка значень до зазначеного діапазону, то при настанні блоку зі значно більш високим рівнем потужності, значення стандартного відхилення істотно зменшиться порівняно з аналогічним значенням для набору попередніх фонових блоків потужності. Щодо зниження стандартного відхилення нижче порогового значення, можна автоматично детектувати блок з імпульсним сигналом.

Перевагою даного методу є його стійкість до зміни рівня шуму, а також можливість детектування повільно змінного сигналу, аналізуючи середнє значення нормованих блоків потужності.

Метод на основі використання медіанного фільтра

Основні етапи автоматичного детектування імпульсних виділяються сигналів з використанням медіанного фільтра представлені нижче. Приклад застосування медіанного фільтра порядку k до набору значень блоків потужностей представлений на малюнку нижче



Для детектування блоку з імпульсним подією застосовується умовний медіанний фільтр (conditional median filtering), який залишає початкове значення сигналу у випадку, якщо різниця між початковим відліком і медіанним значенням менше порогового значення, і медіанне значення у іншому випадку.




Обчисливши різницю між сигналом після застосування conditional median filter і зміщеним вихідним сигналом, можна автоматично виділити блок з подією імпульсним подією.

Метод на основі динамічного порогу для значень потужностей блоків

У цьому методі пропонується детектувати імпульсний сигнал використовуючи середнє значення набору потужностей блоків і середньоквадратичне відхилення в якості динамічного порога. Автоматичне детектування відбувається при перевищенні потужності чергового блоку порогового значення, що визначається як

th=par*std+m

Де par — параметр, що визначає чутливість алгоритму. Приклад застосування цього методу при значенні параметра par=3 представлений на наступному малюнку:



Розпізнавання аудиособытий
Загальна схема розпізнавання аудиособытий включає наступні етапи:



Буферизація з перекриттям

На першому етапі відбувається перетворення вихідного аудіо сигналу в набір фреймів з перекриттям:



Стадія попередньої обробки

Стадія попередньої обробки включає в себе, як правило, pre-emphasis фільтрацію і віконне зважування. Pre-emphasis обробка здійснюється за рахунок застосування КІХ-фільтра H(z)=1 — a / Z. Це необхідно для спектрального згладжування сигналу [14]. В такому випадку сигнал стає менш сприйнятливим до різних шумів, що виникають в процесі обробки.

Віконне зважування необхідно застосовувати у зв'язку з тим, що аудиофрейм обмежений у часі, тому при переході в частотну область буде відбуватися ефект просочування спектру бічних пелюсток, пов'язане з формою спектру функції прямокутного вікна (він має вигляд sin(x) / x). Тому, щоб зменшити вплив цього ефекту, застосовується зважування вихідного сигналу різного виду вікнами, з формою, відмінною від прямокутної. Відліки вхідної послідовності множаться на відповідну функцію вікна, що тягне за собою обнулення значень сигналу на краях вибірки. Як зважених функцій найчастіше виступають вікна Хеммінга, Блэкмэна, плоске, Кайзеля-Бесселя, Дольфа-Чебишева [15]. Спектральні характеристики деяких наведено нижче:



Витяг ознак

Існує кілька підходів до отримання дескрипторів (ознак) з аудіосигналу. Всі вони задаються загальною метою зменшити надмірність сигналу і виділити найбільш релевантну інформацію, і, в той же час, відкинути нерелевантную. Як правило, ознаки, що описують аудіосигнал з різних точок зору, комбінуються в один вектор ознак, на основі якого відбувається процес навчання і потім класифікації з використанням обраної навченої моделі. Далі будуть представлені найбільш популярні ознаки, що виділяються з аудіосигналу.
1. Статистика по тимчасовій області (Time-domain statistics)
  • ZCR (Zero crossing rate) — кількість перетинів осі часу аудіо сигналом [16].




  • Short time energy [17]- середнє значення енергії для аудіо кадру


  • Entropy of energy [18]


Розділивши кожен кадр на набір під-фреймів, обчислюється набір енергій для кожного подфрейма. Далі, нормуючи енергію кожного з подфреймов на енергію всього кадру, можна розглядати набір енергій як набір ймовірностей і обчислити інформаційну ентропію за формулою:


2. Статистика в частотній області (Frequency-domain statistic)

Spectral centroid [17]
Являє собою інтерпретацію «центра мас» спектра. Обчислюється як сума частот, зважених відповідними амплітудами спектру, поділена на суму амплітуд:



Де F[k] — амплітуда спектру, що відповідає k-му значенню частоти в спектрі ДПФ.

Потім отримане значення зручно отнормировать на максимальне значення частоти (Fs/2), в результаті діапазон можливих «центр мас» спектру буде лежати в діапазоні [0-1].
  • spread Spectrum [17] (також званий миттєвої шириною спектра/смугою пропускання).
Визначається як другий центральний момент:



Де fk — значення частот в DFT, F[fk] — значення амплітуд, SC — значення Spectral centroid



  • Audio Spectrum Flatness (ASF) [19]
Відображає відхилення потужності спектру сигналу від пологої форми. З точки зору людського сприйняття, характеризує ступінь тональності звукового сигналу.



  • Energy-band spectrum [20]
Простір частот розділяється на N смуг, після чого обчислюється енергія спектру в кожній смузі. Отримані значення беруться в якості ознак. По суті ознаки в такому випадку являють собою значення енергії спектра в «низькому дозволі».
  • Cepstral coefficients
Виходять на основі попередніх ознак шляхом переведення їх у кепстральное простір. Кепстр являє собою не що інше як «спектр логарифма спектру», замість перетворення Фур'є застосовують дискретне косинусне перетворення (DCT):




  • Spectral Entropy
Ентропія спектру для заданого кадру обчислюється аналогічним чином з ентропією енергії в тимчасовій області: частотна область спектру розділяється на N частотних подобластей, для кожної з яких розраховується частина всієї енергії спектра, що припадає на дану подобласть, а потім обчислюється інформаційна ентропія за аналогією з тимчасової областю.

  • Spectral flux [21]
Потік спектру — відображає, наскільки швидко змінюється енергія спектру, обчислюється на основі спектру на поточному та попередньому кадрі. Визначається як друга норма (Евклідова відстань) між двома нормализованными спектрами:

windowFFT = windowFFT / sum(windowFFT);
F = sum((windowFFT — windowFFTPrev).^2);

  • Spectral rolloff («завал» енергії) [22]
Визначається як відносна частота, в межах якої якої зосереджена певна частина всієї енергії спектра (задається в якості параметра):

countFFT -> c*totalEnergy
SR = countFFT/lengthFFT

Схематично представлено значення Spectral rolloff при с=0.95:



  • Ознаки, що відображають гармонійність аудіосигналу (harmonic ration, fundamental frequency) :


3. MFCC — Mel-frequency cepstral coefficients. (Хабраисточник [23])
Загальна схема отримання крейда-частотних кепстральных коефіцієнтів представлена наступною схемою [24].



Як було зазначено раніше, аудіосигнал поділяється на фрейми, проводиться pre-emphasis фільтрація і віконне зважування, виконується швидке перетворення Фур'є, далі спектр пропускається через набір трикутних фільтрів, розташованих рівномірно на крейду шкалою. Це призводить до більшої щільності фільтрів в області низьких частот і меншої щільності в області високих частот, що відображає чутливість сприйняття звукових сигналів людським вухом. Таким чином, основна інформація «знімається» з аудіо сигналу в області низьких частот, що є найбільш релевантною ознакою звукових сигналів (зокрема мовних). Далі відліки переводяться в кепстральное простір з допомогою дискретного косинусного перетворення (DCT).



Математичне опис:

Застосовуємо до сигналу перетворення Фур'є



Складаємо гребінку фільтрів, використовуючи віконну функцію



Для якої частоти f[m] отримуємо рівності



B(b) — перетворення значення частоти в мел-шкалу, відповідно,



Обчислюємо енергію для кожного вікна



Застосовуємо ДКП



4. LPC (Linear prediction coefficients)

В якості ознак виступають коефіцієнти, що пророкують сигнал на основі лінійної комбінації попередніх відліків. [25] По суті є коефіцієнтами КІХ-фільтра відповідного порядку:



Використовуються також при кодуванні мови (Linear Prediction Coding), оскільки показано, що добре апроксимують характеристики мовних сигналів.

У різних статтях досліджується вплив тих чи інших компонент вектора ознак на якість розпізнавання аудиособытий.

Постобробка ознак

Після отримання необхідних ознак сигналу для їх подальшого використання проводиться нормалізація ознак так, щоб кожен компонент вектора ознак мав середнє значення 0 і стандартне відхилення 1:



Часто застосовується техніку mid-term analysis [26], коли проводиться усереднення ознак по набору послідовних кадрів. Як правило, в якості інтервалу усереднення вибирається 1-10 секунд.



Як правило, розмірність вектора ознак виходить досить великий, що істотно впливає в подальшому на продуктивність процесу навчання. Ось чому в цьому випадку застосовуються добре відомі та теоретично вивчені методи скорочення розмірності вектора ознак (LDA, PCA та ін) [27].

Однією з переваг використання методів скорочення розмірності є здатність істотно збільшити швидкість процесу навчання за рахунок зменшення кількості ознак. Більше того, вибравши ознаки, що володіють найкращими дискримінаційними здібностями в окремий набір, можливо прибрати зайву нерелевантную інформацію, що підвищить точність роботи алгоритмів машинного навчання (таких як SVM та ін) [28]

Дані методи були порушені в матеріалі про розпізнавання осіб. Відмінність PCA і LDA методів полягає в тому, що метод PCA дозволяє скоротити розмірність вектора ознак за рахунок виділення незалежних компонент, максимальним чином покриває розкид по всім подіям.



У той час як LDA виділяє компоненти, що показують найкращі дискримінаційні здібності серед набору класів.



Як в PCA, так і в LDA, на етапі навчання розраховується матриця W, визначає лінійне перетворення вихідного вектора ознак у новий простір скороченою розмірності Y = WTX

Вибір класифікатора

Нарешті, останнім етапом є вибір класифікатора (навчальної моделі). Деякі дослідження в області аудионалитики при детектуванні вакансій аудіосигналів присвячені порівнянні точності розпізнавання при використанні різних моделей класифікаторів при різних типах аудиособытий. Відзначається, що використання ієрархічних класифікаторів істотно збільшує точність розпізнавання в порівнянні з використанням мультиклассовых класифікаторів. [29] [19]

Найбільш простим варіантом моделі розпізнавання є Байєсовський класифікатор, який заснований на обчисленні функції правдоподібності для кожного з класів, і на етапі розпізнавання подія відноситься до того класу, апостеріорна ймовірність якого максимальна серед усіх класів. На наступному малюнку показаний приклад класифікації для вектора ознак розмірності 2. Еліпси відцентровані щодо середніх значень, відповідних кожному з класів, червоні кордону представляють собою набір значень ознак, де класи еквівалентні.



У разі вибору ознак, що показують хороші дискримінаційні властивості, високий результат розпізнавання може бути досягнутий і з використанням байєсівських класифікаторів.

На відміну від класичного Байєсівського класифікатора, де для апроксимації кожного класу виступали параметри гауссівського розподілу, в якості функції щільності розподілу ймовірності у GMM (Gaussian Mixture Model) моделі виступає «суміш» з декількох гауссіан [19], параметри яких для кожного класу підбираються на етапі навчання з використанням EM (Expectation Maximization) алгоритму. Як видно з малюнка, що представляє результат класифікації трьох класів, область простору, відповідна кожному класу, являє собою більш складну форму, ніж еліпс, модель розпізнавання стала більш точною, відповідно, поліпшиться результат розпізнавання.



Серед недоліків цієї моделі можна відзначити високу чутливість до варіацій в навчальній вибірці даних при виборі великого числа гаусівських розподілів, що може призводити до процесу перенавчання.

В якості ще одного способу класифікації ознак, виділених з аудіосигналу, є SVM (Support Vector Machine) класифікатор [30], який переводить вихідні вектора ознак у простір з більшою розмірністю і знаходить максимально віддалений від розпізнаваних класів розділяє гіперплощину. В якості ядра можуть виступати не тільки лінійна функція, але і поліноміальна, а також RBF (radial-basis function) [31].



Перевагою даного класифікатора в тому, що на етапі навчання метод знаходить смугу максимальної ширина, що на етапі розпізнавання дозволить здійснити більш точну класифікацію Серед недоліків можна виділити чутливість до стандартизації даних і шумів.

ЗастосуванняHMM (Hidden Markov Model) [32] нейронних сеті[27] в якості класифікатора було розглянуто в нашому попередньому огляді алгоритмів розпізнавання осіб (Хабраисточник [33]).

Список літератури

[1] «http://www.secuteck.ru/articles2/videonabl/10-trendov-videonablyudeniya-2014po-versii-kompanii-ihs/,» [В Інтернеті].
[2] «http://www.shotspotter.com/,» [В Інтернеті].
[3] «http://habrahabr.ru/post/200850/,» [В Інтернеті].
[4] «http://sarov-itc.ru/,» [В Інтернеті].
[5] «http://sarov-itc.ru/docs/acoustic_monitoring_description.pdf,» [В Інтернеті].
[6] «http://www.audioanalytic.com/,» [В Інтернеті].
[7] «http://www.freesound.org/,» [В Інтернеті].
[8] «http://sounds.bl.uk/,» [В Інтернеті].
[9] «http://www.pdsounds.org/,» [В Інтернеті].
[10] «http://macaulaylibrary.org/,» [В Інтернеті].
[11] «http://www.audiomicro.com/,» [В Інтернеті].
[12] A. Dufaux, «Automatic Sound Detection And Recognition For Noisy Environment.».
[13] L. I. Freire, «Gunshot detection in noisy environments».
[14] F. Capman, «Abnormal audio event detection».
[15] Микулович, «Цифрова обробка сигналів,» [В Інтернеті].
[16] L. Gerosa, «SCREAM AND GUNSHOT DETECTION IN NOISY ENVIRONMENTS».
[17] C. Clavel, «EVENTS DETECTION FOR AN AUDIO-BASED SURVEILLANCE SYSTEM».
[18] A. Pikrakis, «GUNSHOT DETECTION IN AUDIO STREAMS FROM MOVIES BY MEANS OF DYNAMIC PROGRAMMING AND BAYESIAN NETWORKS».
[19] S. Ntalampiras, «ON ACOUSTIC SURVEILLANCE OF HAZARDOUS SITUATIONS».
[20] M. F. McKinney, «AUTOMATIC SURVEILLANCE OF THE ACOUSTIC ACTIVITY IN OUR LIVING».
[21] Conte D., «An ensemble of rejecting classifiers for anomaly detection of audio events».
[22] G. Valenzise, «Scream and Gunshot Detection and Localization for Audio-Surveillance Systems».
[23] «http://habrahabr.ru/post/140828/,» [В Інтернеті].
[24] I. Paraskevas, «Feature Extraction for Audio Classification of Gunshots Using the Hartley Transform».
[25] W. Choi, «Selective Background Adaptation Based Abnormal Acoustic Event Recognition for Audio Surveillance».
[26] T. Giannakopoulos, «Realtime depression estimation using mid-term audio features,» [В Інтернеті].
[27] J. Portˆelo, «NON-SPEECH, AUDIO EVENT DETECTION».
[28] B. Uzkent, «NON-SPEECH ENVIRONMENTAL SOUND CLASSIFICATION USING SVMS WITH A NEW SET OF FEATURES».
[29] P. K. Atrey, «AUDIO BASED EVENT FOR DETECTION MULTIMEDIA SURVEILLANCE».
[30] A. Kumar, «AUDIO EVENT DETECTION FROM ACOUSTIC UNIT OCCURRENCE PATTERNS».
[31] T. Ahmed, «IMPROVING EFFICIENCY AND RELIABILITY OF GUNSHOT DETECTION SYSTEMS».
[32] M. Pleva, «Automatic detection of audio events indicating threats».
[33] «http://habrahabr.ru/company/synesis/blog/238129/,» [В Інтернеті].

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.