Сравнение нескольких сигналов на предмет сходства

У меня есть несколько (от 2 до 100) сигналов, и мне нужно определить, когда значительное число отличается от остальных. Мы изучаем методы машинного обучения, но мы также хотим решить эту проблему как проблему обработки сигналов и посмотреть, где мы получим наилучшие результаты.

Этот очень информативный пост предполагает, что наилучшие результаты дает взвешенный совокупность приемов, в том числе:

  • Сходство во временной области (статическое): умножение на месте и суммирование.
  • Сходство во временной области (со сдвигом*): Возьмите БПФ каждого сигнала, умножьте и IFFT. (xcorr от Matlab)
  • Сходство в частотной области (статическое**): возьмите БПФ каждого сигнала, умножьте и просуммируйте.
  • Сходство в частотной области (со сдвигом*): умножьте два сигнала и выполните БПФ. Это покажет, имеют ли сигналы схожие спектральные формы.
  • Сходство по энергии (или по мощности, если разная длина)

Но это схема довольно высокого уровня. Может ли кто-нибудь указать мне на более подробное обсуждение этих методов, предпочтительно с некоторым кодом python или вместо этого с некоторым кодом на R?


person John Strong    schedule 20.01.2019    source источник
comment
Посмотрите на науку. Обработка сигналов: docs.scipy.org/doc/scipy/reference/signal.html Преобразования Фурье: docs.scipy.org/doc/scipy /reference/tutorial/fftpack.html. Я думаю, что то, что вы сравниваете, зависит от бизнес-кейса. Подумайте, что должно означать слово «далеко от остального» в контексте проблемы, которую вы пытаетесь решить.   -  person Neil    schedule 20.01.2019
comment
Также подумайте, подходит ли этот вопрос лучше для dsp.stackexchange.com.   -  person NPE    schedule 20.01.2019
comment
Разве корреляционная функция не должна решать эту проблему?   -  person Colonder    schedule 20.01.2019
comment
Функция взаимной корреляции является одним из инструментов, но то, что привлекло мое внимание в сообщении, на которое я ссылался, предлагало использовать взвешенный ансамбль из нескольких методов.   -  person John Strong    schedule 21.01.2019