Signal Processing
MNE-Python과 SciPy 기반의 연구용 EEG 신호 처리 파이프라인. 필터링부터 주파수 분석, 아티팩트 제거까지 브라우저에서 한 번에 처리합니다.
🔧 필터링 (Filtering)
원시 EEG 신호에서 원하지 않는 노이즈를 제거합니다. MNE-Python의 FIR 필터를 사용하여 신호 왜곡 없이 정확한 대역 추출이 가능합니다.
Band-Pass Filter
특정 주파수 대역만 통과시킵니다. 예를 들어 Alpha(8–13Hz) 리듬만 추출하거나, 0.1–40Hz 사이의 관심 대역만 남길 수 있습니다.
Notch Filter
전원 노이즈(한국 60Hz, 유럽 50Hz)를 선택적으로 제거합니다. 하모닉(120Hz, 180Hz 등)도 함께 처리 가능합니다.
High-Pass Filter
느린 드리프트(baseline drift)를 제거합니다. 일반적으로 0.1Hz 이상의 신호만 남겨 DC 오프셋과 저주파 잡음을 효과적으로 차단합니다.
Low-Pass Filter
고주파 노이즈(근전도 등)를 제거합니다. 통상 40Hz 이하만 통과시켜 뇌파 관련 주파수 성분만 깨끗하게 보존합니다.
# MNE-Python 필터링 예시 import mne raw = mne.io.read_raw_edf("eeg_data.edf") raw.filter(l_freq=1, h_freq=40) # Band-pass 1–40Hz raw.notch_filter(freqs=60) # 60Hz 전원 노이즈 제거
📈 주파수 분석 (PSD)
Power Spectral Density 분석으로 EEG 신호의 주파수별 파워 분포를 시각화합니다. Welch 방법 또는 Multitaper 방법을 선택할 수 있습니다.
Welch Method
신호를 겹치는 세그먼트로 나누어 FFT를 적용한 뒤 평균합니다. 노이즈에 강하고 가장 널리 사용되는 PSD 추정 방법입니다.
Multitaper Method
여러 테이퍼 함수를 적용하여 주파수 해상도를 높입니다. 짧은 구간에서도 안정적인 스펙트럼 추정이 가능합니다.
🧬 주파수 대역별 파워
EEG 신호는 주파수 대역별로 서로 다른 뇌 활동 상태를 반영합니다.
| 대역 | 주파수 범위 | 관련 뇌 상태 |
|---|---|---|
| Delta | 0.5 – 4 Hz | 깊은 수면, 무의식 상태 |
| Theta | 4 – 8 Hz | 졸림, 명상, 기억 처리 |
| Alpha | 8 – 13 Hz | 눈 감은 이완 상태, 안정 시 |
| Beta | 13 – 30 Hz | 집중, 사고, 활동 상태 |
| Gamma | 30 – 100 Hz | 고차 인지, 의식적 지각 |
🧹 아티팩트 제거
EEG 데이터에는 눈 깜빡임, 근전도, 움직임 등 다양한 아티팩트가 포함됩니다. 자동/수동 방법으로 깨끗한 신호를 추출합니다.
EOG (안전도) 제거
눈 깜빡임과 안구 운동에 의한 아티팩트를 ICA(독립 성분 분석)로 자동 식별하고 제거합니다.
EMG (근전도) 제거
안면/두피 근육 수축에 의한 고주파 노이즈를 필터링합니다. 특히 Gamma 대역 분석 시 중요합니다.
Peak-to-Peak 거부
진폭이 비정상적으로 큰 에폭(epoch)을 자동으로 감지하고 거부합니다. 임계값 기반으로 정확한 제어가 가능합니다.
ICA 분석
독립 성분 분석으로 뇌파와 아티팩트를 분리합니다. 자동 라벨링으로 아티팩트 성분만 선택적으로 제거할 수 있습니다.
EasyEEG Web은 MNE-Python 1.x 기반으로 모든 처리를 수행합니다. 로컬 설치 없이 브라우저에서 .edf, .bdf, .fif 파일을 바로 업로드하여 분석할 수 있습니다.
지금 바로 분석을 시작하세요
MATLAB 라이선스 없이 브라우저에서 연구 수준의 EEG 신호 처리를.
무료로 시작하기 →