프로젝트 설명
PPG 신호의 전처리를 통해 모션 아티팩트를 제거한 후, FFT 및 Hankel 행렬과 SVD 기법을 활용하여 세그먼트별 심박수를 추정. ECG 데이터와의 비교를 통해 심박수를 보정하고, 피크 간격 변동(SDNN)을 계산하여 수면 단계를 분류
데이터 전처리 및 모션 아티팩트 제거
• 텍스트 파일에서 PPG, ECG, 가속도 데이터를 파싱 및 벡터화
• 다변수 회귀를 통한 모션 아티팩트 제거
• Butterworth 밴드패스 필터로 신호 정제
심박수 추정
• 세그먼트별 FFT를 이용한 기본 심박수 추정
• Hankel 행렬 생성 후 SVD 및 대각 평균법으로 재구성하여 심박수 추정
• ECG 데이터를 활용한 보정 실시
수면 단계 분류
• PPG 필터링 신호의 피크 간격 표준편차(SDNN) 계산
• SDNN 값에 따른 수면 단계 분류
결과 시각화 및 평가
• 세그먼트별 추정 심박수와 실제 심박수 비교 그래프 작성
• 각 피험자 결과 요약 및 정확도 계산 후 CSV 파일로 저장