Skip to main content

Real-time estimation of respiratory rate from a photoplethysmogram using an adaptive lattice notch filter



Many researchers have attempted to acquire respiratory rate (RR) information from a photoplethysmogram (PPG) because respiration affects the waveform of the PPG. However, most of these methods were difficult to operate in real-time because of their complexity or computational requirements. From these needs, we attempted to develop a method to estimate RR from a PPG with a light computational burden.


To obtain RR information, we adopt a sequential filtering structure and frequency estimation technique, which extracts a dominant frequency from a given signal. In particular, we used an adaptive lattice notch filter (ALNF) to estimate RR from a PPG along with an additional heart rate that is utilized as an adaptation parameter of our method. Furthermore, we designed a sequential infinite impulse response (IIR) notch filtering system (i.e., harmonic IIR notch filter) to eliminate the cardiac component and its harmonics from the PPG. We compared the proposed method with Burg’s AR modeling method, which is widely used to estimate RR from a PPG, using open-source data and measured data.


By using a statistical test, it was determined that our adaptive lattice-type respiratory rate estimator (ALRE) was significantly more accurate than Burg’s AR model method (p <0.0001). Furthermore, the ALRE’s tracking performance was better than that of Burg’s method, and the variances of its estimates were smaller than those of Burg’s method.


In short, our method showed a better performance than Burg’s AR modeling method for real-time applications.


The photoplethysmogram (PPG) is one of the bio-signals that can be acquired using a pulse oximetry sensor placed on a finger or ear lobe to measure O2 saturation. In addition, it can measure other physiological information such as pulse rate (or heart rate) and respiratory rate (RR) by one wearable sensor unlike electrocardiography [1]. Therefore, mobile healthcare system often utilizes a PPG sensor to acquire several kinds of health information including RR simultaneously in a simple module [2]. The pulse oximetry sensor is composed of an infrared (or red) transmitter and receiver, and these two devices are mounted on both sides of the target subject (finger or ear lobe). This sensor measures a transmitted light intensity from the transmitter to the receiver, and its measured value indicates an absorbance of the light in tissue and blood. In particular, the absorption of infrared light (absorbance) is proportional to material characteristics such as molar absorptivity, molar concentration, and path length. This principle is called the Beer–Lambert law [3].

The modulation of PPG induced by breathing has not been fully understood. Nonetheless, the fluctuation of blood volume in the peripheral vascular bed caused by respiration is already well known [4] and was modelled by three modulation types [5]. As a result, the acquisition of a respiratory component from PPG is possible because PPG reflects the blood volume changes. Usually, a PPG consists of AC and DC components. The AC signal represents the absorbance of pulsed arterial blood, and the DC signal indicates the absorbance of non-pulsed blood and tissues (Figure 1). In this study, we used the AC signal component of a PPG to estimate the respiratory rate.

Figure 1
figure 1

Composition of PPG. PPG wave is generated by fluctuating volume of arterial blood.

Vital signs, which consist of heart rate (HR), respiratory rate, blood pressure, and body temperature, have long been used as basic information in healthcare systems [6]. For example, pulmonary or cardiovascular diseases can be detected by measuring RR [7]. In our study, we focused on the RR information that is merged in a PPG signal, and estimated the HR for use in the RR estimation. HR is easily obtained not only by counting the number of zero crossings or peaks of the PPG [8], but also by analyzing the frequency of the PPG signal’s cardiac component, which is sufficiently large to estimate HR. However, it is difficult to estimate RR from a PPG because the respiratory component of the PPG is not clearly observed in the signal.

Because of the physiological response of the cardiopulmonary system, respiration induces three modulations in a PPG: amplitude, baseline, and pulse width modulations [5]. From the presence of the respiratory response in a PPG, many researchers have been motivated to develop or utilize methods for RR estimation from a PPG, such as digital filters, the autoregressive (AR) model, variable frequency complex demodulation, and particle filters [2, 814]. Nakajima et al. used digital filters to estimate HR and RR from a PPG, but this method required specific ranges of HR and RR. For example, RR should be less than 0.6 Hz [8]. Fleming and Tarassenko suggested a method to estimate RR from a PPG using the autoregressive model, and its estimate was considerably accurate. Because autoregressive modeling requires batch processing, they used a moving-window method for the real-time process [10]. The computational efficiency of the AR model method was considerably reasonable, but for real-time applications, it had an inefficient structure caused by the overlapped moving window method. Recently, AR modeling for HR and RR estimation was proposed for video-based vital sign monitoring [11]. Chon et al. suggested a high resolution time frequency analysis for RR estimation from a PPG [12, 13]; the method was called the VFCDM. This method showed outstanding accuracy, but its computational burden was not sufficiently light to construct a real-time monitoring system [5, 14].

The need to design a comfortable, portable, and fast-processing system has grown stronger as ubiquitous healthcare industry has grown [15]. Although many researchers have achieved a technical progress to monitor the cardiopulmonary system [1, 16, 17], mobility and fast processing remain as challenges [15]. Because of these challenges, we set two conditions for designing a RR estimator from a PPG as follows: (1) light computation, and (2) on-line processing. In order to satisfy these conditions, we propose an adaptive filter structure that combines a sequential infinite impulse response (IIR) notch filter to remove the harmonic components of the heart rhythm, and two on-line frequency estimators (see Figure 2). Especially, we adopt an adaptive lattice notch filter (ALNF) for the frequency estimator [18, 19].

Figure 2
figure 2

Overall system. The ALRE is constructed by two frequency estimators and harmonic IIR notch filter.

In the next section, we explain the relationship between the AR modeling method and our approach, the structure of the proposed algorithm, and the ALNF, which serves as a frequency estimator in our method. Then, we compare the proposed system with Burg’s AR method using experimental results. Finally, we discuss the results and future works.


A PPG can be modulated by the respiratory activity in three manner: baseline trend, amplitude, and pulse width modulations [2, 5]. To design an estimation system that uses simple processes, we assumed that the modulations in a PPG caused by respiration can be simplified by only a baseline modulation without amplitude and pulse width modulations, which is suitable in most real-life situations. From this assumption, we can model a PPG by adding cardiac and respiratory components as follows:

x n = k = 1 M A k sin w 0 k n + ϕ k +Bsin w 1 n + ϕ 0 +ν n

v (n): white Gaussian noise

w o: heart rate, w 1: respiratory rate

where the first term represents the cardiac component and the second term does the respiratory component.

In this study, we suggest an adaptive algorithm to estimate respiratory rates from a PPG in real-time. This algorithm is constructed by simple methods that feature light computation and on-line processing to obtain real-time filtering. For convenience, we call this algorithm ALRE, for Adaptive Lattice-type Respiratory rate Estimator. In the following subsection, we explain the general transference of approaches from an AR model to an adaptive notch filter, which is the core concept in our method, as well as the relationship between Burg’s algorithm for the AR model and our ALNF structure about their lattice forms.

Autoregressive modeling method and our proposed method

The AR model is one of many signal modeling techniques, and is composed only of autoregressive and error terms, as follows:

x n = j = 1 M k j x n j +e n

where x(n) is the target signal and e(n) represents the residual error. M and k j denote the AR model order and coefficients, respectively. The AR modeling procedure means to find the optimal model coefficients k j , which minimizes the energy of the residual error e(n).

The AR model can be used as a parametric method for spectrum estimation. Spectrum estimators can be classified into two categories, the parametric method and the non-parametric method; their characteristics are explained in [20]. When we have a priori knowledge about the signal, we can apply parametric methods and find more accurate estimates by using the known information about the signal. Therefore, it is important to find an optimal model order.

Application of the modeling method can also be extended from spectrum estimation to frequency estimation because the spectrum contains frequency information [20]. In biomedical signal processing fields, the AR modeling method has been frequently used for RR estimation from a PPG [911, 14]. The AR modeling method has three steps in total: downsampling, AR modeling, and RR estimation from the AR model coefficients. The AR modeling method requires two parameters, such as a down-sampling frequency and an AR model order, and it is necessary to find optimal parameters. For example, if the down-sampling frequency is 1 Hz, the AR modeling method cannot detect a RR higher than 30 bpm (0.5 Hz). This means that the AR modeling method imposes a constrained range of RR estimates when the down-sampling frequency is already determined. The AR modeling procedures are explained in detail in [10].

The AR method is an attractive technique for RR estimation from a PPG, because (1) its estimate is considerably accurate, (2) it has a simple algorithm structure, and (3) a short data set is sufficient for RR estimation. Furthermore, it can be applied in a real-time implementation by using the moving-window method. However, a sufficient window length is required for stable estimation; therefore, for real-time applications, each window has to be overlapped with the one next to it. As a result, the AR modeling method has an inefficient computational structure in real-time applications, and the estimate of the AR method lags behind the true RR varying with time. These problems are caused by the batch processing and windowing approach. Thus, we suggest an adaptive and recursive method using an adaptive notch filter and compare it with Burg’s method, which is one of the most common AR modeling techniques [20, 21].

Burg’s AR modeling method is derived from an all-pole lattice filter which has only feedback procedures, as shown in Figure 3. In Figure 3, k j represents a filter coefficient and, equivalently, an AR model coefficient in Burg’s method. When the model order is M, the coefficient k j + 1 is determined by a combination of the j th order forward prediction error e j + and the backward prediction error e j , as follows:

Figure 3
figure 3

All-pole lattice filter for Burg’s method. e j + means j-th forward prediction error and e j is j-th backward prediction error.

k j + 1 = 2 i = j + 1 M e j + i e j i 1 i = j + 1 M e j + i 2 + e j i 1 2

In this paper, we call Burg’s AR modeling-based RR estimation method as “Burg’s method” for the sake of simplicity.

In this study, we suggest a novel way to estimate RR from PPG using the frequency estimator (ALNF) based on an adaptive notch filter. The adaptive notch filter can estimate the dominant frequency of a given signal. We can intuitively understand the relationship between the AR modeling method and the adaptive notch filter through a simple example. Let us consider a second-order AR modeling problem. A pair of poles of this model is directly linked to a pair of peaks of spectrum, which represents one dominant frequency. Thus, we can estimate the dominant frequency from the model coefficients (a pair of poles). If we invert the transfer function of this AR model, then we can obtain a notch filter and estimate the frequency from a pair of zeroes of the notch filter. Eventually, finding AR model coefficients and designing a notch filter are similar techniques, and we can adaptively trace RR (or HR) by using the adaptive notch filter instead of the AR method. In this study, we chose an ALNF, which is an adaptive IIR notch filter combined with a lattice form and which serves as a frequency estimator in the ALRE. Thus, the ALRE is composed of two ALNFs and a harmonic IIR notch filter. The ALNF and Burg’s method have theoretically similar backgrounds because they are both based on a lattice filter structure.

As we mentioned earlier, the optimal selection of the AR model order is quite important to estimate a spectrum and frequencies. However, unlike the AR modeling method, the adaptive notch filer’s order is essentially fixed at 2, and it estimates only a single dominant frequency. To compensate for this crucial problem, we designed a sequential IIR notch filter, which utilizes the estimated HR as its adaptation parameter to obtain the respiratory component from the PPG.

The structure of the proposed algorithm: ALRE

The key idea of the ALRE is the sequential isolation of cardiac and respiratory signals; a PPG can be decomposed into its cardiac and respiratory components. The sequential isolation approach is important for the RR estimation because the respiratory and cardiac components are mixed in a PPG at the same time. Considering this concept, we designed the ALRE that includes three processes to estimate HR and RR. The overall structure of the ALRE is shown in Figure 2.

The first step is the estimation of HR using a frequency estimator (ALNF) which traces the fundamental frequency of a harmonic signal. To extract the pure HR component, we employ an IIR band pass filter which has a reasonable pass band (0.5 ~ 5 Hz) based on a feasible HR range prior to HR estimation.

In the second step, the cardiac component (HR and its harmonics components) in the PPG are removed through a harmonic IIR notch filter with an estimated HR. The harmonic IIR notch filter structure is very well-known and commonly used in the signal processing field [22]. Although a previous study [8] showed that it is possible to reduce the cardiac component and enhance the respiratory component by using an IIR low-pass filter, some portion of the cardiac component remain in the respiratory component because the IIR low-pass filter is limited to eliminating the cardiac component whose frequencies are above the cut-off frequency. Thus, we used a harmonic IIR notch filter next to the frequency estimator. The harmonic IIR notch filter is composed of a serial connection of second-order tunable IIR notch filters as follows:

H z , θ = j = 1 M 1 2 cos j θ z 1 + z 2 1 2 r cos j θ z 1 + r 2 z 2

Figure 4 shows an example of the pole-zero map of a harmonic IIR notch filter for the removal of four harmonic components (M =4). r represents the distance between the origin and the pole, and it can control the bandwidth of the notch, which becomes narrower as r approaches 1. We chose 0.95 as the value of r in the ALRE. In the ALRE, θ is particularly assigned to HR, which is estimated by the frequency estimator (ALNF) in the first step. M is the number of serial connections, that is, of harmonic components. The frequency response of this filter seems a comb with several notches at the fundamental frequency and its harmonics (not shown here, refer to [22]).The final step is RR estimation. From the second step, we obtain a residual signal after the cardiac components were eliminated from the PPG through the harmonic IIR notch filter (see Figure 2). Given the residual signal, we performed a band pass filter (0.1 ~ 2 Hz) to refine the respiratory component, by which we can stably estimate RR using another frequency estimator. In this sense, the process of RR estimation is similar to the HR estimation step.

Figure 4
figure 4

An example of the pole-zero map of harmonic IIR notch filter with 4 harmonic components.

Altogether, the ALRE adaptively eliminates the cardiac signal and its harmonic components from a PPG through HR estimation and sequential harmonic IIR notch filtering, and then it estimates RR from the residual signal (the respiratory component). Thus, unlike the AR method, it does not restrict the estimated HR or RR ranges but uses only the feasible ranges (HR: 0.5 ~ 5 Hz, RR: 0.1 ~ 2 Hz). Within the feasible frequency ranges, the frequency estimators are designed to find the target frequencies (HR and RR). In this study, we adopt the ALNF as a frequency estimator and briefly review the ALNF in the next subsection.

Adaptive lattice notch filter - review

The ALNF method was initially proposed in [18, 19]. It is an adaptive notch filer combined with a lattice form for an adaptation algorithm. Initially, its IIR filter structure is separated into all-pole and all-zero filters (see Figure 5):

Figure 5
figure 5

IIR lattice notch filter structure for ALNF. Upper part means all-pole filter and lower part is all-zero filter. (a): signal flow graph representation, (b): block diagram representation. D(z) and N(z) represent denominator and numerator of transfer function of IIR lattice notch filter, respectively.

s n =x n k 1 1 + γ s n 1 γs n 2
y n =s n +2 k 1 s n 1 +s n 2

where x(n) and y(n) represent input and output signals, respectively. s(n) represents the output of the initial all-pole filter part, and k 1 is the filter’s adaptation parameter. γ corresponds to the pole and zero contraction factor. Eqs. (5) and (6) represent all-pole and all-zero filtering processes, respectively. By minimizing E[y2(n)], we can get the value of the adaptation parameter k 1:

k 1 = E s n 1 s n + s n 2 E 2 s 2 n 1 = R s 1 R s 0

where R s (0) and R s (1) are the autocorrelations of s (n), which should be calculated by a statistical process. To alternatively realize the statistical process in real-time, the weighted least-square algorithm can be used: min k 1 j = n w n j y 2 j , where y2(j) and w n − j represent an output power of the ALNF and a weight parameter, respectively. The weighted least-square algorithm can be arranged by recursive processes using the forgetting factor η [23]:

P n =ηP n 1 + 1 η s n 1 s n + s n 2
Q n =ηQ n 1 + 1 η 2s n 1 2
k 1 n = P n Q n

Furthermore, k 1 n is clipped to prevent divergence:

k ˜ 1 n = k 1 n , 1 k 1 n 1 1 , k 1 n > 1 1 , k 1 n < 1

In addition, in order to sustain the stable state, a smoothing process is conducted using the smoothing factor μ.

k ^ 1 n =μ k ^ 1 n 1 + 1 μ k ˜ 1 n

where k ^ 1 n is the estimate of k 1. Given k ^ 1 n , we can estimate the frequency ω ^ n :

ω ^ n =arccos k ^ 1 n

Thus, ALNF has three parameters: (pole and zero contraction factor), μ (smoothing factor), and η (forgetting factor). in Eq. (6) represents the contraction between pole and zero (0 <  <1), so that it is matched to the sharpness of the frequency response of the filter. When is closer to 1, the notch will become narrower. The smoothing factor μ is designed to enhance the stability, and the forgetting factor η represents the update parameter for the recursive form of R s (autocorrelation of s (n)). Each parameter’s characteristics and the algorithm’s configuration are explained in detail in [18].

The ALNF, which was adopted as frequency estimators in ALRE is theoretically a single-tone frequency estimator [18, 19], but the adaptive IIR notch filer is generally robust to sinusoidal noise (colored noise) [24, 25]. Further, the ALNF is less computationally demanding [26, 27]. Despite these advantages, its estimate can be biased when the colored noise is added to the input signals. Because a PPG has several frequency components, the colored noise interference commonly occurs and biased estimation is inevitable. However, the amount of bias of the ALNF is considerably small. The characteristics of the ALNF are discussed below.

Analysis of the ALNF

Before using the ALNF, it is necessary to analyze the ALNF regarding its bias characteristic. Originally, the ALNF was designed to estimate the frequency of a single tone, and it is theoretically unbiased when the input is a single sinusoidal with additive white Gaussian noise [18].

To analyze the baseline modulation, we consider a two-tone signal x (n) with additive white Gaussian noise v (n):

x n = A 0 sin ω 0 n + ϕ 0 + A 1 sin ω 1 n + ϕ 1 +ν n

where ω 0 and ω 1 are constant frequencies and ω 0 ≠ ω 1, the phases (ϕ 0 and ϕ 1) are mutually uncorrelated random variables, and R s (k) is calculated as follows:

R s k = 1 D e j ω 0 2 1 2 A 0 2 cos k ω 0 + 1 D e j ω 1 2 1 2 A 1 2 cos k ω 1

As a result, the ALNF traces the biased frequency

k 1 = D e j ω 1 2 A 0 2 cos ω 0 + D e j ω 0 2 A 1 2 cos ω 1 D e j ω 1 2 A 0 2 + D e j ω 0 2 A 1 2
ω ^ =arccos k 1 ω 0 or ω 1

As in Eq. (16) and Eq. (17), the bias is theoretically generated by the addition of a sinusoidal signal and can be determined by the frequency response of the all-pole filter part 1 D e j ω . As can be seen in Figure 6, D(e) is similar to the frequency response of the notch filter; its shape is controlled by γ in Eq. (5) and its center frequency is ω ^ in Eq. (17). When asymptotically reaches 1, the frequency response goes to the notch, and the gain of the center frequency approximately becomes 0. For example, if ω 0 is dominant frequency component with large A 0, then ω ^ (center frequency of D(e)) approaches nearby ω 0 and k 1 ≈ − cos(ω 0) because D e j ω 0 will be approximately 0 but not equal to 0. Identically, if ω 1 is dominant frequency component, then ω ^ reaches some frequency close to ω 1 and k 1 approximately becomes − cos(ω 1). In this case, ω ^ can approximately converge into ω 1, and its accuracy depends on D(e) on ω 0 or ω 1. As a result, we can ensure that large values of γ decrease the bias of the ALNF to the sinusoidal interference or colored noise.

Figure 6
figure 6

Frequency response for the inverse of all-pole filter part of the IIR lattice notch filter. Vertical axis unit of left-side is dB and that of right-side is absolute value.

Comparison of performance using simulated signals

To compare the algorithms’ performance, we executed a rigorous simulation. All the procedures were implemented in Matlab®. First, we constituted an input signal x (n) as follows:

x n = x cardiac n + x resp n +ν n
x cardiac n = 10 cos 2 π f H R fs n + 5 cos 4 π f H R fs n + 0.4 π + 2 cos 6 π f H R fs n + 0.6 π + cos 8 π f H R fs n + 0.8 π + 0.5 cos 10 π f H R fs n + π
x resp n =cos 2 π ψ n fs
ψ ˙ n = f R R = Constant , Linear Function or Sinusoidal Function

where x cardiac (n), x resp (n), and ν(n) represent the cardiac signal, respiratory signal, and white Gaussian noise, respectively. f HR and f RR represent the HR and RR, and particularly f RR corresponds to the first derivative of ψ(n) which is an operand of the cosine function of x resp (n). f s is the sampling frequency. We set x cardiac (n), which was modeled based on the cardiac components of the PPG, with HR (f HR ). Furthermore, to cover various situations, three types of RR (f RR ), such as a single sinusoidal with constant frequency (for normal situations), a linear chirp (for urgent situations) and a sinusoidal frequency modulation (FM) signal (for exercise situations), were used for respiratory component modeling in the PPG. By adding x cardiac (n) and x resp (n), we constructed the simulated PPG signal x(n), and its shape was similar to the real PPG (see Figure 7). From the simulation signals, RR estimation was performed by the ALRE and Burg’s method. For the comparison between these two algorithms, we found optimal parameters for each algorithm, which minimize root mean square error (RMSE). We adopted a 30-s moving window for Burg’s method, and for the real-time estimation, each window was overlapped by 25-s duration with the neighboring windows. By the moving window method, the RR estimated by Burg’s method was updated at a 5-s interval.

Figure 7
figure 7

Simulation signal. (a): PPG with white Gaussian noise (20 dB), (b): reference respiratory signal (constant frequency).

The estimation of RR by the ALRE method showed better performance than Burg’s method and the result is compared in the dashed box of Figure 8. The HR and RR estimated by the ALRE are depicted in the first and second columns, respectively. The third column demonstrates the result of Burg’s method for RR estimation. The first row of Figure 8 illustrates the estimation result when the respiratory signal is modeled by the constant frequency single sinusoidal signal. The second and last rows depict the results when the respiratory signals are simulated by the linear chirp signal and the sinusoidal FM signal, respectively. The dotted lines in Figure 8 represent true reference frequencies and the solid lines indicate values estimated from PPG. From the estimated frequencies, we calculated the estimation error between the true and estimated values when each method has an optimal parameter, and the results are summarized in Table 1. Because of the initial convergence time, all RMSEs were calculated from 80 s to the end. With the simulated signals, the ALRE generally shows better performance than Burg’s method as shown in Table 1 and Figure 8.

Figure 8
figure 8

RR tracking from simulated PPG. Solid lines represent estimates and dotted lines are reference values when all input signal’s SNRs are 10 dB. Dashed red box includes only RR estimation results for the ALRE and Burg’s method.

Table 1 RMSEs of RR estimation under simulated signal

The ALNF method has three kinds of parameters (γ: pole and zero contraction factor, μ: smoothing factor, and η: forgetting factor) that determine the performance of the ALRE method when the signal is given. Therefore, it is necessary to search for optimal parameter values to minimize the estimation error. As mentioned before, the robustness to colored noise was enhanced as γ increased. Therefore, we set γ sufficiently close to 1. The other parameters were also assigned to large values because the error generally decreased as μ (smoothing factor) and η (forgetting factor) were incremented. We confirmed the better results of RR estimation with higher values of varying μ and η as well as γ from the three simulation datasets.

Data collection

Initially, we used an open-source data set, and additionally, our own PPG and respiration signals measured by a BIOPAC® device. The open-source data was adopted from the MIT MIMIC Database, which has been used in previous studies [28]. We particularly isolated 50 data sets that were less contaminated by artifacts, and these were used for assessing the performance of the RR estimation. Each data set was recorded at a sampling rate of 125 Hz for 9 min 40 s, and it included the PPG and (reference) respiratory signal (see Figure 9). In addition, we collected PPG and respiratory signals from five male and one female subjects (Age = 28.7 ± 1.9 years). Each subject was instructed to take a breath randomly but without limiting RR during four trials of data acquisition (Figure 9). In total, 24 trials were collected, and in each trial, data was recorded with a 125-Hz sampling rate for 5 min using a BIOPAC® PPG100c and RESP100c. In order to calculate the estimation error, the reference RR was evaluated by the zero crossing method from the given respiratory signal.

Figure 9
figure 9

Experiment data. (a) and (b) represent PPG and the reference respiratory signal from MIT MIMIC data, respectively. (d) and (e) are PPG and the reference respiratory signal measured by BIOPAC® device. (c) and (f) depict residual signals obtained by the ALRE approach from MIT MIMIC data and measured signal, respectively. The unit of vertical axis is mV.


For the verification of the ALRE’s performance, the RMSE was calculated by the difference between the reference RR and the RR estimated from the PPG when each method’s parameters had optimal values to minimize error. All RMSEs were calculated from 80 s to the end. To compare the two methods, we performed statistical tests on the MIT open-source data by using a paired t-test and on our measured data with non-parametric Wilcoxon’s two-sampled signed rank test under calculated RMSEs; the p-values of both tests were less than 0.0001. As shown by the two statistical tests, the ALRE’s RMSEs were significantly smaller than those of Burg’s method, which means the ALRE was superior to the conventional Burg’s method for RR estimation from a PPG. Figure 10 represents box plots of RMSEs for the ALRE and Burg’s method applied to the MIT open-source data and our experimental data measured by the BIOPAC®. In Figure 10, the upper and lower boxes represent the 75th and 25th percentiles, respectively, and the center, top, and bottom lines indicate the 50th, 90th, and 10th percentiles, respectively. Asterisks represent outliers in the RMSE distribution. Although we can get an additional HR estimate during the RR estimation process of the ALRE procedure, we did not directly assess HR estimation. However, it could be indirectly evaluated by the result of the RR estimation because the RR estimation process of the ALRE contains the HR estimation. Thus, we calculated the estimation error of RR with the actual data only.As a result, the ALRE showed more accurate estimation results than Burg’s method did. In Figure 11, the dotted line represents the reference RR, which was acquired from the respiratory signal, and the solid lines correspond to the RR and HR estimates. Figure 11 shows that the ALRE’s tracking performance was superior to Burg’s method, and the variances of estimates were also smaller than those for Burg’s method.

Figure 10
figure 10

Distribution of RMSEs of RR estimation. Upper and lower boxes represent the distribution of RMSE from 25th to 75th percentiles. Center, top, and bottom line indicate 50th, 90th, and 10th percentiles. Left two columns means RMSEs (the ALRE’s and Burg’s method’s) from MIT MIMIC data, and right two columns represent RMSEs (the ALRE’s and Burg’s method’s) from experiment data measured by BIOPAC® device. P-values of paired t-test for MIT open source data and Wilcoxon signed rank test for measured data are less than 0.0001.

Figure 11
figure 11

RR tracking from real data. (a): HR and RR tracking from MIT MIMIC data, (b): HR and RR tracking from measured data. Solid lines represent HR and RR estimates and dotted lines are reference RR values. Dashed red box includes only RR estimation results for the ALRE and Burg’s method.


Because a PPG contains both cardiac and respiratory components, many methods have been proposed to obtain a RR estimate from a PPG [5]. Although it is possible to estimate RR from PPG, the process is difficult because the respiratory component in a PPG is not as easily observed as the cardiac component. Therefore, previous methods, such as VFCDM and the AR modeling method, required complicated batch processes, which imply an inefficient computation structure for real-time applications [10, 1214].

Because of the development of sensing and communication techniques, the healthcare industry has made much progress in recent years; to further enhance this progress, mobility and fast processing are increasingly in demand [15]. To meet those requirements, we set design conditions, light computation and on-line processing. Considering these conditions, we propose the ALRE algorithm. The ALRE is an on-line processor that is constructed by an adaptive and recursive algorithm. Through a sequential process, a PPG can be decomposed into its cardiac and respiratory components. With the decomposed signals, the ALRE can estimate HR as well as RR using the ALNFs, which feature light computation and robustness to interfering input sinusoids. The ALNF has three parameters: a pole-zero contraction factor, a forgetting factor, and a smoothing factor, which characterize the ALNF [18, 19]. Before applying the ALNF to the proposed ALRE, we searched for appropriate values of the ALNF’s parameters through mathematical analysis and simulation; furthermore, we assessed the ALRE algorithm with real data. Our approach showed not only simple on-line processing (light computational burden) but also high estimation accuracy compared to Burg’s method.Although HR has its own variation, our algorithm accurately traced the cardiac component and removed it by harmonic IIR notch filter. ALRE estimated RR accurately and it was very close to the reference RR as in the middle column of Figure 11 in contrast to Burg’s method (right column of Figure 11). The respiratory components acquired after harmonic IIR notch filtering are presented in Figure 9 (c) and (f).

Burg’s method with model order M generally has an computational cost per iteration as O(M2) [29] and our ALRE with harmonic IIR notch filter order M has O(M) [30]. In terms of analysis, to compare between them meticulously is a little difficult so that we measure the computation time using real data with 9 min 40 s duration. That is, the computation time of ALRE was 0.0548 s much shorter than those of Burg’s method which had different overlapping durations with neighboring windows. As the overlapping increased, the Burg’s method with M = 6 showed increasing computation times with 0.1810 s (overlapping: 0 s), 0.2205 s (5 s), 0.2739 s (10 s), 0.3808 s (15 s), 0.5883 s (20 s), and 1.2076 s (25 s). Consequently, the computational load of Burg’s method depends on the overlapping duration and ALRE takes less computational burden than Burg’s method.

ALRE does not restrict the ranges of the HR or RR estimates, whereas the AR modeling method has a restriction on its frequency estimation range caused by the down-sampling frequency [10, 11]. For example, the ALRE can cover the physiologically feasible ranges of HR from 0.5 to 5 Hz and RR from 0.1 to 2 Hz, which cannot be implemented by the AR method with a down-sampling frequency under 4 Hz [10, 11]. Taken together, the ALRE might be considerably better than Burg’s method in real-life and real-time applications.

Although the ALRE has several advantages, it still should be improved to be embedded in mobile devices because of the problem of convergence time. The initial convergence time of the ALRE is not a critical problem, but a short transient time can enhance the tracing performance for varying HR and RR situations. In fact, convergence time can be controlled by the forgetting factor and smoothing factor. If these two parameters have smaller values, then convergence time will possibly be shorter. However, smaller parameter values result in worse performance. Therefore, we should consider a trade-off between convergence time and the fidelity of estimation. In order to break through this limitation, we are planning to investigate a faster and more precise frequency estimator or an adaptive parameter updating strategy for future work.


In conclusion, the novelty of the ALRE stands out because of its simple structure and fast processing without constrained ranges of HR or RR estimate. Therefore, it can contribute to daily cardiopulmonary system monitoring. Even though fast HR and RR tracking remain to be improved, the proposed ALRE approach can substitute for the AR modeling method for RR estimation. In addition, we expect this algorithm to be applied to other physiological signals that contain several health conditions at the same time, such as a mixed signal composed of a fetal heartbeat and respiration.





Heart rate


Respiratory rate




Infinite impulse response


Adaptive lattice notch filter


Adaptive lattice-type RR estimator


Root mean square error.


  1. Asada HH, Shaltis P, Reisner A, Hutchinson RC: Mobile monitoring with wearable photoplethysmographic biosensors. IEEE Eng Med Biol Mag 2003, 22: 28–40.

    Article  Google Scholar 

  2. Karlen W, Raman S, Ansermino JM, Dumont GA: Multiparameter respiratory rate estimation from the photoplethysmogram. IEEE Trans Biomed Eng 2013, 60: 1946–1953.

    Article  Google Scholar 

  3. Cejnar M, Kobler H, Hunyor SN: Quantitative photoplethysmography: Lambert-Beer law or inverse function incorporating light scatter. J Biomed Eng 1993, 15: 151–154. 10.1016/0141-5425(93)90047-3

    Article  Google Scholar 

  4. Dorlas JC, Nijboer JA: Photo-electric plethysmography as a monitoring device in anaesthesia. Br J Anaesth 1985, 57: 524–530. 10.1093/bja/57.5.524

    Article  Google Scholar 

  5. Addison PS, Watson JN, Mestek ML, Mecca RS: Developing an algorithm for pulse oximetry derived respiratory rate (RR(oxi)): a healthy volunteer study. J Clin Monit Comput 2012, 26: 45–51. 10.1007/s10877-011-9332-y

    Article  Google Scholar 

  6. Edmonds ZV, Mower WR, Lovato LM, Lomeli R: The reliability of vital sign measurements. Ann Emerg Med 2002, 39: 233–237. 10.1067/mem.2002.122017

    Article  Google Scholar 

  7. Hooker EA, O’Brien DJ, Danzl DF, Barefoot JAC, Brown JE: Respiratory rates in emergency department patients. J Emerg Med 1989, 7: 129–132. 10.1016/0736-4679(89)90257-6

    Article  Google Scholar 

  8. Nakajima K, Tamura T, Miike H: Monitoring of heart and respiratory rates by photoplethysmography using a digital filtering technique. Med Eng Phys 1996, 18: 365–372. 10.1016/1350-4533(95)00066-6

    Article  Google Scholar 

  9. Lee J, Chon KH: Time-varying autoregressive model-based multiple modes particle filtering algorithm for respiratory rate extraction from pulse oximeter. IEEE Trans Biomed Eng 2011, 58: 790–794.

    Article  Google Scholar 

  10. Fleming S, Tarassenko L: A comparison of signal processing techniques for the extraction of breathing rate from the photoplethysmogram. Int J Biol Med Sci 2007, 2: 232–236.

    Google Scholar 

  11. Tarassenko L, Villarroel M, Guazzi A, Jorge J, Clifton DA, Pugh C: Non-contact video-based vital sign monitoring using ambient light and auto-regressive models. Physiol Meas 2014, 35: 807–831. 10.1088/0967-3334/35/5/807

    Article  Google Scholar 

  12. Chon KH, Dash S, Ju K: Estimation of respiratory rate from photoplethysmogram data using time-frequency spectral estimation. IEEE Trans Biomed Eng 2009, 56: 2054–2063.

    Article  Google Scholar 

  13. Dash S, Shelley KH, Silverman DG, Chon KH: Estimation of respiratory rate from ECG, photoplethysmogram, and piezoelectric pulse transducer signals: a comparative study of time-frequency methods. IEEE Trans Biomed Eng 2010, 57: 1099–1107.

    Article  Google Scholar 

  14. Lee J, Chon KH: Respiratory rate extraction via an autoregressive model using the optimal parameter search criterion. Ann Biomed Eng 2010, 38: 3218–3225. 10.1007/s10439-010-0080-9

    Article  Google Scholar 

  15. Touati F, Tabish R: u-Healthcare system: state-of-the-art review and challenges. J Med Syst 2013, 37: 9949.

    Article  Google Scholar 

  16. Zhu X, Chen W, Nemoto T, Kanemitsu Y, Kitamura K, Yamakoshi K, Wei D: Real-time monitoring of respiration rhythm and pulse rate during sleep. IEEE Trans Biomed Eng 2006,53(12 Pt 1):2553–2563.

    Google Scholar 

  17. Neuman MR, Watson H, Mendenhall RS, Zoldak JT, Fiore JM D, Peucker M, Baird TM, Crowell DH, Hoppenbrouwers TT, Hufford D, Hunt CE, Corwin MJ, Tinsley LR, Weese-Mayer DE, Sackner MA, Group the CS: Cardiopulmonary monitoring at home: the CHIME monitor. Physiol Meas 2001, 22: 267–286. 10.1088/0967-3334/22/2/301

    Article  Google Scholar 

  18. Cho NI, Lee SU: On the adaptive lattice notch filter for the detection of sinusoids. IEEE Trans Circuits Syst II Analog Digit Signal Process 1993, 40: 405–416. 10.1109/82.238368

    Article  Google Scholar 

  19. Cho NI, Lee SU: Tracking analysis of an adaptive lattice notch filter. IEEE Trans Circuits Syst II Analog Digit Signal Process 1995, 42: 186–195. 10.1109/82.372868

    Article  Google Scholar 

  20. Hayes MH: Statistical Digital Signal Processing and Modeling. New York: John Wiley & Sons; 1996.

    Google Scholar 

  21. Roth K, Kauppinen I, Esquef PAA, Valimaki V: Frequency warped Burg’s method for AR-modeling. In 2003 IEEE Work Appl Signal Process to Audio Acoust (IEEE Cat No03TH8684). Mohonk: IEEE; 2003:5–8.

    Chapter  Google Scholar 

  22. Tan L, Jiang J: Novel adaptive IIR filter for frequency estimation and tracking [DSP Tips&Tricks. IEEE Signal Process Mag 2009, 26: 186–189.

    Article  Google Scholar 

  23. Makhoul J, Cosell L: Adaptive lattice analysis of speech. IEEE Trans Acoust 1981, 29: 654–659.

    Article  Google Scholar 

  24. Cheng M-H, Tsai J-L: A new IIR adaptive notch filter. Signal Processing 2006, 86: 1648–1655. 10.1016/j.sigpro.2005.09.010

    Article  Google Scholar 

  25. Bittanti S, Campi M, Savaresi SM: Unbiased estimation of a sinusoid in colored noise via adapted notch filters. Automatica 1997, 33: 209–215. 10.1016/S0005-1098(96)00145-8

    Article  MathSciNet  Google Scholar 

  26. Cho NI, Choi CH, Lee SU: Adaptive line enhancement by using an IIR lattice notch filter. IEEE Trans Acoust 1989, 37: 585–589.

    Article  Google Scholar 

  27. Ramli R, Noor A, Samad S: A Review of Adaptive Line Enhancers for Noise Cancellation. Aust J Basic Appl Sci 2012, 6: 337–352.

    Google Scholar 

  28. Goldberger AL, Amaral LAN, Glass L, Hausdorff JM, Ivanov PC, Mark RG, Mietus JE, Moody GB, Peng C-K, Stanley HE: PhysioBank, PhysioToolkit, and PhysioNet: Components of a New Research Resource for Complex Physiologic Signals. Circulation 2000, 101: e215-e220. 10.1161/01.CIR.101.23.e215

    Article  Google Scholar 

  29. Keiler F, Arfib D, Zölzer U: Efficient linear prediction for digital audio effects. Proc 15th Int Conf Digit Audio Eff. Verona, Italy 2000, 1–6.

    Google Scholar 

  30. Madisetti V: Digital Signal Processing Handbook. Volume 20. Boca Raton: CRC Press; 1998.

    Google Scholar 

Download references


The research was supported by a grant from the Institute of Medical System Engineering (iMSE) in the GIST, Korea.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Boreom Lee.

Additional information

Competing interests

All authors declare that they have no conflicts of interest, including no financial, personal or other relationships with other people or organizations.

Authors’ contributions

CP designed the algorithm, collected the data, analyzed and interpreted data, and drafted the manuscript. BL conceived the idea, participated in writing up and revising the manuscript. Both authors read and approved the final manuscript.

Authors’ original submitted files for images

Rights and permissions

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited. The Creative Commons Public Domain Dedication waiver ( applies to the data made available in this article, unless otherwise stated.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Park, C., Lee, B. Real-time estimation of respiratory rate from a photoplethysmogram using an adaptive lattice notch filter. BioMed Eng OnLine 13, 170 (2014).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: