KR20200092859A - Method and apparatus for pre-processing ppg signal - Google Patents

Method and apparatus for pre-processing ppg signal Download PDF

Info

Publication number
KR20200092859A
KR20200092859A KR1020190156303A KR20190156303A KR20200092859A KR 20200092859 A KR20200092859 A KR 20200092859A KR 1020190156303 A KR1020190156303 A KR 1020190156303A KR 20190156303 A KR20190156303 A KR 20190156303A KR 20200092859 A KR20200092859 A KR 20200092859A
Authority
KR
South Korea
Prior art keywords
pulse
ppg signal
average
falling
rising
Prior art date
Application number
KR1020190156303A
Other languages
Korean (ko)
Inventor
압둘 마지드 이브라힘
호세 수지트
아로라 라헬
최가람
배상곤
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US16/749,514 priority Critical patent/US11642087B2/en
Publication of KR20200092859A publication Critical patent/KR20200092859A/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
    • A61B5/024Detecting, measuring or recording pulse rate or heart rate
    • A61B5/02416Detecting, measuring or recording pulse rate or heart rate using photoplethysmograph signals, e.g. generated by infrared radiation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7203Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal
    • A61B5/7207Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal of noise induced by motion artifacts
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/725Details of waveform analysis using specific filters therefor, e.g. Kalman or adaptive filters

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Veterinary Medicine (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Public Health (AREA)
  • Biophysics (AREA)
  • Pathology (AREA)
  • Biomedical Technology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physiology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Psychiatry (AREA)
  • Cardiology (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)

Abstract

The present invention relates to a device for preprocessing a PPG signal and a method thereof. According to an embodiment of the present invention, a PPG signal preprocessing device can comprise: a PPG signal receiver for receiving a PPG signal including a pulse; a moving average filter for smoothing the PPG signal to obtain a smoothed PPG signal; a drift elimination engine for eliminating a drift from the smoothed PPG signal by using a fitted polynomial function to obtain a drift-eliminated PPG signal; and a motion artifact correction engine for correcting motion artifacts of the drift-eliminated PPG signal by replacing the pulse with the combination of a global signal pulse and a local signal pulse to obtain a rectified PPG signal.

Description

PPG 신호 전처리 방법 및 장치{METHOD AND APPARATUS FOR PRE-PROCESSING PPG SIGNAL}PPG signal pre-processing method and apparatus {METHOD AND APPARATUS FOR PRE-PROCESSING PPG SIGNAL}

신호 처리 시스템에 관한 발명으로, 보다 상세하게는 PPG(Photoplethysmography: 광용적맥파) 신호를 전처리 하는 방법 및 장치에 관한 것이다.The present invention relates to a signal processing system, and more particularly, to a method and apparatus for preprocessing a PPG (Photoplethysmography).

PPG 신호는 혈압, 혈중산소(SpO2), 심박수와 같은 휴먼 바이털(human vital)을 측정하는 비침습적 방법에 널리 이용되어 왔다. PPG 신호는 일반적으로 다양한 노이즈, 드리프트 및 모션 아티팩트(Motion artifact)에 의해 영향을 받는데, 그 중에서도 모션 아티팩트는 PPG 신호의 질에 큰 영향을 미친다. 모션 아티팩트는 개인의 펄스에 영향을 미치며, 따라서 대부분 펄스의 형태에 기반한 특징에 영향을 미친다. PPG 신호에 영향을 주지 않고 모션 아티팩트를 제거하는 것은 PPG 신호 전처리 과정에서 중요한 작업이다. 모션 아티팩트 제거에는 주파수 기반 및 시간-주파수 기반 방법이 있다. 그러나 이러한 기술은 모션 아티팩트의 주파수 대역 및 PPG 신호가 중첩됨에 따라 신호를 동시에 제거하는 경향이 있다. 따라서, 주파수 도메인 방법을 이용하여 모션 아티팩트를 제거하는 것은 PPG 신호의 내용을 제거할 수도 있다. 이러한 단점을 극복하기 위한 방법이나 대안이 절실히 대두되는 실정이다.PPG signals have been widely used in non-invasive methods to measure human vitality such as blood pressure, blood oxygenation (SpO2), and heart rate. PPG signals are generally affected by various noises, drifts, and motion artifacts, among which motion artifacts greatly affect the quality of the PPG signal. Motion artifacts affect a person's pulse, and therefore most of the characteristics based on the shape of the pulse. Removing motion artifacts without affecting the PPG signal is an important task in the PPG signal preprocessing process. There are frequency-based and time-frequency-based methods for motion artifact removal. However, this technique tends to remove signals simultaneously as the frequency bands of motion artifacts and PPG signals overlap. Therefore, removing motion artifacts using the frequency domain method may remove the content of the PPG signal. Methods or alternatives to overcome these shortcomings are urgently emerging.

PPG 신호를 전처리하기 위한 방법 및 장치를 제공하는 것을 그 목적으로 한다.It is an object to provide a method and apparatus for preprocessing a PPG signal.

상기 목적을 달성하기 위한 일 실시예에 따른 PPG 신호 전처리 방법은, 장치에 의해 펄스를 포함하는 PPG 신호를 수신하는 단계; 상기 장치에 의해, 이동 평균 필터를 이용하여 상기 PPG 신호를 평활화하여 평활화된 PPG 신호를 획득하는 단계; 상기 장치에 의해, 피팅된 다항식 함수(fitted polynomial function)를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득하는 단계; 및 상기 장치에 의해, 상기 펄스를 글로벌 신호 펄스 및 로컬 신호 펄스의 조합으로 대체하여 정류된 PPG 신호를 획득하기 위하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 단계를 포함한다.A PPG signal pre-processing method according to an embodiment for achieving the above object comprises: receiving a PPG signal including a pulse by a device; Smoothing, by the apparatus, the PPG signal using a moving average filter to obtain a smoothed PPG signal; Removing, by the apparatus, drift from the smoothed PPG signal using a fitted polynomial function to obtain a drifted PPG signal; And correcting, by the apparatus, the motion artifact of the drift-removed PPG signal in order to obtain a rectified PPG signal by replacing the pulse with a combination of a global signal pulse and a local signal pulse.

이 때, 일 실시예에 따른 PPG 신호 전처리 방법은, 상기 장치에 의해, 상기 정류된 PPG 신호로부터 특징을 추출하는 단계를 포함한다. At this time, the PPG signal preprocessing method according to an embodiment includes extracting a feature from the rectified PPG signal by the apparatus.

이 때, 일 실시예에 따른 PPG 신호 전처리 방법은, 상기 장치에 의해, 상기 추출된 특징에 근거하여 바이털 신호값을 예측하는 단계를 포함한다.At this time, the PPG signal pre-processing method according to an embodiment includes predicting a vital signal value based on the extracted feature by the apparatus.

이 때, 상기 장치에 의해, 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득하는 단계는 상기 피팅된 다항식 함수를 미리 정의된 상기 평활화된 PPG 신호의 다항식 근사치(Polynomial approximation)로 결정하는 단계; 및 상기 드리프트 제거된 PPG 신호를 획득하기 위해 상기 평활화된 PPG 신호로부터 피팅된 다항식 함수를 감산(subtract)하는 단계를 포함한다.At this time, the step of obtaining a drift-removed PPG signal by removing drift from the smoothed PPG signal by using the fitted polynomial function by the apparatus is performed by adding the fitted polynomial function to the predefined smoothed PPG signal. Determining with a polynomial approximation; And subtracting a fitted polynomial function from the smoothed PPG signal to obtain the drift-removed PPG signal.

이 때, 글로벌 신호 펄스가 결정되는 단계는, 상기 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프(Trough) 및 피크(Peak)에 근거하여 상승 펄스(ascending pulse) 및 하강 펄스(descending pulse)로 분할하는 단계; 각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이(average ascending length)를 획득하는 단계; 각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이(average descending length)를 획득하는 단계; 리샘플링된 상승 펄스를 획득하기 위해 선형 보간법(linear interpolation)을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링하는 단계; 리샘플링된 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링 하는 단계; 상기 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득하는 단계; 상기 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득하는 단계; 및 상기 평균 상승 펄스와 상기 평균 하강 펄스를 연결(Concatenating)하는 단계를 포함한다.At this time, the step of determining the global signal pulses includes ascending pulses and falling pulses based on the trough and peak of the drift-removed PPG signal for each pulse of the drift-removed PPG signal. (descending pulse); Obtaining an average ascending length as an average of the number of samples in each rising pulse; Acquiring an average descending length as an average of the number of samples in each falling pulse; Resampling each rising pulse to the average rising length using a linear interpolation to obtain a resampled rising pulse; Resampling each falling pulse to the average falling length using a linear interpolation method to obtain a resampled falling pulse; Obtaining an average rising pulse as an average of the resampled rising pulses; Obtaining an average falling pulse as an average of the resampled falling pulses; And concatenating the average rising pulse and the average falling pulse.

이 때, 로컬 신호 펄스가 결정되는 단계는, 정류될 펄스 주위에 드리프트 제거된 PPG 신호의 미리 정의된 개수의 로컬 펄스를 분리하는 단계; 각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할하는 단계; 리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 상기 평균 상승 길이로 리샘플링하는 단계; 리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 상기 평균 하강 길이로 리샘플링하는 단계; 상기 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 상기 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득하는 단계; 및 상기 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결하는 단계를 포함한다.At this time, the step of determining the local signal pulse may include: separating a predefined number of local pulses of the PPG signal drift-drift around the pulse to be rectified; Dividing each local pulse into a local rising pulse and a local falling pulse; Resampling each local rise pulse to the average rise length using a linear interpolation method to obtain a resampled local rise pulse; Resampling each local falling pulse to the average falling length using a linear interpolation method to obtain a resampled local falling pulse; Obtaining an average local rising pulse as an average of the resampled local rising pulses and obtaining an average local falling pulse as an average of the resampled local falling pulses; And connecting the average local rising pulse and the average local falling pulse.

이 때, 정류된 PPG 신호를 획득하기 위해 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 단계는, 각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합(Convex combination)으로 대체함으로써 중간 정류된 PPG 신호를 획득하는 단계; 및 상기 드리프트 제거된 PPG 신호의 대응하는 펄스 내의 샘플들의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 단계를 포함한다.At this time, correcting the motion artifact of the drift-removed PPG signal to obtain a rectified PPG signal includes replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse. Obtaining an intermediate rectified PPG signal; And resampling each pulse of the intermediate rectified PPG signal with the number of samples in the corresponding pulse of the drift-removed PPG signal.

이 때, 정류된 PPG 신호를 획득하기 위해 상기 드리프트 제거된 PPG 신호의 대응하는 펄스 내의 샘플들의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 단계는 상기 중간 정류된 PPG 신호의 각 펄스를, 샘플 개수가 평균 상승 길이에 해당하는 상승 펄스 및 샘플 개수가 평균 하강 길이에 해당하는 하강 펄스로 나누는 단계; 정류된 상승 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하는 단계; 정류된 하강 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하는 단계; 및 상기 정류된 PPG 신호를 획득하기 위해 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결하는 단계를 포함한다.At this time, resampling each pulse of the intermediate rectified PPG signal with the number of samples in the corresponding pulse of the drift-removed PPG signal in order to obtain a rectified PPG signal may include re-sampling each pulse of the intermediate rectified PPG signal. Dividing the number of samples into a rising pulse corresponding to the average rising length and a falling pulse whose number of samples corresponds to the average falling length; Resampling each rising pulse with the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified rising pulse; Resampling each falling pulse with the number of samples of the falling pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified falling pulse; And connecting each rectified rising pulse with a corresponding rectified falling pulse to obtain the rectified PPG signal.

이 때, 트로프 및 피크는 상기 평활화된 PPG 신호의 트로프 및 피크에 대응하는 샘플 인덱스를 나타낸다.At this time, the trough and peak represent sample indices corresponding to the trough and peak of the smoothed PPG signal.

이 때, 상기 교체될 펄스는 첫 번째 트로프 이전이고 마지막 트로프 이후에 발생하는 피크가 제거되도록 피크 및 트로프를 조절함에 의해서 결정되고 그 결과 트로프에서 시작해서 트로프에서 끝나는 펄스만 정류된 것으로 간주된다. At this time, the pulse to be replaced is determined by adjusting the peak and trough so that peaks occurring before the first trough and after the last trough are eliminated, and as a result, only pulses starting at the trough and ending at the trough are considered to be rectified.

이 때, 상기 특징들은 카이저 티저 에너지(Kaizer Teager Energy, KTE) 특징, 스펙트럼 엔트로피(Spectral Entropy) 특징 및 스펙트럼 에너지 대수(Spectral Energy Logarithmic) 특징의 평균, 분산 및 편포도(Skewness) 중 적어도 하나를 포함한다.At this time, the features include at least one of Kaiser Teager Energy (KTE) features, Spectral Entropy features and Spectral Energy Logarithmic features. do.

또한, PPG 신호 전처리 장치는 펄스를 포함하는 PPG 신호를 수신하는 PPG 신호 수신기; 평활화된 PPG 신호를 획득하기 위해 상기 PPG 신호를 평활화 하는 이동 평균 필터; 드리프트 제거된 PPG 신호를 획득하기 위하여 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하는 드리프트 제거 엔진; 정류된 PPG 신호를 획득하기 위해 글로벌 신호 펄스와 로컬 신호 펄스의 조합으로 상기 펄스를 대체하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 모션 아티팩트 정정 엔진으로 구성된다.In addition, the PPG signal pre-processing apparatus includes a PPG signal receiver for receiving a PPG signal including a pulse; A moving average filter that smoothes the PPG signal to obtain a smoothed PPG signal; A drift removal engine that removes drift from the smoothed PPG signal using a fitted polynomial function to obtain a drift-removed PPG signal; It consists of a motion artifact correction engine that corrects the motion artifacts of the drift-removed PPG signal by replacing the pulses with a combination of global signal pulses and local signal pulses to obtain a rectified PPG signal.

이 때, 일 실시예에 따른 PPG 신호 전처리 장치는, 상기 정류된 PPG 신호로부터 특징을 추출하고, 추출된 특징을 근거로 바이털 신호를 예측하는 바이털 신호 예측 엔진을 더 포함한다.At this time, the PPG signal pre-processing apparatus according to an embodiment further includes a vital signal prediction engine that extracts features from the rectified PPG signal and predicts a vital signal based on the extracted features.

이 때, 상기 드리프트 제거 엔진은 상기 피팅된 다항식 함수를 미리 정의된 평활화된 PPG 신호의 다항식 근사치로 결정하고, 상기 드리프트 제거된 PPG 신호를 획득하기 위해 상기 평활화된 PPG 신호로부터 피팅된 다항식 함수를 계산한다.At this time, the drift removal engine determines the fitted polynomial function as a polynomial approximation of a predefined smoothed PPG signal, and calculates a fitted polynomial function from the smoothed PPG signal to obtain the drift-removed PPG signal. do.

이 때, 상기 글로벌 신호 펄스는 상기 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프(Trough) 및 피크(Peak)에 근거하여 상승 펄스 및 하강 펄스로 분할하고, 각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이를 획득하고,각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이를 획득하고,리샘플링된 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링 하고, 리샘플링된 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링 하고, 상기 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득하고, 상기 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득하고, 상기 평균 상승 펄스와 상기 평균 하강 펄스를 연결하는 것에 의해서 결정된다.In this case, the global signal pulse is divided into rising pulses and falling pulses based on the trough and peak of the drift-removed PPG signal, and each pulse of the drift-removed PPG signal. To obtain the average rising length as the average of the number of samples, to obtain the average falling length as the average of the number of samples from each falling pulse, and to obtain the resampled rising pulse, each rising pulse is converted to the average rising length using a linear interpolation method. Resampling, resampling each falling pulse to the average falling length using a linear interpolation method to obtain a resampled falling pulse, obtaining an average rising pulse as the average of the resampled rising pulses, and obtaining an average of the resampled falling pulses It is determined by acquiring an average falling pulse, and connecting the average rising pulse and the average falling pulse.

이 때, 상기 로컬 신호 펄스는 정류될 펄스 주위에 상기 드리프트 제거된 PPG 신호의 미리 정의된 개수의 로컬 펄스를 분리하고, 각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할하고, 리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 평균 상승 길이로 리샘플링하고, 리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 평균 하강 길이로 리샘플링하고, 상기 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 상기 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득하고, 상기 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결하는 것에 의해서 결정된다.At this time, the local signal pulse separates a predefined number of local pulses of the drift-removed PPG signal around the pulse to be rectified, divides each local pulse into a local rising pulse and a local falling pulse, and resamples the local rise. Each local rising pulse is resampled to an average rising length using a linear interpolation method to obtain a pulse, and each local falling pulse is resampled to an average falling length using a linear interpolation method to obtain a resampled local falling pulse, and the resampling is performed. It is determined by obtaining an average local rising pulse as an average of the local rise pulses obtained, obtaining an average local falling pulse as an average of the resampled local falling pulses, and connecting the average local rising pulse and the average local falling pulses. .

이 때, 상기 모션 아티팩트 정정 엔진은 각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합으로 대체함으로써 중간 정류된 PPG 신호를 획득하고, 드리프트 제거된 PPG 신호의 각 펄스 내의 샘플의 개수로 중간 정류된 PPG 신호의 각 펄스를 리샘플링한다.At this time, the motion artifact correction engine acquires an intermediate rectified PPG signal by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse, and the number of samples in each pulse of the drift-removed PPG signal. Each pulse of the PPG signal intermediately rectified with is resampled.

이 때, 상기 모션 아티팩트 정정 엔진이 상기 드리프트 제거된 PPG 신호의 각 펄스 내의 샘플의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 것은, 상기 중간 정류된 PPG 신호의 각 펄스를, 샘플 개수가 평균 상승 길이에 해당하는 상승 펄스 및 샘플 개수가 평균 하강 길이에 해당하는 하강 펄스로 나누고, 정류된 상승 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하고, 정류된 하강 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하고, 상기 정류된 PPG 신호를 획득하기 위해 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결한다.At this time, when the motion artifact correction engine resamples each pulse of the intermediate rectified PPG signal with the number of samples in each pulse of the drift-removed PPG signal, each pulse of the intermediate rectified PPG signal is sampled. Is divided by the rising pulse corresponding to the average rising length and the number of samples falling into the falling pulse corresponding to the average falling length, and to obtain the rectified rising pulse, the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal. Resample each rising pulse, resample each falling pulse from the drift-removed PPG signal to the number of samples of the falling pulse of the corresponding pulse to obtain a rectified falling pulse, and obtain each rectified PPG signal. The rectified rising pulse is connected to the corresponding rectified falling pulse.

이 때, 상기 트로프 및 피크는 상기 평활화된 PPG 신호의 트로프 및 피크에 대응하는 샘플 인덱스를 나타낸다.At this time, the trough and peak represent the sample index corresponding to the trough and peak of the smoothed PPG signal.

이 때, 상기 대체될 펄스는 첫 번째 트로프 이전이고 마지막 트로프 이후에 발생하는 피크가 제거되도록 피크 및 트로프를 조절함에 의해서 결정되고, 그 결과 트로프에서 시작해서 트로프에서 끝나는 펄스만 정류된다.At this time, the pulse to be replaced is determined by adjusting the peak and trough so that peaks occurring before the first trough and after the last trough are removed, and as a result, only pulses starting at the trough and ending at the trough are rectified.

이 때, 상기 특징은 카이저 티저 에너지(Kaizer Teager Energy, KTE) 특징, 스펙트럼 엔트로피(Spectral Entropy) 특징 및 스펙트럼 에너지 대수(Spectral Energy Logarithmic) 특징의 평균, 분산 및 편포도(Skewness) 중 적어도 하나를 포함한다.In this case, the feature includes at least one of Kaizer Teager Energy (KTE) features, Spectral Entropy features and Spectral Energy Logarithmic features. do.

PPG 신호의 전처리 과정을 통해 정류된 PPG 신호에서 특징을 추출하고 이에 근거하여 바이털 신호값을 예측하는 것을 가능하도록 한다.Through the pre-processing process of the PPG signal, it is possible to extract features from the rectified PPG signal and predict the vital signal value based on this.

도 1은 일 실시예에 따른 PPG 신호 전처리 장치의 블록도이다.
도 2는 일 실시예에 따른 모션 아티팩트 정정 엔진의 블록도이다.
도 3은 일 실시예에 따른 PPG 신호를 전처리하고 바이털 신호 예측을 위해 특징을 추출하는 방법에 대한 흐름도이다.
도 4는 일 실시예에 따른 드리프트 제거된 PPG 신호를 획득하기 위해 피팅된 다항식 함수를 이용하여 평활화된 PPG 신호로부터 드리프트를 제거하는 것에 대한 흐름도이다.
도 5는 일 실시예에 따른 정류된 PPG 신호를 획득하기 위해 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 것에 대한 흐름도이다.
도 6은 일 실시예에 따른 글로벌 신호 펄스를 결정하는 것에 대한 흐름도이다.
도 7은 일 실시예에 따른 로컬 신호 펄스를 결정하는 것에 대한 흐름도이다.
도 8은 이동 평균 필터 적용 후 평활화된 PPG 신호를 도시한 그래프이다.
도 9는 드리프트 제거된 신호가 도시된 그래프이다.
도 10은 평균 상승 펄스와 평균 하강 펄스가 계산되고, 글로벌/로컬 신호 펄스를 획득하기 위해 연결되는 것을 도시한 그래프이다.
도 11은 α = 0.3, M = 3 일때 드리프트 제거된 원래의 신호와 정류된 PPG 신호를 도시한 그래프이다.
도 12는 α = 0.5, M = 5 일때 드리프트 제거된 원래의 신호와 정류된 PPG 신호를 도시한 그래프이다.
도 13은 품질 평가 메트릭스를 정의하기 위한 PPG 신호의 특성을 나타내는 그래프이다.
1 is a block diagram of a PPG signal pre-processing apparatus according to an embodiment.
2 is a block diagram of a motion artifact correction engine according to an embodiment.
3 is a flowchart of a method of preprocessing a PPG signal and extracting features for predicting a vital signal according to an embodiment.
4 is a flow chart for removing drift from a smoothed PPG signal using a fitted polynomial function to obtain a drift-removed PPG signal according to an embodiment.
5 is a flowchart of correcting a motion artifact of a drift-removed PPG signal to obtain a rectified PPG signal according to an embodiment.
6 is a flow diagram for determining a global signal pulse according to one embodiment.
7 is a flow diagram for determining a local signal pulse according to one embodiment.
8 is a graph showing a smoothed PPG signal after applying a moving average filter.
9 is a graph showing a signal that has been removed from drift.
10 is a graph showing that the average rising pulse and the average falling pulse are calculated and connected to obtain global/local signal pulses.
FIG. 11 is a graph showing the original signal rectified and the rectified PPG signal when α=0.3 and M=3.
FIG. 12 is a graph showing the original signal rectified and the rectified PPG signal when α=0.5 and M=5.
13 is a graph showing characteristics of a PPG signal for defining a quality evaluation metric.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다. 기재된 기술의 이점 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Specific details of other embodiments are included in the detailed description and drawings. The advantages and features of the described technology, and how to achieve them will become apparent with reference to the embodiments described below in detail in conjunction with the drawings. The same reference numerals refer to the same components throughout the specification.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are only used to distinguish one component from other components. Singular expressions include plural expressions unless the context clearly indicates otherwise. Also, when a part “includes” a certain component, this means that other components may be further included instead of excluding other components, unless otherwise specified. In addition, terms such as “part” and “module” described in the specification mean a unit that processes at least one function or operation, which may be implemented in hardware or software, or a combination of hardware and software.

또한, 본 분야에서 통상적인 바와 같이, 실시예에서 블록들에 의해서 기능이 수행될 수 있으며, "부", "모듈"로 지칭되는 블록은 논리 게이트, 집적 회로, 마이크로 프로세서, 마이크로 컨트롤러, 메모리 회로, 수동 전자 부품, 능동 전자 부품, 광학 부품, 하드웨어에 내장된 회로와 같은 아날로그 또는 디지털 회로에 의해 물리적으로 구현되며, 선택적으로 펌웨어 및 소프트웨어에 의해서 구동될 수 있다. In addition, as is common in the art, functions may be performed by blocks in an embodiment, and blocks referred to as "units" and "modules" may include logic gates, integrated circuits, microprocessors, microcontrollers, and memory circuits. , Physically implemented by analog or digital circuitry such as passive electronic components, active electronic components, optical components, circuits embedded in the hardware, and can optionally be driven by firmware and software.

또한, 회로는 하나 이상의 반도체칩으로 또는 인쇄 회로 기판 등과 같은 기판 지지체 상에 구현될 수 있다. 블록을 구성하는 회로는 전용 하드웨어 또는 프로세서에 의해 구현될 수 있고 또는 블록의 일부 기능을 수행하기 위한 전용 하드웨어와 블록의 다른 기능을 수행하기 위한 프로세서의 조합에 의해 수행될 수도 있다.Further, the circuit may be implemented with one or more semiconductor chips or on a substrate support such as a printed circuit board. The circuit constituting the block may be implemented by dedicated hardware or a processor, or may be performed by a combination of dedicated hardware for performing some functions of the block and a processor for performing other functions of the block.

일 실시예에 따른 PPG 신호 전처리 방법은, 장치에 의해 펄스를 포함하는 PPG 신호를 수신하는 단계, 상기 장치에 의해, 이동 평균 필터를 이용하여 상기 PPG 신호를 평활화하여 평활화된 PPG 신호를 획득하는 단계, 상기 장치에 의해, 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득하는 단계, 및 상기 장치에 의해, 상기 펄스를 글로벌 신호 펄스 및 로컬 신호 펄스의 조합으로 대체하여 정류된 PPG 신호를 획득하기 위하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 단계를 포함한다.The PPG signal pre-processing method according to an embodiment includes: receiving a PPG signal including a pulse by a device, and smoothing the PPG signal by using a moving average filter to obtain a smoothed PPG signal by the device. , By the device, removing drift from the smoothed PPG signal using a fitted polynomial function to obtain a drift-depleted PPG signal, and by the device, the pulse is generated from global and local signal pulses. And correcting motion artifacts of the drift-removed PPG signal to obtain a rectified PPG signal by replacing with a combination.

일반적인 방법 및 시스템과는 달리, 제안된 방법은 추가 센서나 기준 신호를 이용하지 않고 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는데 이용될 수 있다. Unlike general methods and systems, the proposed method can be used to correct the motion artifacts of the drift-removed PPG signal without using additional sensors or reference signals.

제안된 방법은 각 펄스를 상승 펄스 및 하강 펄스로 분할하여 평균 펄스를 계산하는데 이용될 수 있으며, 결과적으로 정확한 펄스 평균을 생성하게 되어 더 나은 모션 아티팩트 정정 결과를 얻을 수 있다. The proposed method can be used to calculate the average pulse by dividing each pulse into rising pulses and falling pulses. As a result, an accurate pulse average can be generated to obtain better motion artifact correction results.

또한, 제안된 방법은 로컬 신호 펄스와 글로벌 신호 펄스의 컨벡스(convex) 조합에 의해 각 펄스를 정류하는데 이용될 수 있으며, 이는 모션 아티팩트가 더 오랜 기간 존재할 때 정류된 신호가 크게 저하되지 않도록 도와준다.In addition, the proposed method can be used to rectify each pulse by a convex combination of a local signal pulse and a global signal pulse, which helps to prevent the rectified signal from degrading significantly when motion artifacts exist for a longer period. .

또한, 이 방법은 정류된 펄스를 리샘플링하여 평균 계산 중 손실된 주기 정보를 다시 획득하는데 이용될 수 있다. In addition, this method can be used to resample the rectified pulses to regain period information lost during the average calculation.

또한, 제안된 시계열 기반 전처리 방법을 사용하면 모션 아티팩트 수정에 중점을 두어 노이즈 효과를 제거할 수 있다.In addition, the proposed time series-based pre-processing method can remove noise effects by focusing on the correction of motion artifacts.

또한, 제안된 방법은 글로벌 신호 펄스와 함께 로컬 신호 펄스를 고려하며, 평균 상승 및 하강 펄스를 개별적으로 추정하는데 이용될 수 있다.In addition, the proposed method considers local signal pulses together with global signal pulses and can be used to individually estimate the average rising and falling pulses.

또한, 중간 정류된 펄스는 원래 개수의 샘플로 리샘플링되어 펄스 주기 정보가 손상되지 않으며 결과적으로 PPG 신호를 정확히 전처리 할 수 있다.In addition, the intermediate rectified pulse is resampled to the original number of samples, so that the pulse period information is not damaged, and as a result, the PPG signal can be accurately preprocessed.

이하, 일 실시예에 의한 PPG 신호 전처리 방법 및 장치에 대해 첨부한 도면을 참조하여 상세하게 설명한다.Hereinafter, a PPG signal preprocessing method and apparatus according to an embodiment will be described in detail with reference to the accompanying drawings.

도 1은 일 실시예에 따른 PPG 신호 전처리 장치의 블록도이다.1 is a block diagram of a PPG signal pre-processing apparatus according to an embodiment.

PPG 신호 전처리 장치(100)는 예를 들어 셀룰러 폰, 스마트 폰, Personal Digital Assistant(PDA), 테블릿 컴퓨터, 랩톱 컴퓨터, 스마트 워치, 스마트 밴드, 스마트 링 등이 될 수 있다.The PPG signal pre-processing device 100 may be, for example, a cellular phone, a smart phone, a Personal Digital Assistant (PDA), a tablet computer, a laptop computer, a smart watch, a smart band, a smart ring, and the like.

PPG 신호 전처리 장치(100)는 PPG 신호 수신기(110), 이동 평균 필터(120), 드리프트 제거 엔진(130), 모션 아티팩트 정정 엔진(140), 바이털 신호 예측 엔진(150), 메모리(160), 통신부(170) 및 프로세서(180)을 포함한다.The PPG signal preprocessing apparatus 100 includes a PPG signal receiver 110, a moving average filter 120, a drift removal engine 130, a motion artifact correction engine 140, a vital signal prediction engine 150, and a memory 160 , A communication unit 170 and a processor 180.

PPG 신호 수신기(110)는 펄스를 포함하는 PPG 신호를 수신하며, PPG 신호를 수신한 후, 이동 평균 필터(120)는 PPG 신호를 평활화한다. 일 실시 예에서, 도 8의 첫 번째 그래프는 PPG 신호를 나타낸다. 박스 내의 PPG 신호는 두 번째 그래프이며, 세 번째 그래프는 이동 평균 필터(120)를 적용한 후 평활화된 신호를 나타낸다.The PPG signal receiver 110 receives a PPG signal including a pulse, and after receiving the PPG signal, the moving average filter 120 smooths the PPG signal. In one embodiment, the first graph of FIG. 8 represents the PPG signal. The PPG signal in the box is the second graph, and the third graph represents the smoothed signal after applying the moving average filter 120.

PPG 신호의 평활화는 이동 평균 필터(120)를 이용하여 진행되는데 예를 들면, 이하 수학식 1의 이동 평균 필터(120)는 동일한 가중치(모든 계수는 1)를 가지는 윈도우 크기 21을 가진다. Smoothing of the PPG signal is performed using the moving average filter 120. For example, the moving average filter 120 of Equation 1 below has a window size 21 having the same weight (all coefficients are 1).

[수학식1][Equation 1]

Figure pat00001
Figure pat00001

평활화된 PPG 신호에 기초하여 드리프트 제거된 PPG 신호를 획득하기 위해, 드리프트 제거 엔진(130)은 피팅된 다항식 함수를 이용하여 평활화된 PPG 신호로부터 드리프트를 제거한다. 일 실시예에서, 드리프트 제거 엔진(130)은 피팅된 다항식 함수를 미리 정의된 평활화된 PPG 신호의 다항식 근사치로 결정하고, 드리프트 제거된 PPG 신호를 획득하기 위해 평활화된 PPG 신호로부터 피팅된 다항식 함수를 감산한다. 여기서 다항식 차수는 드리프트의 양과 PPG 신호의 길이에 따라 달라진다.To obtain a drift-removed PPG signal based on the smoothed PPG signal, the drift removal engine 130 removes drift from the smoothed PPG signal using a fitted polynomial function. In one embodiment, the drift removal engine 130 determines the fitted polynomial function as a polynomial approximation of a predefined smoothed PPG signal, and uses the fitted polynomial function from the smoothed PPG signal to obtain a drift-depleted PPG signal. Subtract. Here, the polynomial order depends on the amount of drift and the length of the PPG signal.

일 실시예에서, 전체 PPG 신호에 대해 30 차수의 다항식 핏(Polynomial fit of degree = 30)을 이용하여 PPG 신호의 드리프트 제거가 수행된다. 피팅된 다항식은 이하 수학식2에 따라 드리프트를 제거하기 위해 신호로부터 제거된다. In one embodiment, drift removal of the PPG signal is performed using a polynomial fit of degree = 30 for the entire PPG signal. The fitted polynomial is removed from the signal to eliminate drift according to Equation 2 below.

[수학식2][Equation 2]

Figure pat00002
Figure pat00002

Figure pat00003
Figure pat00003

상기 수학식2에서 폴리핏(polyfit) 함수는

Figure pat00004
에 대한 오차 손실의 제곱을 최소화 하는 다항식 차수 "
Figure pat00005
"를 제공한다. 반환값 P는 degree 0에서 특정 degree까지에 대한 다항식 변수의 계수에 해당하는 degree+1 실수의 벡터이다. 폴리벌(polyval)은
Figure pat00006
에 해당하는 개별 샘플링 포인트에서 다항식 팻(Polynomial Pat)을 평가한다.In Equation 2, the polyfit function is
Figure pat00004
Polynomial order to minimize squared error loss for "
Figure pat00005
". The return value P is a vector of real numbers of degree+1 corresponding to the coefficient of the polynomial variable for degree 0 to a specific degree. Polyval
Figure pat00006
The polynomial pat is evaluated at individual sampling points corresponding to.

도 9에서, 어두운 회색선은 PPG 신호의 다항식 핏(Polynomial fit)이고, 도 9의 두 번째 그래프는 드리프트 제거된 신호를 나타낸다.In FIG. 9, the dark gray line is a polynomial fit of the PPG signal, and the second graph of FIG. 9 shows the drift-removed signal.

드리프트 제거된 PPG 신호에 근거하여, 모션 아티팩트 정정 엔진(140)은 정류된 PPG 신호를 획득하기 위해 글로벌 신호 펄스와 이에 대응하는 로컬 신호 펄스의 조합으로 펄스를 대체하여 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정한다. Based on the drift-removed PPG signal, the motion artifact correction engine 140 replaces the pulse with a combination of a global signal pulse and a corresponding local signal pulse to obtain a rectified PPG signal, and thus the motion artifact of the drift-removed PPG signal. Correct it.

또한, 모션 아티팩트 정정 엔진(140)은 각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합으로 대체함으로써 중간 정류된 PPG 신호를 획득한다. In addition, the motion artifact correction engine 140 acquires an intermediate rectified PPG signal by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse.

또한, 모션 아티팩트 정정 엔진(140)은 중간 정류된 PPG 신호의 각 펄스를 상승 및 하강 펄스로 나누는데, 여기서 상기 상승 펄스의 샘플 개수는 평균 상승 길이이고 상기 하강 펄스의 샘플 개수는 평균 하강 길이에 해당한다. 평균 상승 길이는 각 상승 펄스의 샘플수의 평균으로써 획득되고, 평균 하강 길이는 각 하강 펄스의 샘플수의 평균으로써 획득된다.In addition, the motion artifact correction engine 140 divides each pulse of the intermediate rectified PPG signal into rising and falling pulses, where the number of samples of the rising pulse is the average rising length and the number of samples of the falling pulse corresponds to the average falling length. do. The average rising length is obtained as the average of the number of samples of each rising pulse, and the average falling length is obtained as the average of the number of samples of each falling pulse.

또한, 모션 아티팩트 정정 엔진(140)은 정류된 상승 펄스를 획득하기 위하여, 드리프트 제거된 PPG 신호에서 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하고, 정류된 하강 펄스를 획득하기 위하여 드리프트 제거된 PPG 신호에서 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링한다.In addition, the motion artifact correction engine 140 resamples each rising pulse with the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified rising pulse, and obtains a rectified falling pulse Each falling pulse is resampled by the number of samples of the falling pulse of the corresponding pulse in the drift-removed PPG signal.

또한, 모션 아티팩트 정정 엔진(140)은 정류된 PPG 신호를 획득하기 위해 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결한다.In addition, the motion artifact correction engine 140 connects each rectified rising pulse with a corresponding rectified falling pulse to obtain a rectified PPG signal.

이 때, 글로벌 신호 펄스가 결정되는 것은, 상기 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프 및 피크에 근거하여 상승 펄스 및 하강 펄스로 분할하고, 각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이를 획득하고, 각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이를 획득하고, 리샘플링된 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링하고, 리샘플링된 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링 하고, 상기 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득하고, 상기 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득하고, 상기 평균 상승 펄스와 상기 평균 하강 펄스를 연결함에 의해서 결정된다. 이때, 선형 보간법은 PPG 신호 처리 영역에서 통상의 지식을 가진 자에게 잘 알려진 프로세스에 해당한다.The global signal pulse is determined by dividing each pulse of the drift-removed PPG signal into rising and falling pulses based on the trough and peak of the drift-removed PPG signal, and the number of samples in each rising pulse. Re-sample each rising pulse to the average rising length using a linear interpolation method to obtain an average rising length as an average, an average falling length as an average of the number of samples in each falling pulse, and a resampled rising pulse, To obtain a resampled falling pulse, each falling pulse is resampled to the average falling length using a linear interpolation method, an average rising pulse is obtained as an average of the resampled rising pulses, and an average falling as an average of the resampled falling pulses It is determined by acquiring a pulse and connecting the average rising pulse and the average falling pulse. At this time, the linear interpolation method is a process well known to those of ordinary skill in the PPG signal processing area.

일 실시예에서, 트로프 및 피크는 평활화된 PPG 신호의 트로프 및 피크에 해당하는 샘플 인덱스를 나타낸다.In one embodiment, troughs and peaks represent sample indices corresponding to troughs and peaks of the smoothed PPG signal.

만일, S(i)=min(S(i-K):S(i+K)) 인 경우, 샘플 인덱스 i는 트로프이다. 여기서 K는 예상되는 최소 펄스폭의 절반이다. 샘플 속도(Sample rate)가 200Hz인 예에서, K는 35로 설정된다. If S(i)=min(S(i-K):S(i+K)), the sample index i is trough. Where K is half the expected minimum pulse width. In the example where the sample rate is 200 Hz, K is set to 35.

만일, S(i)=max(S(i-K):S(i+K)) 인 경우, 샘플 인덱스 i는 피크이다.If S(i)=max(S(i-K):S(i+K)), sample index i is a peak.

또한, 모션 아티팩트 정정 엔진(140)은 각 트로프가 피크를 따르거나 각 피크가 트로프를 따르도록 트로프 및 피크를 재조정함으로써 피크 및 트로프를 조정한다. 이를 통해, 첫 번째 트로프 이전과 마지막 트로프 이후에 발생하는 피크가 제거될 수 있으며, 그 결과 신호가 트로프 포인트에서 시작하고 끝이나게 될 수 있다.In addition, the motion artifact correction engine 140 adjusts peaks and troughs by adjusting the troughs and peaks so that each trough follows a peak or each peak follows a trough. Through this, peaks occurring before the first trough and after the last trough can be eliminated, and as a result, the signal may start and end at the trough point.

이 때, 로컬 신호 펄스가 결정되는 것은, 정류될 펄스 주위에 미리 정의된 개수의 로컬 펄스를 분리하고, 각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할하고, 리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 상기 평균 상승 길이로 리샘플링하며, 리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 평균 하강 길이로 리샘플링하며, 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득하며, 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결함에 의해서 로컬 신호 펄스가 결정된다.At this time, the local signal pulse is determined by separating a predefined number of local pulses around the pulse to be rectified, dividing each local pulse into a local rising pulse and a local falling pulse, and obtaining a resampled local rising pulse. In order to resample each local rising pulse to the average rising length using a linear interpolation method, each local falling pulse is resampled to an average falling length using a linear interpolation method to obtain a resampled local falling pulse, and the resampled local rising pulse. The local signal pulse is determined by acquiring an average local rising pulse as an average of, obtaining an average local falling pulse as an average of the resampled local falling pulses, and connecting the average local rising pulse and the average local falling pulse.

또한, 교체될 펄스는 첫 번째 트로프 이전과 마지막 트로프 이후에 발생하는 피크가 제거되도록 피크와 트로프를 조정하여 결정되며, 따라서 트로프에서 시작해서 트로프에서 끝나는 완전한 펄스만 정류로 간주된다.Also, the pulse to be replaced is determined by adjusting the peak and trough so that peaks occurring before the first trough and after the last trough are eliminated, so only complete pulses starting at the trough and ending at the trough are considered rectification.

정류된 PPG 신호를 획득한 후, 바이털 신호 예측 엔진(150)은 정류된 PPG 신호로부터 특징을 추출하고 추출된 특징을 근거로 바이털 신호를 예측한다. 바이털 신호는 혈압 레벨, 혈액 산소 레벨, 글루코스 값, 심박수 레벨 등을 나타내며, 이때 특징들은 예를 들어, 카이저 티저 에너지(Kaizer Teager Energy, KTE) 특징, 스펙트럼 엔트로피(Spectral Entropy) 특징 및 스펙트럼 에너지 대수(Spectral Energy Logarithmic) 특징의 평균, 분산 및 편포도(Skewness) 중 적어도 하나가 될 수 있다.After acquiring the rectified PPG signal, the vital signal prediction engine 150 extracts features from the rectified PPG signal and predicts the vital signal based on the extracted features. Vital signals indicate blood pressure levels, blood oxygen levels, glucose values, heart rate levels, etc., where the features are, for example, Kaizer Teager Energy (KTE) features, Spectral Entropy features and spectral energy logarithms (Spectral Energy Logarithmic) It may be at least one of the mean, variance and skewness of the feature.

프로세서(180)은 메모리(160)에 저장된 명령을 실행하고 다양한 프로세스를 수행한다. 또한, 통신부(170)는 하나 이상의 네트워크를 통해서 내부 하드웨어 구성요소들과 통신하거나 또는 외부 장치들과 통신할 수 있다.The processor 180 executes instructions stored in the memory 160 and performs various processes. In addition, the communication unit 170 may communicate with internal hardware components or external devices through one or more networks.

메모리(160)는 프로세서(180)에 의해 수행될 명령을 저장한다. 또한 메모리(160)는 비 휘발성 저장 장치(Non-volatile storage elements)를 포함할 수 있다. 이러한 비 휘발성 저장 장치의 예는 자기 하드 디스크, 광 디스크, 플로피 디스크, 플래시 메모리, Electrical Programmable Memory(EPROM) 또는 Electrically Erasable and Programmable Memory(EEPROM)를 포함할 수 있다. 또한, 일 실시예에서, 메모리(160)는 비 일시적 저장 매체(Non-transitory storage medium)로 간주될 수 있다. "비 일시적" 이라는 용어는 저장 매체가 반송파 또는 전파된 신호로 구현되지 않음을 나타낼 수 있다. 그러나 "비 일시적"은 메모리(160)가 움직일 수 없는 것으로 해석되어서는 안된다. 일 실시 예에서, 메모리(160)는 대용량 메모리에 해당할 수 있다. 또한, 비 일시적 저장 매체는 시간이 지남에 따라 변경될 수 있는 데이터를 저장할 수 있다. (예를 들어, Random Access Memory(RAM) 또는 캐시(Cache))The memory 160 stores instructions to be executed by the processor 180. Also, the memory 160 may include non-volatile storage elements. Examples of such non-volatile storage devices may include magnetic hard disks, optical disks, floppy disks, flash memories, electrical programmable memory (EPROM), or electrically electrically erasable and programmable memory (EEPROM). Also, in one embodiment, the memory 160 may be considered a non-transitory storage medium. The term "non-transitory" may indicate that the storage medium is not embodied as a carrier wave or a propagated signal. However, "non-transitory" should not be construed as memory 160 being immovable. In one embodiment, the memory 160 may correspond to a large capacity memory. In addition, non-transitory storage media can store data that can change over time. (For example, Random Access Memory (RAM) or Cache)

비록 도 1은 PPG 신호를 전처리 하기 위한 장치(100)의 다양한 하드웨어 구성요소를 도시하고 있지만, 다른 실시예들은 이에 제한되지 않는다. 다른 실시예에서 장치(100)는 더 많은 구성요소들을 포함할 수 있으며, 구성요소의 라벨이나 명칭은 단지 예시적인 목적으로 사용되면 권리 범위를 제한하지 않는다. 또한, PPG 신호를 처리하기 위해 동일하거나 실질적으로 유사한 기능을 수행하기 위해 하나 이상의 구성이 함께 결합될 수도 있다.Although FIG. 1 shows various hardware components of the apparatus 100 for preprocessing a PPG signal, other embodiments are not limited thereto. In other embodiments, the device 100 may include more components, and the label or name of the component is not used to limit the scope of rights when used for illustrative purposes only. Further, one or more configurations may be combined together to perform the same or substantially similar function to process the PPG signal.

도 2는 일 실시예에 따른 모션 아티팩트 정정 엔진(140)의 블록도이다. 2 is a block diagram of a motion artifact correction engine 140 according to one embodiment.

일 실시예에서, 모션 아티팩트 정정 엔진(140)은 중간 정류된 PPG 신호 획득부(140a), 펄스 리샘플링부(140b) 및 연결부(140c)를 포함한다. In one embodiment, the motion artifact correction engine 140 includes an intermediate rectified PPG signal acquisition unit 140a, a pulse resampling unit 140b, and a connection unit 140c.

중간 정류된 PPG 신호 획득부(140a)는 각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합으로 대체함으로써 중간 정류된 PPG 신호를 획득한다.The intermediate rectified PPG signal acquisition unit 140a acquires the intermediate rectified PPG signal by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse.

또한, 중간 정류된 PPG 신호 획득부(140a)는 중간 정류된 PPG 신호의 각 펄스를 상승 및 하강 펄스로 나누는데, 여기서 상기 상승 펄스의 샘플 개수는 평균 상승 길이이고 상기 하강 펄스의 샘플 개수는 평균 하강 길이에 해당한다.In addition, the intermediate rectified PPG signal acquisition unit 140a divides each pulse of the intermediate rectified PPG signal into rising and falling pulses, where the number of samples of the rising pulse is the average rising length and the number of samples of the falling pulse is the average falling Corresponds to the length.

펄스 리샘플링부(140b)는 드리프트 제거된 PPG 신호에서 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하여 정류된 상승 펄스를 획득하고, 드리프트 제거된 PPG 신호에서 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하여 정류된 하강 펄스를 획득한다.The pulse resampling unit 140b resamples each rising pulse with the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified rising pulse, and the falling pulse of the corresponding pulse in the drift-removed PPG signal. Each falling pulse is resampled by the number of samples to obtain a rectified falling pulse.

또한, 연결부(140c)는 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결하여 정류된 PPG 신호를 획득한다.In addition, the connection unit 140c obtains the rectified PPG signal by connecting the rectified rising pulse with a corresponding rectified falling pulse.

비록, 도 2에는 모션 아티팩트 정정 엔진(140)의 여러 하드웨어 구성을 도시하였지만, 이에 제한되지 않는 것으로 이해되어야 한다. 다른 실시예들에서 모션 아티팩트 정정 엔진(140)은 더 적거나 더 많은 수의 구성을 포함할 수 있다. 또한 구성의 라벨이나 명칭은 예시적 목적으로 사용되며 범위를 제한하지 않는다. 또한, PPG 신호를 처리하기 위해 동일하거나 실질적으로 유사한 기능을 수행하기 위해 하나 이상의 구성이 함께 결합될 수도 있다.Although FIG. 2 shows various hardware configurations of the motion artifact correction engine 140, it should be understood that the present invention is not limited thereto. In other embodiments, the motion artifact correction engine 140 may include fewer or more numbers of configurations. Also, the label or name of the composition is used for illustrative purposes and does not limit the scope. Further, one or more configurations may be combined together to perform the same or substantially similar function to process the PPG signal.

도 3은 일 실시예에 따른 PPG 신호를 전처리하고 바이털 신호 예측을 위해 특징을 추출하는 방법에 대한 흐름도이다. 3 is a flowchart of a method of preprocessing a PPG signal and extracting features for predicting a vital signal according to an embodiment.

먼저, 펄스를 포함하는 PPG 신호를 수신한다(S302). 이 경우, PPG 신호 수신기(110)가 PPG 신호를 수신한다.First, a PPG signal including a pulse is received (S302). In this case, the PPG signal receiver 110 receives the PPG signal.

다음으로, 이동 평균 필터(120)를 이용하여 PPG 신호를 평활화한다(S304).Next, the PPG signal is smoothed using the moving average filter 120 (S304).

다음으로, 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득한다(S306). 이 경우, 드리프트 제거 엔진(130)이 드리프트 제거된 PPG 신호를 획득한다.Next, a drift-removed PPG signal is obtained by removing drift from the smoothed PPG signal using a fitted polynomial function (S306). In this case, the drift removal engine 130 acquires the PPG signal with the drift removed.

다음으로, 정류된 PPG 신호를 획득하기 위하여 각 펄스를 글로벌 신호 펄스 및 로컬 신호 펄스의 조합으로 대체하여 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정한다(S308). 이 경우, 모션 아티팩트 정정 엔진(140)이 이용된다.Next, to obtain the rectified PPG signal, each pulse is replaced with a combination of a global signal pulse and a local signal pulse to correct the motion artifact of the drift-removed PPG signal (S308). In this case, the motion artifact correction engine 140 is used.

다음으로, 정류된 PPG 신호로부터 특징을 추출하며(S310), 바이털 신호 예측 엔진(150)이 정류된 PPG 신호로부터 특징을 추출한다.Next, the feature is extracted from the rectified PPG signal (S310), and the vital signal prediction engine 150 extracts the feature from the rectified PPG signal.

다음으로, 추출된 특징들에 근거하여 바이털 신호를 예측하며(S312), 바이털 신호 예측 엔진(150)이 바이털 신호를 예측한다.Next, the vital signal is predicted based on the extracted features (S312 ), and the vital signal prediction engine 150 predicts the vital signal.

PPG 신호를 전처리하고 바이털 신호 예측을 위해 특징을 추출하는 방법에 대한 흐름도는 제시된 순서, 상이한 순서 또는 동시에 수행될 수 있다. 또한, 상기 순서는 생략, 추가, 수정 등이 가능하다.Flow charts for a method of preprocessing a PPG signal and extracting features for predicting a vital signal can be performed in the order presented, in a different order or simultaneously. In addition, the above procedure can be omitted, added, modified, and the like.

도 4는 일 실시예에 따른 드리프트 제거된 PPG 신호를 획득하기 위해 피팅된 다항식 함수를 이용하여 평활화된 PPG 신호로부터 드리프트를 제거하는 것에 대한 흐름도이다. 이 단계들(S402 및 S404)은 드리프트 제거 엔진(130)에 의해서 수행된다.4 is a flow chart for removing drift from a smoothed PPG signal using a fitted polynomial function to obtain a drift-removed PPG signal according to an embodiment. These steps S402 and S404 are performed by the drift removal engine 130.

먼저, 피팅된 다항식 함수를 미리 정의된 상기 평활화된 PPG 신호의 다항식 근사치로 결정한다(S402).First, a fitted polynomial function is determined as a polynomial approximation of the predefined smoothed PPG signal (S402).

다음으로, 평활화된 PPG 신호로부터 피팅된 다항식 함수를 감산하여 드리프트 제거된 PPG 신호를 획득한다(S404).Next, a drift-removed PPG signal is obtained by subtracting the fitted polynomial function from the smoothed PPG signal (S404).

상기 흐름도는 제시된 순서, 상이한 순서 또는 동시에 수행될 수 있다. 또한, 상기 순서는 생략, 추가, 수정 등이 가능하다.The flowcharts can be performed in the order presented, in a different order or simultaneously. In addition, the above procedure can be omitted, added, modified, and the like.

도 5는 일 실시예에 따른 정류된 PPG 신호를 획득하기 위해 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 것에 대한 흐름도이다. 이 단계들(S502 에서 S510)은 모션 아티팩트 정정 엔진(140)에 의해서 수행된다.5 is a flowchart of correcting a motion artifact of a drift-removed PPG signal to obtain a rectified PPG signal according to an embodiment. These steps (S502 to S510) are performed by the motion artifact correction engine 140.

먼저, 각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합으로 대체함으로써 중간 정류된 PPG 신호를 획득한다(S502).First, an intermediate rectified PPG signal is obtained by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse (S502).

다음으로, 중간 정류된 PPG 신호의 각 펄스를 상승 및 하강 펄스로 나눈다(S504). 이 때, 상승 펄스의 샘플 개수는 평균 상승 길이이고, 하강 펄스의 샘플 개수는 평균 하강 길이에 해당한다.Next, each pulse of the intermediate rectified PPG signal is divided into rising and falling pulses (S504). At this time, the number of samples of the rising pulse is the average rising length, and the number of samples of the falling pulse corresponds to the average falling length.

다음으로, 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하여 정류된 상승 펄스를 획득한다(S506).Next, each rising pulse is resampled by the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified rising pulse (S506).

다음으로, 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하여 정류된 하강 펄스를 획득한다(S508).Next, each falling pulse is resampled by the number of samples of the falling pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified falling pulse (S508).

다음으로, 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결하여 정류된 PPG 신호를 획득한다(S510).Next, each rectified rising pulse is connected to a corresponding rectified falling pulse to obtain a rectified PPG signal (S510).

상기 흐름도는 제시된 순서, 상이한 순서 또는 동시에 수행될 수 있다. 또한, 상기 순서는 생략, 추가, 수정 등이 가능하다.The flowcharts can be performed in the order presented, in a different order or simultaneously. In addition, the above procedure can be omitted, added, modified, and the like.

도 6은 일 실시예에 따른 글로벌 신호 펄스를 결정하는 것에 대한 흐름도이다. 이 단계들(S602 에서 S616)은 모션 아티팩트 정정 엔진(140)에 의해서 수행된다.6 is a flow diagram for determining a global signal pulse according to one embodiment. These steps (S602 to S616) are performed by the motion artifact correction engine 140.

먼저, 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프 및 피크에 근거하여 상승 펄스 및 하강 펄스로 분할한다(S602).First, each pulse of the drift-removed PPG signal is divided into a rising pulse and a falling pulse based on the trough and peak of the drift-removed PPG signal (S602).

다음으로, 각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이를 획득한다(S604).Next, an average rising length is obtained as an average of the number of samples in each rising pulse (S604).

다음으로, 각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이를 획득한다(S606).Next, an average falling length is obtained as an average of the number of samples in each falling pulse (S606).

다음으로, 선형 보간법을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링하여 리샘플링된 상승 펄스를 획득한다(S608).Next, each rising pulse is resampled to the average rising length using a linear interpolation method to obtain a resampled rising pulse (S608).

다음으로, 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링하여 리샘플링된 하강 펄스를 획득한다(S610).Next, each falling pulse is resampled to the average falling length using a linear interpolation method to obtain a resampled falling pulse (S610).

다음으로, 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득한다(S612).Next, an average rising pulse is obtained as an average of the resampled rising pulse (S612).

다음으로, 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득한다(S614).Next, an average falling pulse is obtained as an average of the resampled falling pulse (S614).

다음으로, 평균 상승 펄스와 상기 평균 하강 펄스를 연결하여 글로벌 신호 펄스를 결정한다(S616).Next, a global signal pulse is determined by connecting the average rising pulse and the average falling pulse (S616).

상기 흐름도는 제시된 순서, 상이한 순서 또는 동시에 수행될 수 있다. 또한, 상기 순서는 생략, 추가, 수정 등이 가능하다.The flowcharts can be performed in the order presented, in a different order or simultaneously. In addition, the above procedure can be omitted, added, modified, and the like.

도 7은 일 실시예에 따른 로컬 신호 펄스를 결정하는 것에 대한 흐름도이다. 이 단계들(S702 에서 S712)은 모션 아티팩트 정정 엔진(140)에 의해서 수행된다.7 is a flow diagram for determining a local signal pulse according to one embodiment. These steps (S702 to S712) are performed by the motion artifact correction engine 140.

먼저, 정류될 펄스 주위에서 드리프트 제거된 PPG 신호의 미리 정의된 개수의 로컬 펄스를 분리한다(S702).First, a pre-defined number of local pulses of the drift-removed PPG signal around the pulse to be rectified is separated (S702).

다음으로, 각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할한다(S704).Next, each local pulse is divided into a local rising pulse and a local falling pulse (S704).

다음으로, 리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 상기 평균 상승 길이로 리샘플링한다(S706).Next, each local rising pulse is resampled to the average rising length using a linear interpolation method to obtain a resampled local rising pulse (S706).

다음으로, 리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 평균 하강 길이로 리샘플링한다(S708).Next, each local falling pulse is resampled to an average falling length using a linear interpolation method to obtain a resampled local falling pulse (S708).

다음으로, 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득한다(S710).Next, an average local rising pulse is obtained as an average of the resampled local rising pulses, and an average local falling pulse is obtained as an average of the resampled local falling pulses (S710 ).

다음으로, 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결함에 의해서 로컬 신호 펄스가 결정된다(S712).Next, a local signal pulse is determined by connecting the average local rising pulse and the average local falling pulse (S712).

상기 흐름도는 제시된 순서, 상이한 순서 또는 동시에 수행될 수 있다. 또한, 상기 순서는 생략, 추가, 수정 등이 가능하다.The flowcharts can be performed in the order presented, in a different order or simultaneously. In addition, the above procedure can be omitted, added, modified, and the like.

도 10은 평균 상승 펄스와 평균 하강 펄스가 계산되고, 글로벌/로컬 신호 펄스를 획득하기 위해 연결되는 것을 도시한 그래프이다.10 is a graph showing that the average rising pulse and the average falling pulse are calculated and connected to obtain global/local signal pulses.

초기에, 모션 아티팩트 정정 엔진(140)은

Figure pat00007
라고 표시된 펄스의 상승 신호의 샘플의 평균 개수를 결정한다.
Figure pat00008
는 평균 상승 길이에 해당한다.Initially, the motion artifact correction engine 140
Figure pat00007
Determine the average number of samples of the rising signal of the pulse marked.
Figure pat00008
Is the average length of ascent.

또한, 모션 아티팩트 정정 엔진(140)은

Figure pat00009
라고 표시된 펄스의 하강 신호의 샘플의 평균 개수를 결정한다.
Figure pat00010
는 평균 하강 길이에 해당한다.In addition, the motion artifact correction engine 140
Figure pat00009
Determine the average number of samples of the falling signal of the pulse marked.
Figure pat00010
Is the average descent length.

또한, 모션 아티팩트 정정 엔진(140)은

Figure pat00011
샘플을 갖도록 각 상승 펄스를 리샘플링하고,
Figure pat00012
샘플을 갖도록 각 하강 펄스를 리샘플링한다.In addition, the motion artifact correction engine 140
Figure pat00011
Resample each rising pulse to have a sample,
Figure pat00012
Each falling pulse is resampled to have a sample.

그리고 나서, k번째 펄스는 이하 수학식3으로 표현된다.Then, the k-th pulse is expressed by Equation 3 below.

[수학식3][Equation 3]

Figure pat00013
Figure pat00013

Figure pat00014
Figure pat00014

만일, L 펄스들이 신호에 존재하면, 전체 신호는 수학식4로 표현된다.If L pulses are present in the signal, the entire signal is expressed by Equation (4).

[수학식4][Equation 4]

Figure pat00015
Figure pat00015

또한, 평균 상승 펄스와 평균 하강 펄스는 각각 수학식5로 표현된다.In addition, the average rising pulse and the average falling pulse are respectively expressed by Equation (5).

[수학식5][Equation 5]

Figure pat00016
Figure pat00016

Figure pat00017
Figure pat00017

여기서,

Figure pat00018
Figure pat00019
는 각각 평균 상승 펄스의 ith 샘플값과 평균 하강 펄스의 ith 샘플값을 나타낸다.here,
Figure pat00018
Wow
Figure pat00019
Denotes the ith sample value of the average rising pulse and the ith sample value of the average falling pulse, respectively.

따라서, 글로벌 신호 펄스는 수학식6에 해당한다 Therefore, the global signal pulse corresponds to Equation (6).

[수학식6] [Equation 6]

Figure pat00020
Figure pat00020

Figure pat00021
Figure pat00021

각 k번째 펄스

Figure pat00022
에 대해, 모션 아티팩트 정정 엔진(140)은 수학식7에 따라 다음의 로컬 신호 펄스로 지칭되는 M 펄스 윈도우 평균을 계산한다.Each k th pulse
Figure pat00022
With respect to, the motion artifact correction engine 140 calculates the M pulse window average referred to as the following local signal pulse according to Equation (7).

[수학식7] [Equation 7]

Figure pat00023
Figure pat00023

로컬 신호 펄스는 K번째 펄스, (M/2) 왼쪽 및 (M/2) 오른쪽, 주위의 M펄스의 평균에 해당한다. 또한, K번째 펄스에 대해, 윈도우 내의 펄스에 동일하게 가중치를 부여하는 대신, K번째 펄스에 더 가까운 펄스에 더 많은 가중치를 주는 (그러나 이에 한정되지는 않는다.) 차등 가중치 부여 방식이 적용될 수 있다. The local signal pulse corresponds to the average of the Kth pulse, (M/2) left and (M/2) right, and the surrounding M pulses. In addition, for the Kth pulse, a differential weighting scheme may be applied to give (but is not limited to) more weight to a pulse closer to the Kth pulse, instead of equally weighting the pulses in the window. .

중간 정류된 K번째 펄스는 수학식8에 따라 글로벌 신호 펄스와 K번째 로컬 신호 펄스의 가중합에 해당한다. The intermediate rectified K-th pulse corresponds to a weighted sum of the global signal pulse and the K-th local signal pulse according to Equation (8).

[수학식8] [Equation 8]

Figure pat00024
Figure pat00025
Figure pat00024
Figure pat00025

각 펄스가 정정되면, 모션 아티팩트 정정 엔진(140)은 각 펄스를 드리프트 제거된 신호의 실제 샘플 개수로 리샘플링한다. 이 과정은 각 펄스에 대해 바이털 주기 정보를 잃지 않기 위해서 수행된다. When each pulse is corrected, the motion artifact correction engine 140 resamples each pulse to the actual number of samples of the drift-drived signal. This process is performed in order not to lose vital cycle information for each pulse.

도 11은 α = 0.3, M = 3 일때 드리프트 제거된 원래의 신호와 정류된 PPG 신호를 도시한 그래프이다. 오른쪽은 왼쪽의 신호 섹션의 스냅샷이다. 도면에서 섭동(Perturbation)은 수정되었다. FIG. 11 is a graph showing the original signal rectified and the rectified PPG signal when α=0.3 and M=3. Right is a snapshot of the signal section on the left. Perturbation in the drawing has been corrected.

도 12는 α = 0.5, M = 5 일때 드리프트 제거된 원래의 신호와 정류된 PPG 신호를 도시한 그래프이다. 오른쪽은 왼쪽의 신호 섹션의 스냅샷이다. 펄스는 도10과 비교하여 균일하다. FIG. 12 is a graph showing the original signal rectified and the rectified PPG signal when α = 0.5 and M = 5. Right is a snapshot of the signal section on the left. The pulse is uniform compared to Fig. 10.

여기서 α와 M은 하이퍼 파라미터로 동작한다. α와 M의 값이 클수록 펄스는 더 균일해진다. α와 M의 최적값은 교차 검증(Cross Validation)을 통해서 하이퍼튠(Hypertune) 될 수 있거나, 신호에 대한 사전 지식을 통합하여 설정될 수 있다. Here, α and M operate as hyperparameters. The larger the values of α and M, the more uniform the pulse. The optimal values of α and M can be hypertuned through cross validation, or can be set by integrating prior knowledge of the signal.

도 13은 품질 평가 메트릭스를 정의하기 위한 PPG 신호의 특성을 나타내는 그래프이다. 13 is a graph showing characteristics of a PPG signal for defining a quality evaluation metric.

상기 제안된 방법의 성능을 결정하기 위해, 처리된 신호의 품질이 평가되어야 한다. 전처리 데이터의 품질은 a) 펄스 진폭 분산(Pulse amplitude variance)과 b) 트로프 깊이 분산(Trough depth variance)를 이용하여 평가될 수 있다. To determine the performance of the proposed method, the quality of the processed signal must be evaluated. The quality of the pre-processing data can be evaluated using a) Pulse amplitude variance and b) Trough depth variance.

a) 펄스 진폭 분산 a) Pulse amplitude dispersion

Ⅰ. 펄스 진폭은 이전 트로프의 펄스 피크의 높이로 정의된다. Ⅰ. The pulse amplitude is defined as the height of the pulse peak of the previous trough.

Ⅱ. PPG 신호에서 피크와 트로프를 식별하여 펄스 진폭을 계산한다. Ⅱ. Pulse amplitude is calculated by identifying peaks and troughs in the PPG signal.

Ⅲ. 각 피크와 이전 트로프의 차이가 계산된다. Ⅲ. The difference between each peak and the previous trough is calculated.

Ⅳ. 각 차이의 분산은 펄스 진폭 분산으로 간주된다. Ⅳ. The variance of each difference is considered the pulse amplitude variance.

b) 트로프 깊이 분산b) Trough depth dispersion

Ⅰ. 트로프 깊이는 두개의 연속 트로프 사이의 절대 차이(Absolute Difference)로 정의된다. Ⅰ. The trough depth is defined as the absolute difference between two successive troughs.

Ⅱ. 트로프 깊이는 신호로부터 피크 사이의 트로프를 식별하여 계산된다. Ⅱ. The trough depth is calculated by identifying the trough between peaks from the signal.

Ⅲ. 식별된 각 트로프의 절대 차이가 계산된다. Ⅲ. The absolute difference of each trough identified is calculated.

Ⅳ. 각 차이의 분산은 트로프 깊이 분산으로 간주된다. Ⅳ. The variance of each difference is considered the trough depth variance.

혈액량의 변화는 1분 동안에 급격히 변화될 것으로 기대되지 않으며, 따라서 PPG 파형 변화도 유사할 것이다. 이는 전처리된 데이터에 대해 펄스 진폭 분산과 트로프 깊이 분산이 감소해야 함을 의미한다. The change in blood volume is not expected to change rapidly in 1 minute, so the PPG waveform change will be similar. This means that pulse amplitude variance and trough depth variance should be reduced for preprocessed data.

상기 실시예들은 적어도 하나 이상의 하드웨어 장치에 의해서 실행되고 구성들을 제어하기 위해 네트워크 관리 기능을 수행하는 적어도 하나 이상의 소프트웨어 프로그램을 사용하여 구현될 수 있다. The above embodiments can be implemented using at least one software program executed by at least one hardware device and performing a network management function to control configurations.

한편, 본 실시 예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. On the other hand, the present embodiments can be implemented in computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 실시예들을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tapes, floppy disks, optical data storage devices, etc., and also implemented in the form of carrier waves (for example, transmission via the Internet). Includes. In addition, the computer-readable recording medium can be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the embodiments can be easily inferred by programmers in the technical field to which the present invention pertains.

본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 개시된 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Those of ordinary skill in the art to which the present disclosure pertains will appreciate that it may be implemented in other specific forms without changing the disclosed technical spirit or essential features. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.

100: PPG 신호 전처리 장치 110: PPG 신호 수신기
120: 이동 평균 필터 130: 드리프트 제거 엔진
140: 모션 아티팩트 정정 엔진 150: 바이털 신호 예측 엔진
160: 메모리 170: 통신부
180: 프로세서
140a: 중간 정류된 PPG 신호 획득부
140b: 펄스 리샘플링부
140c: 연결부
100: PPG signal pre-processing device 110: PPG signal receiver
120: moving average filter 130: drift removal engine
140: motion artifact correction engine 150: vital signal prediction engine
160: memory 170: communication unit
180: processor
140a: intermediate rectified PPG signal acquisition unit
140b: pulse resampling unit
140c: connection

Claims (20)

펄스를 포함하는 PPG(Photoplethysmography) 신호를 수신하는 단계;
이동 평균 필터를 이용하여 상기 PPG 신호를 평활화하여 평활화된 PPG 신호를 획득하는 단계;
피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득하는 단계; 및
정류된 PPG 신호를 획득하기 위하여 상기 펄스를 글로벌 신호 펄스 및 로컬 신호 펄스의 조합으로 대체하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 단계;를 포함하는, PPG 신호 전처리 방법.
Receiving a PPG (Photoplethysmography) signal including a pulse;
Smoothing the PPG signal using a moving average filter to obtain a smoothed PPG signal;
Removing drift from the smoothed PPG signal using a fitted polynomial function to obtain a drift-removed PPG signal; And
And correcting the motion artifact of the drift-removed PPG signal by replacing the pulse with a combination of a global signal pulse and a local signal pulse to obtain a rectified PPG signal.
제1항에 있어서,
상기 정류된 PPG 신호로부터 특징을 추출하는 단계; 및
상기 추출된 특징에 근거하여 바이털 신호값을 예측하는 단계를 더 포함하는, PPG 신호 전처리 방법.
According to claim 1,
Extracting features from the rectified PPG signal; And
And predicting a vital signal value based on the extracted feature.
제1항에 있어서,
상기 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하여 드리프트 제거된 PPG 신호를 획득하는 단계는,
상기 피팅된 다항식 함수를 미리 정의된 상기 평활화된 PPG 신호의 다항식 근사치로 결정하는 단계; 및
상기 드리프트 제거된 PPG 신호를 획득하기 위해 상기 평활화된 PPG 신호로부터 피팅된 다항식 함수를 감산하는 단계;를 포함하는, PPG 신호 전처리 방법.
According to claim 1,
Using the fitted polynomial function to remove drift from the smoothed PPG signal to obtain a drift-removed PPG signal,
Determining the fitted polynomial function as a polynomial approximation of the predefined smoothed PPG signal; And
And subtracting a fitted polynomial function from the smoothed PPG signal to obtain the drift-removed PPG signal.
제1항에 있어서,
상기 글로벌 신호 펄스는,
상기 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프(trough) 및 피크(peak)에 근거하여 상승 펄스 및 하강 펄스로 분할하는 단계;
각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이를 획득하는 단계;
각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이를 획득하는 단계;
리샘플링된 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링 하는 단계;
리샘플링된 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링 하는 단계;
상기 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득하는 단계;
상기 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득하는 단계; 및
상기 평균 상승 펄스와 상기 평균 하강 펄스를 연결하는 단계에 의해서 결정되는 것을 특징으로 하는, PPG 신호 전처리 방법.
According to claim 1,
The global signal pulse,
Dividing each pulse of the drift-removed PPG signal into rising and falling pulses based on troughs and peaks of the drift-removed PPG signal;
Obtaining an average rise length as an average of the number of samples in each rise pulse;
Obtaining an average falling length as an average of the number of samples in each falling pulse;
Resampling each rising pulse to the average rising length using a linear interpolation method to obtain a resampled rising pulse;
Resampling each falling pulse to the average falling length using a linear interpolation method to obtain a resampled falling pulse;
Obtaining an average rising pulse as an average of the resampled rising pulses;
Obtaining an average falling pulse as an average of the resampled falling pulses; And
PPG signal pre-processing method characterized in that it is determined by the step of connecting the average rising pulse and the average falling pulse.
제1항에 있어서,
상기 로컬 신호 펄스는,
정류될 펄스 주위에 상기 드리프트 제거된 PPG 신호의 미리 정의된 개수의 로컬 펄스를 분리하는 단계;
각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할하는 단계;
리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 평균 상승 길이로 리샘플링하는 단계;
리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 평균 하강 길이로 리샘플링하는 단계;
상기 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 상기 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득하는 단계; 및
상기 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결하는 단계에 의해서 결정되는 것을 특징으로 하는, PPG 신호 전처리 방법.
According to claim 1,
The local signal pulse,
Separating a predefined number of local pulses of the drift-removed PPG signal around the pulse to be rectified;
Dividing each local pulse into a local rising pulse and a local falling pulse;
Resampling each local rise pulse to an average rise length using a linear interpolation method to obtain a resampled local rise pulse;
Resampling each local falling pulse to an average falling length using a linear interpolation method to obtain a resampled local falling pulse;
Obtaining an average local rising pulse as an average of the resampled local rising pulses and obtaining an average local falling pulse as an average of the resampled local falling pulses; And
PPG signal pre-processing method characterized in that it is determined by the step of connecting the average local rising pulse and the average local falling pulse.
제1항에 있어서,
정류된 PPG 신호를 획득하기 위하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 단계는,
각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합(Convex combination)으로 대체함으로써 중간 정류된 PPG 신호를 획득하는 단계; 및
상기 드리프트 제거된 PPG 신호의 대응하는 펄스 내의 샘플들의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 단계를 포함하는 PPG 신호 전처리 방법.
According to claim 1,
Correcting a motion artifact of the drift-removed PPG signal to obtain a rectified PPG signal includes:
Obtaining an intermediate rectified PPG signal by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse; And
And resampling each pulse of the intermediate rectified PPG signal with the number of samples in the corresponding pulse of the drift-removed PPG signal.
제6항에 있어서,
상기 드리프트 제거된 PPG 신호의 대응하는 펄스 내의 샘플들의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 단계는,
상기 중간 정류된 PPG 신호의 각 펄스를, 샘플 개수가 평균 상승 길이에 해당하는 상승 펄스 및 샘플 개수가 평균 하강 길이에 해당하는 하강 펄스로 나누는 단계;
정류된 상승 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하는 단계;
정류된 하강 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하는 단계; 및
상기 정류된 PPG 신호를 획득하기 위해 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결하는 단계를 포함하는 PPG 신호 전처리 방법.
The method of claim 6,
Resampling each pulse of the intermediate rectified PPG signal with the number of samples in the corresponding pulse of the drift-removed PPG signal includes:
Dividing each pulse of the intermediate rectified PPG signal into a rising pulse whose number of samples corresponds to an average rising length and a falling pulse whose number of samples corresponds to an average falling length;
Resampling each rising pulse with the number of samples of the rising pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified rising pulse;
Resampling each falling pulse with the number of samples of the falling pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified falling pulse; And
And a step of connecting each rectified rising pulse with a corresponding rectified falling pulse to obtain the rectified PPG signal.
제4항에 있어서,
상기 트로프(trough) 및 피크(peak)는 상기 평활화된 PPG 신호의 트로프 및 피크에 대응하는 샘플 인덱스를 나타내는 PPG 신호 전처리 방법.
According to claim 4,
The trough and peak (peak) is a PPG signal pre-processing method indicating a sample index corresponding to the trough and peak of the smoothed PPG signal.
제1항에 있어서,
상기 대체될 펄스는 첫 번째 트로프 이전이고 마지막 트로프 이후에 발생하는 피크가 제거되도록 피크 및 트로프를 조절함에 의해서 결정되고, 그 결과 트로프에서 시작해서 트로프에서 끝나는 펄스만 정류되는 PPG 신호 전처리 방법.
According to claim 1,
The pulse to be replaced is determined by adjusting peaks and troughs such that peaks occurring before and after the first trough are removed, and as a result, only the pulses starting at the trough and ending at the trough are rectified.
제2항에 있어서,
상기 특징은 카이저 티저 에너지(Kaizer Teager Energy, KTE) 특징, 스펙트럼 엔트로피(Spectral Entropy) 특징 및 스펙트럼 에너지 대수(Spectral Energy Logarithmic) 특징의 평균, 분산 및 편포도(Skewness) 중 적어도 하나를 포함하는 PPG 신호 전처리 방법.
According to claim 2,
The feature is a PPG signal including at least one of Kaiser Teager Energy (KTE) features, Spectral Entropy features and Spectral Energy Logarithmic features. Pretreatment method.
펄스를 포함하는 PPG 신호를 수신하는 PPG 신호 수신기;
평활화된 PPG 신호를 획득하기 위해 상기 PPG 신호를 평활화 하는 이동 평균 필터;
드리프트 제거된 PPG 신호를 획득하기 위하여 피팅된 다항식 함수를 이용하여 상기 평활화된 PPG 신호로부터 드리프트를 제거하는 드리프트 제거 엔진;
정류된 PPG 신호를 획득하기 위해 글로벌 신호 펄스와 로컬 신호 펄스의 조합으로 상기 펄스를 대체하여 상기 드리프트 제거된 PPG 신호의 모션 아티팩트를 정정하는 모션 아티팩트 정정 엔진을 포함하는 PPG 신호 전처리 장치.
A PPG signal receiver for receiving a PPG signal including pulses;
A moving average filter that smoothes the PPG signal to obtain a smoothed PPG signal;
A drift removal engine that removes drift from the smoothed PPG signal using a fitted polynomial function to obtain a drift-removed PPG signal;
And a motion artifact correction engine that corrects the motion artifact of the drift-removed PPG signal by replacing the pulse with a combination of a global signal pulse and a local signal pulse to obtain a rectified PPG signal.
제11항에 있어서,
상기 정류된 PPG 신호로부터 특징을 추출하고, 추출된 특징을 근거로 바이털 신호를 예측하는 바이털 신호 예측 엔진을 더 포함하는 PPG 신호 전처리 장치.
The method of claim 11,
PPG signal pre-processing apparatus further comprising a vital signal prediction engine that extracts features from the rectified PPG signal and predicts a vital signal based on the extracted features.
제11항에 있어서,
상기 드리프트 제거 엔진은
상기 피팅된 다항식 함수를 미리 정의된 평활화된 PPG 신호의 다항식 근사치로 결정하고, 상기 드리프트 제거된 PPG 신호를 획득하기 위해 상기 평활화된 PPG 신호로부터 피팅된 다항식 함수를 계산하는 PPG 신호 전처리 장치.
The method of claim 11,
The drift removal engine
A PPG signal pre-processing device for determining the fitted polynomial function as a polynomial approximation of a predefined smoothed PPG signal and calculating a fitted polynomial function from the smoothed PPG signal to obtain the drift-removed PPG signal.
제11항에 있어서,
상기 글로벌 신호 펄스는
상기 드리프트 제거된 PPG 신호의 각 펄스를 상기 드리프트 제거된 PPG 신호의 트로프(Trough) 및 피크(Peak)에 근거하여 상승 펄스 및 하강 펄스로 분할하고, 각 상승 펄스에서 샘플 개수의 평균으로서 평균 상승 길이를 획득하고,각 하강 펄스에서 샘플 개수의 평균으로서 평균 하강 길이를 획득하고,리샘플링된 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 상승 펄스를 상기 평균 상승 길이로 리샘플링 하고, 리샘플링된 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 하강 펄스를 상기 평균 하강 길이로 리샘플링 하고, 상기 리샘플링된 상승 펄스의 평균으로서 평균 상승 펄스를 획득하고, 상기 리샘플링된 하강 펄스의 평균으로서 평균 하강 펄스를 획득하고, 상기 평균 상승 펄스와 상기 평균 하강 펄스를 연결하는 것에 의해서 결정되는 PPG 신호 전처리 장치.
The method of claim 11,
The global signal pulse
Each pulse of the drift-removed PPG signal is divided into rising and falling pulses based on the trough and peak of the drift-removed PPG signal, and the average rising length as the average of the number of samples in each rising pulse To obtain the average falling length as an average of the number of samples in each falling pulse, and to obtain a resampled rising pulse, each rising pulse is resampled to the average rising length using a linear interpolation method, and the resampled falling pulse is obtained. To obtain, each falling pulse is resampled to the average falling length using a linear interpolation method, an average rising pulse is obtained as an average of the resampled rising pulses, and an average falling pulse is obtained as an average of the resampled falling pulses, PPG signal pre-processing device determined by connecting the average rising pulse and the average falling pulse.
제11항에 있어서,
상기 로컬 신호 펄스는
정류될 펄스 주위에 상기 드리프트 제거된 PPG 신호의 미리 정의된 개수의 로컬 펄스를 분리하고, 각 로컬 펄스를 로컬 상승 펄스 및 로컬 하강 펄스로 분할하고, 리샘플링된 로컬 상승 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 상승 펄스를 평균 상승 길이로 리샘플링하고, 리샘플링된 로컬 하강 펄스를 획득하기 위해 선형 보간법을 이용하여 각 로컬 하강 펄스를 평균 하강 길이로 리샘플링하고, 상기 리샘플링된 로컬 상승 펄스의 평균으로서 평균 로컬 상승 펄스를 획득하고, 상기 리샘플링된 로컬 하강 펄스의 평균으로서 평균 로컬 하강 펄스를 획득하고, 상기 평균 로컬 상승 펄스와 상기 평균 로컬 하강 펄스를 연결하는 것에 의해서 결정되는 것을 특징으로 하는 PPG 신호 전처리 장치.
The method of claim 11,
The local signal pulse
Linear interpolation is used to separate a predefined number of local pulses of the drift-removed PPG signal around the pulse to be rectified, divide each local pulse into a local rising pulse and a local falling pulse, and obtain a resampled local rising pulse. Each local rising pulse is resampled to an average rising length, and each local falling pulse is resampled to an average falling length using a linear interpolation method to obtain a resampled local falling pulse, and averaged as an average of the resampled local rising pulses. PPG signal pre-processing apparatus characterized by determining by acquiring a local rising pulse, obtaining an average local falling pulse as an average of the resampled local falling pulses, and connecting the average local rising pulse and the average local falling pulse. .
제11항에 있어서,
상기 모션 아티팩트 정정 엔진은
각 로컬 신호 펄스를 상기 로컬 신호 펄스와 상기 글로벌 신호 펄스의 컨벡스 조합(Convex combination)으로 대체함으로써 중간 정류된 PPG 신호를 획득하고,
드리프트 제거된 PPG 신호의 각 펄스 내의 샘플의 개수로 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 것을 특징으로 하는 PPG 신호 전처리 장치.
The method of claim 11,
The motion artifact correction engine
Intermediate rectified PPG signal is obtained by replacing each local signal pulse with a convex combination of the local signal pulse and the global signal pulse,
PPG signal pre-processing device characterized in that for re-sampling each pulse of the intermediate rectified PPG signal with the number of samples in each pulse of the drift-removed PPG signal.
제16항에 있어서,
상기 모션 아티팩트 정정 엔진이 상기 드리프트 제거된 PPG 신호의 각 펄스 내의 샘플의 개수로 상기 중간 정류된 PPG 신호의 각 펄스를 리샘플링하는 것은,
상기 중간 정류된 PPG 신호의 각 펄스를, 샘플 개수가 평균 상승 길이에 해당하는 상승 펄스 및 샘플 개수가 평균 하강 길이에 해당하는 하강 펄스로 나누고, 정류된 상승 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 상승 펄스의 샘플 개수로 각 상승 펄스를 리샘플링하고, 정류된 하강 펄스를 획득하기 위하여 상기 드리프트 제거된 PPG 신호에서 상기 대응하는 펄스의 하강 펄스의 샘플 개수로 각 하강 펄스를 리샘플링하고, 상기 정류된 PPG 신호를 획득하기 위해 각 정류된 상승 펄스를 대응하는 정류된 하강 펄스와 연결하는 것을 특징으로 하는 PPG 신호 전처리 장치.
The method of claim 16,
The motion artifact correction engine resampling each pulse of the intermediate rectified PPG signal with the number of samples in each pulse of the drift-removed PPG signal,
Each pulse of the intermediate rectified PPG signal is divided into a rising pulse whose number of samples corresponds to an average rising length and a falling pulse whose number of samples corresponds to an average falling length, and the drift-removed PPG is obtained to obtain a rectified rising pulse. Each rising pulse is resampled by the number of samples of the rising pulse of the corresponding pulse in the signal, and each falling pulse is taken as the number of samples of the falling pulse of the corresponding pulse in the drift-removed PPG signal to obtain a rectified falling pulse. A PPG signal pre-processing apparatus characterized by resampling and connecting each rectified rising pulse with a corresponding rectified falling pulse to obtain the rectified PPG signal.
제14항에 있어서,
상기 트로프(trough) 및 피크(peak)는 상기 평활화된 PPG 신호의 트로프 및 피크에 대응하는 샘플 인덱스를 나타내는 것을 특징으로 하는 PPG 신호 전처리 장치.
The method of claim 14,
The trough (trough) and peak (peak) PPG signal pre-processing apparatus characterized in that it represents a sample index corresponding to the trough and peak of the smoothed PPG signal.
제11항에 있어서,
상기 대체될 펄스는 첫 번째 트로프 이전이고 마지막 트로프 이후에 발생하는 피크가 제거되도록 피크 및 트로프를 조절함에 의해서 결정되고, 그 결과 트로프에서 시작해서 트로프에서 끝나는 펄스만 정류되는 PPG 신호 전처리 장치.
The method of claim 11,
The pulse to be replaced is determined by adjusting the peak and trough so that peaks occurring before the first trough and after the last trough are removed, and as a result, only the pulses starting at the trough and ending at the trough are rectified.
제12항에 있어서,
상기 특징은 카이저 티저 에너지(Kaizer Teager Energy, KTE) 특징, 스펙트럼 엔트로피(Spectral Entropy) 특징 및 스펙트럼 에너지 대수(Spectral Energy Logarithmic) 특징의 평균, 분산 및 편포도(Skewness) 중 적어도 하나를 포함하는 PPG 신호 전처리 장치.






The method of claim 12,
The feature is a PPG signal including at least one of Kaiser Teager Energy (KTE) features, Spectral Entropy features and Spectral Energy Logarithmic features. Pretreatment device.






KR1020190156303A 2019-01-25 2019-11-29 Method and apparatus for pre-processing ppg signal KR20200092859A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/749,514 US11642087B2 (en) 2019-01-25 2020-01-22 Method and apparatus for pre-processing PPG signal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201941003111 2019-01-25
IN201941003111 2019-01-25

Publications (1)

Publication Number Publication Date
KR20200092859A true KR20200092859A (en) 2020-08-04

Family

ID=72049071

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190156303A KR20200092859A (en) 2019-01-25 2019-11-29 Method and apparatus for pre-processing ppg signal

Country Status (1)

Country Link
KR (1) KR20200092859A (en)

Similar Documents

Publication Publication Date Title
Appel et al. Adaptive sequential segmentation of piecewise stationary time series
Chatlani et al. Local binary patterns for 1-D signal processing
WO2004114193A3 (en) Adaptive prediction of changes of physiological/pathological states using processing of biomedical signals
Priyadharsini et al. Object detection in underwater acoustic images using edge based segmentation method
US20100211384A1 (en) Pitch detection method and apparatus
CN117033911B (en) Step counting analysis method based on intelligent glasses data
KR20070017524A (en) Encoding device, decoding device, and method thereof
JP6927322B2 (en) Pulse wave detector, pulse wave detection method, and program
WO1987001498A1 (en) A parallel processing pitch detector
CN112765550A (en) Target behavior segmentation method based on Wi-Fi channel state information
CN110702986B (en) Method and system for dynamically generating self-adaptive signal search threshold in real time
WO1987001500A1 (en) Voice synthesis utilizing multi-level filter excitation
CN110755069A (en) Dynamic electrocardiosignal baseline drift correction method for jump mutation noise
KR20200092859A (en) Method and apparatus for pre-processing ppg signal
US20210192319A1 (en) Information processing apparatus, method, and medium
CN117037834B (en) Conference voice data intelligent acquisition method and system
US11642087B2 (en) Method and apparatus for pre-processing PPG signal
EP0817120A3 (en) Image histogram equalization circuit and method therefor
KR102468654B1 (en) Method of heart rate estimation based on corrected image and apparatus thereof
CN112750426A (en) Mobile terminal voice analysis system
JP2013512475A (en) Complex acoustic resonance speech analysis system
CN114783454B (en) Model training and audio noise reduction method, device, equipment and storage medium
WO2016007947A1 (en) Fast computation of excitation pattern, auditory pattern and loudness
JPH0844395A (en) Voice pitch detecting device
Teijeiro et al. A noise robust QRS delineation method based on path simplification

Legal Events

Date Code Title Description
A201 Request for examination