mobile spirometry 관련 자료로 돌아가기
과제명 | SpiroSmart: Using a Microphone to Measure Lung Function on a Mobile |
---|---|
발행년월 | 2012-09 |
링크 | https://dl.acm.org/doi/10.1145/2370216.2370261 |
요약
- SpiroSmart는 내장 마이크를 활용해 폐활량 측정을 수행하는 저가용 모바일 폰 애플리케이션
- 데이터 변환 과정 아래 참고
- 측정 파라미터
- FVC
- FEV1
- FEV1 / FVC
- PEF
- 활용 디바이스: iPhone 4s
- 52명의 피실험자 대상으로 임상에서 사용하는 기기와 5.1% 오차 존재 (2012년 기준).
연구의 주된 알고리즘
마이크를 통해 녹음된 음성 데이터를 폐기능 평가에 필요한 데이터로 변환하는 게 목표.
1. 입력 데이터: 압력 신호 p(t)
- 마이크로폰은 입에서 나오는 압력 신호를 수집
- 이 신호는 교류 결합(AC-coupled) 특성을 가지며, 실제 압력의 비례적인 측정값으로 제공
2. 압력 손실 보정
(1) 거리 및 소리 반사 보정
- 입에서 스마트폰 마이크까지의 거리에서 발생하는 압력 손실을 보정
- 사용자의 머리 주변에서 발생하는 소리 반사와 회절 효과도 모델링.
(2) Inverse Radiation Modeling
- 소리의 전파를 구체적으로 모델링하기 위해 구형 장애물(spherical baffle)의 음향 전달 함수를 사용 (함수 내용은 논문 참고)
- 이 모델은 시간 도메인에서 역변환하여 FIR 필터링을 통해 신호에 적용
3. 흐름 속도 변환
(1) 압력을 흐름 속도로 변환
- 입술에서의 난류 흐름을 모델링하여 압력()을 공기 흐름 속도()로 변환
- 관련 계산식도 논문 참고
4. 특징 추출
SpiroSmart는 신호로부터 의미 있는 특징을 추출하기 위해 세 가지 주요 방법을 사용
(1) 시간 도메인: 신호 Envelope 계산
- 신호의 Hilbert 변환을 사용해 Envelope 계산
- Envelope는 신호의 저주파 에너지를 나타내며, 공기 흐름 속도의 근사값으로 간주될 수 있음
(2) 주파수 도메인: Spectogram Processing
- 신호를 짧은 시간 프레임(30ms)으로 나누어 각 프레임의 FFT 계산
- local resonance을 추출해 공기 흐름 속도와의 비례 관계를 파악
(3) 선형 예측 코딩(LPC)
- LPC를 사용하여 신호의 원천 파워와 음성 통로 필터(vocal tract filter)를 분리
- 음성 통로 필터의 "소스 파워"는 폐에서 발생하는 흐름 속도의 근사값을 제공
5. 머신 러닝 모델
(1) 폐 기능 지표 회귀
- 추출된 특징(예: 신호 Envelope, 공명, LPC)을 사용하여 강제 폐활량(FVC), 1초 강제 호기량(FEV1), 최대 호기 속도(PEF)를 예측
- 특징 값은 모델(bagged decision tree)을 통해 지표로 변환
(2) 곡선 모양 회귀
- 폐 기능 곡선의 모양(예: Flow-Volume 곡선)을 예측하기 위해 CRF(Conditional Random Field를 사용
- 곡선의 형상을 정규화한 후, 예측된 지표 값을 사용해 곡선을 스케일링
6. 결과 후처리
- 예측된 값은 Savitzky-Golay 필터(3차 다항식)를 사용해 잡음을 제거하고 부드럽게 만둚
- 물리적으로 불가능한 곡선(예: 부피가 단조 증가하지 않는 곡선)은 제거