--- id: wiki-2026-0508-neurorehabilitation-post-stroke title: Neurorehabilitation Post-Stroke category: 10_Wiki/Topics status: verified canonical_id: self aliases: [Post-Stroke Rehabilitation, Stroke Recovery, Neurorehabilitation after Stroke] duplicate_of: none source_trust_level: A confidence_score: 0.9 verification_status: applied tags: [stroke, rehab, motor-recovery, cimt, robotics, bci, plasticity] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: { language: python, framework: pytorch-mne } --- # Neurorehabilitation Post-Stroke ## 매 한 줄 - 뇌졸중 후 신경재활은 손상 주변 뉴런의 가소성을 활용하여 운동·언어·인지 기능을 복원하는 다학제 개입이며, 로봇·BCI·집중훈련(CIMT)이 표준 도구로 합류했다. ## 매 핵심 - **회복 곡선**: 발병 후 0–3개월 spontaneous recovery(신경가소성 활성기), 3–6개월 plateau, 6개월+ slow gain. **시간 의존성** 강함. - **표준 개입**: CIMT(constraint-induced movement therapy, 건측 억제 + 환측 집중 사용), task-specific repetition(>300회/세션), mirror therapy, FES, robotic exoskeleton(Lokomat, Armeo), tDCS/rTMS 보조. - **BCI 재활**: motor imagery EEG → robot/FES 폐루프, Hebbian "pair pre+post" 자극으로 cortico-spinal pathway 강화. - **결과 척도**: Fugl-Meyer Assessment(FMA, 0–66 upper limb), Modified Rankin Scale, Barthel Index, NIHSS. - **AI 적용**: 보행 분석(IMU + LSTM), 회복 궤적 예측(GBM on FMA + lesion volume), 가정 telerehab adherence 모니터. ## 💻 패턴 ```python # Fugl-Meyer trajectory prediction (early FMA + lesion → 6mo FMA) import numpy as np from sklearn.ensemble import GradientBoostingRegressor from sklearn.model_selection import KFold X = np.load("baseline_features.npy") # FMA_t0, lesion_vol, age, NIHSS y = np.load("FMA_6mo.npy") gbr = GradientBoostingRegressor(n_estimators=300, max_depth=3) mae = [] for tr, te in KFold(5, shuffle=True, random_state=0).split(X): gbr.fit(X[tr], y[tr]) mae.append(np.mean(np.abs(gbr.predict(X[te]) - y[te]))) print(f"FMA MAE: {np.mean(mae):.2f}") ``` ```python # IMU gait segmentation: heel-strike detection import numpy as np from scipy.signal import find_peaks def heel_strikes(acc_z, fs=100): peaks, _ = find_peaks(-acc_z, distance=fs * 0.4, prominence=0.5) return peaks # samples ``` ```python # Motor imagery EEG → CSP + LDA classifier (BCI rehab) from mne.decoding import CSP from sklearn.discriminant_analysis import LinearDiscriminantAnalysis from sklearn.pipeline import Pipeline clf = Pipeline([("csp", CSP(n_components=6)), ("lda", LinearDiscriminantAnalysis())]) clf.fit(X_eeg, y_class) # 0=rest, 1=hand-MI ``` ```python # CIMT compliance from wrist accelerometer (use ratio paretic/non-paretic) import numpy as np def use_ratio(acc_paretic, acc_non): p = np.sqrt(np.sum(acc_paretic ** 2, axis=1)) n = np.sqrt(np.sum(acc_non ** 2, axis=1)) return p.sum() / (n.sum() + 1e-9) ``` ```python # Robotic assist-as-needed: error-based force scaling def assist_force(target, actual, k_max=20.0, deadband=0.02): err = target - actual if abs(err) < deadband: return 0.0 return k_max * (1 - 1 / (1 + abs(err))) * (1 if err > 0 else -1) ``` ```python # tDCS dose calc (anodal M1, 2 mA, 20 min) def tdcs_charge(current_mA, duration_min, area_cm2=35): Q = current_mA * 1e-3 * duration_min * 60 # Coulombs return Q / area_cm2 # safety < 0.04 C/cm^2 ``` ```python # Repetition counter from EMG burst detection import numpy as np def count_reps(emg, fs=1000, thresh=2.0): env = np.abs(emg) above = env > thresh * env.std() edges = np.diff(above.astype(int)) return int((edges == 1).sum()) ``` ## 매 결정 기준 - **발병 후 시점**: 0–3개월 → 고강도 task-specific. 6개월+ → CIMT, BCI, robotics 보강. - **운동 손상 정도**: FMA<20(severe) → robotic passive/assist. FMA 20–50 → CIMT + active. FMA>50 → fine motor task. - **BCI 적용**: 잔존 motor imagery 신호 검출 가능 + 환자 동기 → 폐루프 BCI(8주 프로그램). - **퇴원 후 telerehab**: adherence 측정 가능한 wearable + 주 1회 화상 follow. ## 🔗 Graph - 관련: [[Neuroplasticity]], [[Neuroprosthetics-Development]], [[Neurodevelopmental-Disorders]], [[BCI]] ## 🤖 LLM 활용 - 환자별 재활 계획 초안(FMA, Barthel 입력 → goal/timeline 생성, 임상의 검토 필수). - 진료기록 요약(NIHSS 변화, 합병증 추출). - 가정 운동 안내문 다국어 번역. ## ❌ 안티패턴 - 발병 24h 이내 고강도 mobilization(AVERT 시험: 90일 outcome 악화 보고). - BCI calibration 없이 일반 모델 적용(개인차 큼). - 환측 사용 강제 없이 CIMT 라벨링. ## 🧪 검증 - FMA, Action Research Arm Test(ARAT), 10m walk test, Berg Balance. - BCI: classification accuracy ≥ 70%, 사용자 NASA-TLX. ## 🕓 Changelog - 2026-05-08 Phase 1: 초안 자동 생성. - 2026-05-10 Manual cleanup: 본문 보강, AVERT 결과 반영, 코드 패턴 7개, BCI 폐루프 추가.