Як я можу автоматично класифікувати піки сигналів, виміряні в різних положеннях?


10

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

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

sound 1: sample 17 upper plot, sample 19 lower plot,
sound 2: sample 40 upper plot, sample 38 lower plot

Для цього я планував зробити розширення Чебишева навколо кожного піку і використовувати вектор коефіцієнтів Чебишева як вхід до алгоритму кластера (k-означає?).

Як приклад, наводяться частини часових сигналів, виміряні в двох сусідніх положеннях (синій), апроксимованих 5-ти серійним Чебишевим рядом на 9 зразків (червоний) навколо двох піків (сині кола): введіть тут опис зображення

Наближення досить непогані :-).

Однак; коефіцієнти Чебишева для верхньої ділянки:

Clu = -1.1834   85.4318  -39.1155  -33.6420   31.0028
Cru =-43.0547  -22.7024 -143.3113   11.1709    0.5416

А коефіцієнти Чебишева для нижньої ділянки такі:

Cll = 13.0926   16.6208  -75.6980  -28.9003    0.0337
Crl =-12.7664   59.0644  -73.2201  -50.2910   11.6775

Я хотів би бачити Clu ~ = Cll і Cru ~ = Crl, але, схоже, це не так :-(

Можливо, є ще одна ортогональна основа, яка більше підходить у цьому випадку?

Будь-яка порада щодо того, як продовжувати роботу (я використовую Matlab)?

Заздалегідь дякую за будь-які відповіді!


1
Здається, ви за своєю суттю робите припущення, що "форма" піку, виражена у векторному просторі поліноміальних коефіцієнтів Чебишева, є безперервною (тобто невелика зміна форми однієї частини піку призведе до невеликої зміни в коефіцієнтах). Чи є у вас підстави вважати, що це так? Здається, ви вибрали свій інструмент, не впевнившись, що він вирішує проблему.
Джейсон R

Щоб було зрозуміло, яким чином ви намагаєтесь "класифікувати" вершини? Ви намагаєтесь пов’язати вимірювання з різними датчиками, які відповідають однаковим пікам? Чи є у вас інші засоби, за допомогою яких можна апріорі вимірювати відносну затримку часу, а потім використовувати цю інформацію для класифікації?
Джейсон R

Привіт, Джейсон Р. Я оновив своє запитання, щоб зробити речі яснішими.
Енді

Насправді я намагаюся відтворити кроки у статті "Автоматизована структурна інтерпретація через класифікацію сейсмічних горизонтів" (Borgos et al). Я намагався пояснити проблему в більш загальних рисах.
Енді

@Andy Чи можете ви пояснити, як ці коефіцієнти відповідають червоним лініям, показаним тут? Вони, здається, не співвідносяться ...
Spacey

Відповіді:


2

Схоже, у вас є одне джерело, x [n] і кілька сигналів мікрофона . Припускаючи, що ваш шлях поширення від джерела до мікрофонів є досить лінійним та інваріантним за часом, ви просто моделюєте шлях як функцію передачі. Отже, у вас є деy i [ n ] = h i [ n ] x [ n ] h i [ n ]yi[n]

yi[n]=hi[n]x[n]
hi[n]- імпульсна відповідь функції передачі від джерела до мікрофона "i". Ці функції передачі мають різні амплітудні та фазові реакції. Якщо вони досить різні, сигнали окремих мікрофонів також будуть зовсім різними, і немає підстав вважати, що піки дійсно з’являться на тому ж місці. У більшості акустичних середовищ вони будуть "різними", якщо мікрофони будуть відстані більше чверті хвилі на частотах, що цікавлять (або там, де в спектрі є нетривіальна енергія).

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

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.