Apparatus for measuring heart rate and method thereof
The present disclosure relates to a technique for estimating the inter-beat interval (IBI) of a ballistocardiograph (BCG) signal measured using a non-contact sensor, filtering and correcting inaccurate information in the inter-beat interval estimated through clustering, and outputting a heart rate measurement result based on the filtered and corrected inter-beat interval. According to one embodiment of the present disclosure, an apparatus for measuring a heart rate may include a signal meter for measuring a ballistocardiograph (BCG) signal from a heart rate measurement target; an inter-beat interval estimator for estimating an inter-beat interval (IBI) by applying a window to the measured BCG signal; a first filter for determining a confidence value for the probability values of the estimated inter-beat interval, filtering the estimated inter-beat interval by comparing the determined confidence value with a first threshold value, and determining a first estimated value; a second filter for determining a repetition degree indicating that identical beat values are successively estimated for the estimated inter-beat interval, filtering the estimated inter-beat interval by comparing the determined repetition degree with a second threshold value, and determining a second estimated value; and a heart rate output device for determining a third estimated value for the estimated inter-beat interval based on the determined first and second estimated values and outputting a heart rate based on the determined third estimated value.
1 . An apparatus for measuring a heart rate, the apparatus implemented in a combination of hardware and software and comprising:
a memory configured to store computer-readable instructions; and
one or more processors configured to execute the instructions to:
measure, by using a non-contact sensor placed in a surface a heart rate measurement target is on while avoiding direct contact with the heart rate measurement target, a ballistocardiograph (BCG) signal from the heart rate measurement target,
estimate an inter-beat interval (IBI) by applying a window to the measured BCG signal,
determine a confidence value for probability values of the estimated inter-beat interval, filter the estimated inter-beat interval by comparing the determined confidence value with a first threshold value, and determine a first estimated value,
determine a repetition degree indicating that identical beat values are successively estimated for the estimated inter-beat interval, filter the estimated inter-beat interval by comparing the determined repetition degree with a second threshold value, and determine a second estimated value, and
determine a third estimated value for the estimated inter-beat interval based on the determined first and second estimated values and output a heart rate based on the determined third estimated value,
wherein the one or more processors are configured to execute the instructions to:
obtain an auto-correlation estimate, an average magnitude difference function (AMDF) estimate, and a maximum amplitude pair (MAP) estimate from the BCG signal,
combine peaks of probability density functions of the auto-correlation estimate, the average magnitude difference function (AMDF) estimate, and the maximum amplitude pair (MAP) estimate to determine a probabilistic fusion estimate, and
estimate the inter-beat interval based on a peak of a probability density function of the probabilistic fusion estimate,
wherein the one or more processors are configured to execute the instructions to:
obtain the auto-correlation estimate while a probability value is changed based on autocorrelation on a right side of a portion designated as the window and a left side of the portion designated as the window,
obtain the average magnitude difference function (AMDF) estimate by taking a reciprocal number of a probability value according to a difference between the right side of the portion designated as the window and the left side of the portion designated as the window, and
obtain the maximum amplitude pair (MAP) estimate as a probability value when two peaks exist in a section spaced apart by a window size from the portion designated as the window, and
wherein the one or more processors are configured to execute the instructions to:
output an inter-beat interval corresponding to the third estimated value satisfying that the confidence value exceeds the first threshold value based on the first estimated value and the repetition degree is greater than or equal to the second threshold value based on the second estimated value,
convert the output inter-beat interval into the heart rate, and
output the converted heart rate.
2 . The apparatus according to claim 1 , wherein the one or more processors are configured to execute the instructions to determine the confidence value based on a difference between a maximum probability peak value among the probability values and an average value of other peak values excluding the maximum probability peak value among the probability values.
3 . The apparatus according to claim 2 , wherein, when the confidence value exceeds the first threshold value, the one or more processors are configured to execute the instructions to determine the first estimated value from the estimated inter-beat interval, and
when the confidence value is less than or equal to the first threshold value, the one or more processors are configured to execute the instructions to estimate the estimated inter-beat interval as noise and exclude the estimated inter-beat interval.
4 . The apparatus according to claim 1 , wherein the one or more processors are configured to execute the instructions to determine the repetition degree by configuring a set of values in which the identical beat values are successively repeated for a preset time.
5 . The apparatus according to claim 4 , wherein, when the repetition degree determined from the estimated inter-beat interval is greater than or equal to the second threshold value, the one or more processors are configured to execute the instructions to determine the second estimated value from the estimated inter-beat interval, and
when the repetition degree determined from the estimated inter-beat interval is less than the second threshold value, the one or more processors are configured to execute the instructions to estimate the estimated inter-beat interval as noise and exclude the estimated inter-beat interval.
6 . A processor-implemented method of measuring a heart rate by an apparatus implemented in a combination of hardware and software and comprising a memory configured to store computer-readable instructions, and one or more processors configured to execute the computer-readable instructions to perform the processor-implemented method, the method comprising:
measuring, by the one or more processors, by using a non-contact sensor placed in a surface a heart rate measurement target is on while avoiding direct contact with the heart rate measurement target, a ballistocardiograph (BCG) signal from the heart rate measurement target;
estimating, by the one or more processors, an inter-beat interval (IBI) by applying a window to the measured BCG signal;
determining, by the one or more processors, a confidence value for probability values of the estimated inter-beat interval, filtering, by the one or more processors, the estimated inter-beat interval by comparing the determined confidence value with a first threshold value, and determining, by the one or more processors, a first estimated value;
determining, by the one or more processors, a repetition degree indicating that identical beat values are successively estimated for the estimated inter-beat interval, filtering, by the one or more processors, the estimated inter-beat interval by comparing the determined repetition degree with a second threshold value, and determining, by the one or more processors, a second estimated value; and
determining, by the one or more processors, a third estimated value for the estimated inter-beat interval based on the determined first and second estimated values and outputting, by the one or more processors, a heart rate based on the determined third estimated value,
wherein the estimating of the inter-beat interval comprises:
obtaining an auto-correlation estimate, an average magnitude difference function (AMDF) estimate, and a maximum amplitude pair (MAP) estimate from the BCG signal,
combining peaks of probability density functions of the auto-correlation estimate, the average magnitude difference function (AMDF) estimate, and the maximum amplitude pair (MAP) estimate to determine a probabilistic fusion estimate, and
estimating the inter-beat interval based on a peak of a probability density function of the probabilistic fusion estimate,
wherein the obtaining of the auto-correlation estimate, the average magnitude difference function (AMDF) estimate, and the maximum amplitude pair (MAP) estimate from the BCG signal comprises:
obtaining the auto-correlation estimate while a probability value is changed based on autocorrelation on a right side of a portion designated as the window and a left side of the portion designated as the window,
obtaining the average magnitude difference function (AMDF) estimate by taking a reciprocal number of a probability value according to a difference between the right side of the portion designated as the window and the left side of the portion designated as the window, and
obtaining the maximum amplitude pair (MAP) estimate as a probability value when two peaks exist in a section spaced apart by a window size from the portion designated as the window, and
wherein the outputting of the heart rate comprises:
outputting the inter-beat interval corresponding to the third estimated value satisfying that the confidence value exceeds the first threshold value based on the first estimated value and the repetition degree is greater than or equal to the second threshold value based on the second estimated value,
converting the output inter-beat interval into the heart rate, and
outputting the converted heart rate.
7 . The method according to claim 6 , wherein the determining of the first estimated value comprises determining the confidence value based on a difference between a maximum probability peak value among the probability values and an average value of other peak values excluding the maximum probability peak value among the probability values;
determining the first estimated value from the estimated inter-beat interval when the confidence value exceeds the first threshold value; and
estimating the estimated inter-beat interval as noise and excluding the estimated inter-beat interval when the confidence value is less than or equal to the first threshold value.
8 . The method according to claim 6 , wherein the determining of the second estimated value comprises determining the repetition degree by configuring a set of values in which the identical beat values are successively repeated for a preset time;
determining the second estimated value from the estimated inter-beat interval when the repetition degree determined from the estimated inter-beat interval is greater than or equal to the second threshold value; and
estimating the estimated inter-beat interval as noise and excluding the estimated inter-beat interval when the repetition degree determined from the estimated inter-beat interval is less than the second threshold value.