Баттерворт фильтрация данных ЭЭГ в R - PullRequest
0 голосов
/ 21 апреля 2019

Я очень новичок в R и EEG, поэтому прошу прощения, если ответ на вопрос очевиден.

Я пытаюсь выполнить фильтр Баттерворта для сигнала ЭЭГ, чтобы извлечь альфа-полосу.Когда я выполнил фильтр, результирующий сигнал выглядел очень странно и совсем не так, как я ожидал, с необычно большим пиком в начале временного интервала.Я попытался использовать eegfilter и bwfilter, чтобы увидеть, была ли это проблема с кодом, но между ними было очень мало различий, когда я отображал результаты.Я затрудняюсь объяснить конечный результат и был бы признателен, если бы кто-то мог объяснить мне особый конечный результат.

Вот пример данных, на которые я смотрю: https://ufile.io/1ji48wg6

Частота дискретизации 512.

Я хочу выделить альфа-полосу, поэтому частотыот 8 до 12 Гц

library(eegkit)

mturk <- read.csv("EEG_alpha.csv", head = TRUE, sep= ",")

mturk.but <- eegfilter(mturk, Fs = 512, lower = 8, upper = 12, method = "butter", order = 4)

plot(mturk.but)

Вот изображение данных при построении.Самое левое изображение - это необработанные данные.Центральный сюжет является результатом применения фильтра Баттерворта с использованием eegfilter.Правильный график - результат применения фильтра Баттерворта с использованием bwfilter.

Графики данных при применении фильтров

Заголовок набора данных:

EEG

-8438.876837

-8442.718979

-8441.877183

-8439.974768

-8443.436883

-8448.9007

-8452.433874

-8441.616546

1 Ответ

0 голосов
/ 30 апреля 2019

Кажется, что функции eegfilter и bwfilter добавляют 0 перед данными перед применением фильтра и только затем нормализуют его.Таким образом, вы получите нечто похожее на Dirac в начале данных после их обработки, и отфильтрованные данные выйдут из исходного состояния:

EEG_raw

К этому, как только вы отфильтровали его:

EEG Butterworth с фильтрацией

Однако, если вы нормализуете данные до 0;вычитая первое значение временного ряда из всех значений до применения фильтра, артефакты типа Дирака не возникают:

нормализация ЭЭГ с последующим фильтром Баттерворта

...