Anda di halaman 1dari 127

Signal Processing of

Nano Sensor Data

Thomas Jensen

Kongens Lyngby 2009


IMM-M.Sc.2009-13

Technical University of Denmark


Informatics and Mathematical Modelling
Building 321, DK-2800 Kongens Lyngby, Denmark
Phone +45 45253351, Fax +45 45882673
reception@imm.dtu.dk
www.imm.dtu.dk

Abstract

Pulse oximetry is a non-invasive method for measuring the arterial oxygen saturation. The measured signals suffer from noise and motion artifacts which make
the measurement results very unstable. Signal processing is therefore needed to
estimate the oxygen saturation from the pulse oximetry recordings.
It is found that preprocessing the signals by well designed bandpass filters is
important. Simple methods previously used for pulse oximetry are implemented
as well as the more advanced Discrete Saturation Transform (DST) developed
by Masimo Coorporation and results are compared to solving the problem by
Independent Component Analysis (ICA).
The methods are tested on to data sets; one with oxygen saturation levels from
75% to 100% recorded on a resting subject and one recorded at normal oxygen
saturation level but with the subject doing motions. Good results are obtained
using ICA with constraints from the first data set, and the other methods perform well on this data set as well. When using the data set with motion artifacts,
all methods produce unreliable results.
Beside estimation of the oxygen saturation, the heart rate can be detected from
pulse oximetry. Heart rate detection is carried out by using the Fast Fourier
Transform (FFT) and is compared to a Bayesian periodic component detector
and both methods perform equally well.

ii

Resum
e

Puls oximetri er en ikke-invasiv metode til at m


ale den arterielle iltmtning. De
m
alte signaler er behftet med stj og bevgelses artefakter, der gr m
alingerne
ustabile. Signalbehandling er derfor ndvendig for at kunne estimere iltmtningen fra puls oximetri optagelser.
Det viser sig, at b
andpasfiltrering af signalerne med omhyggeligt designede filtre
er afgrende. Simple metoder, der tidligere er anvendt til puls oximetri, er implementeret ligesom den mere avancerede Discrete Saturation Transform (DST)
udviklet af Masimo Coorporation, og resultater er sammenlignet med resultater
opn
aet ved at lse problemet med Independent Component Analysis (ICA).
Alle metoderne er testet p
a to dataset. Det ene indeholder m
alinger med iltmtninger fra 75% til 100% optaget p
a et subjekt, der forholder sig i ro. Det andet
er optaget ved normal iltmtning men p
a et subjekt, der udfrer bevgelser.
Gode resultater er opn
aet ved at lse ICA-problemet med de rette betingelser
for det frste dataset. De vrige metoder giver ogs
a gode resultater for dette
dataset. N
ar metoderne anvendes p
a det andet dataset med bevgelses artefakter opn
as tvivlsomme resultater.
Udover estimering af iltmtningen kan pulsen ogs
a bestemmes fra puls oximetri.
Detektering af pulsen er udfrt med den hurtige Fourier transformation (FFT)
og er sammenlignet med en Bayesiansk periodiskkomponent detektor. Begge
metoder giver ensartede gode resultater.

iv

Preface

This masters thesis is done at Informatics Mathematical Modelling (IMM) in


collaboration with Department of Micro- and Nanotechnology (DTU Nanotech)
at the Technical University of Denmark. The work was carried during the
months from September 2008 to March 2009.

Acknowledgements
I would like thank my supervisor Jan Larsen for good and fruitful supervision
as well as I would like thank Sune Duun from DTU Nanotech for a good collaboration and co-supervision. At last, I would like to thank Trine Jensen and
Janus Day Larsen for helping me with proofreading my work.

Copenhagen, March 2009

Thomas Jensen

vi

Contents

Abstract

Resum
e

iii

Preface

1 Introduction
1.1 The Electronic Patch . . . .
1.2 Pulse Oximetry - Principles
1.3 Literature review . . . . . .
1.4 Problem definition . . . . .
1.5 Thesis overview . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

1
1
3
8
9
9

. . . . . . . . .
. . . . . . . . .
measurements
. . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

11
11
14
15
16

3 Theory
3.1 Averaging Methods . . . . . . . . . . . .
3.2 Frequency Domain Methods . . . . . . .
3.3 Masimo DST . . . . . . . . . . . . . . .
3.4 Bayesian Periodic Component Detection
3.5 Independent Component Analysis . . . .
3.6 Maximum Likelihood ICA . . . . . . . .
3.7 Mean Field ICA . . . . . . . . . . . . .
3.8 Molgedey and Schouster ICA . . . . . .
3.9 Evaluation Scheme . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

19
19
20
21
22
24
24
25
28
30

2 Data
2.1 Data Set 1 . .
2.2 Data Set 2 . .
2.3 Limitations in
2.4 Preprocessing

viii
4 Results
4.1 Preprocessing . . . . . . . . .
4.2 Averaging Method . . . . . .
4.3 Frequency Domain Method .
4.4 Masimo DST . . . . . . . . .
4.5 Bayesian Periodic Component
4.6 Maximum Likelihood ICA . .
4.7 Mean Field ICA . . . . . . .
4.8 Molgedey and Schouster ICA

CONTENTS

. . . . . .
. . . . . .
. . . . . .
. . . . . .
Detection
. . . . . .
. . . . . .
. . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

31
32
32
37
44
51
53
56
61

5 Discussion and Conclusion


67
5.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
A DC-levels
B Bandpass filtering
B.1 Averaging methods . . . . . .
B.2 Masismo DST . . . . . . . . .
B.3 Mean Field ICA . . . . . . .
B.4 Molgedey and Schouster ICA

71
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

75
79
82
85
88

C Scatter Plots of Data Set 2

91

D Optimisation of in for ICAMS

97

Chapter

1
Introduction

Patients suffering from chronic diseases such as heart diseases, needs monitoring
of their heart and blood function. It is thus desirable to develop a wearable
monitoring system which will make it possible for the patients to do normal
activities instead of being hospitalised. This will increase the life quality of the
patient and it will reduce the costs for the health care system. Such system
will also be useful in research purposes for data acquisition and for monitoring
professionals working under extreme conditions such as firefighters, athletes and
soldiers.

1.1

The Electronic Patch

The Danish innovation consortium, The Electronic Patch, has developed a platform for wireless measuring of physiological signals integrated in a adhesive
patch. The patch has a size of 88mm by 60mm and, a thickness of 5mm and
consists of a plastic housing containing censors, printed circuit board with analog to digital converter, micro-controller and radio transmitter, all powered by
3V lithium-ion battery. The plastic housing protects the electronics and censors
from sweat and moisture and is reusable. The plastic housing is embedded in the
adhesive. Once every week the adhesive and the battery is changed. The patch
can be placed on a suitable non-visible place on the body without any annoying

Introduction

effects. An illustration of the electronic patch and embedded components are


shown in figure 1.1.

Figure 1.1: Left: A commercial hand held pulse oximeter for measuring oxygen
saturation. Right: Illustration of the components integrated in the adhesive
patch for pulse oximetry.

The electronic patch is intended as a platform compatible with many types of


censors depending on the signals of interest. Typically, these signals are giving
vital signs such as heart-rate, body-temperature, respiration and the level of
oxygen in the arteries.
The level of oxygen in the arteries is measured as a percentage of the highest
possible oxygen content in the blood and is referred to as the oxygen saturation.
The oxygen saturation can be measured in a non-invasive way by pulse oximetry,
a method based on photoplethysmography1, and as the name implies, the heartrate is measured as well. A novel sensor [3] for measuring the oxygen saturation
by pulse oximetry has been developed for the electronic patch. This thesis will
investigate the signal processing of data from the pulse oximeter patch.

1 photoplethysmography is the optically obtained measuring of the change of volume within


an organ.

1.2 Pulse Oximetry - Principles

1.2

Pulse Oximetry - Principles

In this section, an introduction to the basic principles of measuring oxygen


saturation by pulse oximetry is given.
Oxygen is transported by the protein haemoglobin from the lungs to the rest
of the body where it is released for cell use. Oxygenated haemoglobin and its
deoxygenated form is abbreviated HbO2 and Hb respectively. HbO2 and Hb
have different light absorption characteristics. This means that HbO2 and Hb
absorbs different amounts of light of a certain wavelength, thus the ratio of
HbO2 and Hb can be determined by measuring the amount of absorbed light
from two or more light-sources of different wavelength.
A pulse oximeter sensor normally consists of a red and a infrared light emitting
diode (LED) as light-sources and a photo-diode as photo-detector. Measurements can then be carried out by incidence light from one of the LEDs at the
time, to the tissue and then measuring the amount of transmitted or reflected
light with the photo-diode. The measurement setup is schematically illustrated
in figure 1.2 for both transmittance and reflectance mode. Two time-varying
signals are then acquired, and are referred to as photoplethysmograms (PPG).

Figure 1.2: Schematic illustration of pulse oximeter measurement setup. In


transmittance mode (a), the light detector is placed on the on the side opposite
the light sources. In reflectance mode (b), the light detector is placed on the
same side as the light sources.

The relation between the absorbed light and oxygen saturation is derived from
Beer-Lamberts law [24]. Beer-Lamberts law describes the transmission of
monochromatic light through a uniform absorbing medium. Let I0 be the intensity of the incident light, the intensity I of the light travelling through the

Introduction

medium can then be described as the exponentially decreasing relation:


I = I0 e cd

(1.1)

where is the extinction coefficient describing the absorptivity of the absorbing


substance at the wavelength , c the concentration of the absorbing substance,
and d is the optical path length through the medium. Beer-Lambert law is
based on the assumption that no light is reflected at the surface or scattering of
light in the medium, and the sum of transmitted and absorbed light thus equals
the incident light.
The transmittance, T , of light through the medium is defined as the ratio of the
transmitted light I to the incident light I0
T =

I
= e cd
I0

(1.2)

and the absorbance A is defined as the negative natural logarithm of the transmittance of light
A = ln(T ) = cd.
(1.3)
In case of multiple absorbers in the medium, the total absorption At is found
by superposition
n
X
= i, ci di .
(1.4)
At =
i=1

where the index i denotes the ith of the n absorbers.


The oxygen saturation SO2 is defined as the ratio of the concentration of oxygenated haemoglobin to the sum of the concentration of oxygenated and deoxygenated haemoglobin:
cHbO2
.
(1.5)
SO2 =
cHbO2 + cHb
The total absorbance in a medium containing only the absorbers oxygenated
and deoxygenated haemoglobin is found by isolating the concentrations cHbO2
and cHb from (1.5) and inserting in (1.4):

At = HbO2 , SO2 + Hb, (1 SO2 ) (cHb + cHbO2 )d
(1.6)

where it is assumed that the optical path length d is the same for oxygenated
and deoxygenated haemoglobin.
Biological tissue contains several light absorbing substances; the most significant
absorbers are skin pigmentation, bones, arterial and venous blood. As HbO2
and Hb in the arterial blood are the only absorbers of interest for calculation
of SO2 , their contribution needs to be isolated from all other absorbers. This

1.2 Pulse Oximetry - Principles

problem is solved by taking advantage of the pulsating nature of the arterial


blood.
The cardiac cycle can roughly be divided into two stages: systole and diastole.
During systole, the heart pumps oxygenated blood from the lungs through the
arteries, during diastole the heart relaxes. The arteries thus contain more blood
during systole than during diastole and their diameter increases due to the
increased pressure. The veins are not affected and therefore the tissue can be
differentiated into a pulsating part consisting of only arterial blood, and a nonpulsating part consisting of venous blood and other tissue. In the pulse oximetry
literature, these parts are usually referred to as the AC- and DC-component
respectively, as the pulsating part of light absorbance only form 1% to 2% of
the total absorbance [24].
The total absorbance can therefore be divided into two corresponding stages;
AD denoting the total absorbance when the amount of arterial blood is at its
minimal level during diastole, and AD denoting the total absorbance when the
amount of arterial blood is at its maximum during systole:

AD = DC cDC dDC + HbO2 , cHbO2 + Hb, cHb dD
(1.7)

AS = DC cDC dDC + HbO2 , cHbO2 + Hb, cHb dS
(1.8)

where the index DC indicates the all sum of non-pulsating absorbers. By expressing the systolic optical distance as dS = dD + d the arterial absorption
Aa is found by subtracting (1.7) from (1.8)

(1.9)
Aa = HbO2 , cHbO2 + Hb, cHb d

Now, the optical distance d can be cancelled out by using the ratio R of arterial
absorption of light with different wave lengths denoted 1 6= 2
R=

HbO2 ,1 cHbO2 + Hb,1 cHb


.
HbO2 ,2 cHbO2 + Hb,2 cHb

(1.10)

By using the definitions (1.2) and (1.3), R can be expressed in terms of transmitted light as
ln(IS,1 /ID,1 )
.
(1.11)
R=
ln(IS,2 /ID,2 )
Using the definition of SO2 it is trivial to show the relation of arterial oxygen
saturation Sa O2 and the optical ratio R:
Sa O2 =

Hb,1

Hb,1 Hb,2 R
 .
HbO2 ,1 + HbO2 ,2 Hb,2 R

(1.12)

The choice of light sources is based on the extinction coefficients for HbO2 and
Hb. The absorbance of light is much higher for deoxygenated haemoglobin than

Introduction

oxygenated haemoglobin in the red area of the spectrum and vice versa in the
infrared area. A common choice of light sources is 660nm (red) and 940nm
(infrared), the spectra for absorption for Hb and HbO2 is shown in figure 1.3.

Figure 1.3: Left: Extinction coefficient spectra for Hb and HbO2 Right: Ratio
of Hb to HbO2 , from this plot it is clear that light of wavelength around 650nm
and 1000nm gives the largest difference in absorption. Notice also, that the
absorption is relatively flat around these wavelength, this is important as light
from LEDs is not strictly monochromatic.

A plot of the relation of Sp O2 and the optical ratio R is shown in figure 1.4 for
red and infrared light. The extinction coefficients of Hb and HbO2 for red and
infrared light are given in table 1.1
Wavelength [nm]
660
940

Hb [L mmol1 cm1 ]
0.81
0.18

HbO2 [L mmol1 cm1 ]


0.08
0.29

Table 1.1: Extinction coefficients of Hb and HbO2 [24].

1.2.1

Limitations of Pulse Oximetry

In fact, the human tissue is a turbid media and some of the light is reflected and
some is scattered. The blood contains other absorbers such as methaemoglobin
and carboxyhaemoglobin and the light sources does not emit monochromatic
light. Therefore the above derivation of the relation of Sa O2 and absorption
of light from Beer-Lamberts law is not strictly valid, but an estimate of the

1.2 Pulse Oximetry - Principles

100

90

Oxygen saturation (SaO2) [%]

80

70

60

50

40

30

20

10

0.5

1.5

2.5
R

3.5

4.5

Figure 1.4: Plot of the relation between arterial oxygen saturation (Sa O2 ) and
optical ratio R from equation (1.12). From the plot it is evident that the curve
is not a straight line, but in the important interval of 70% to 100% Sa O2 a linear
approximation is a fair choice.

oxygen saturation can be found by using a empirical calibration curve. Oxygen saturation measured by pulse oximetry is therefore denoted Sp O2 to notice
uncertainties of pulse oximetry.

Besides the optical limitations, pulse oximetry measurements are also disturbed
by noise due to motion artefacts and others. This happens e.g. when the subject
moves and its mussels therefor squeezes the blood vessels. Thus stable readings
from a pulse oximeter can only be achieved from a subject that is relaxed and
not moving. To make the pulse oximeter useful in the electronic patch, intended
to be worn by subjects doing their normal activity, this problem needs to be
solved by signal processing. This is the aim of this thesis. In the following
section a review of existing literature addressing the problem is provided.

1.3

Introduction

Literature review

The main objective of this thesis is to calculate the oxygen saturation from the
pulse oximeter probe described in [3]. The problem has been tried solved by
different signal processing approaches and some of the methods are reviewed in
this section.

In [23] estimation of Sp O2 in the frequency domain by using the Fast Fourier


Transform (FFT) and the Discrete Cosine Transform (DCT) is investigated.
It is concluded that the methods are as accurate as weighted moving average
methods.

The company Masimo proposes their method in [5] based on adaptive noise
cancellation (ANC). The method is called Discrete Saturation Transform (DST)
and in [6] the results of clinical testing show false alarms due to motion artifact
and low perfusion were reduced from up to 90% to less than 5% by use of the
Masimo DST method.

In [12] Independent Component Analysis (ICA) is used to separate motion artifact from the PPG signal. Only the FAST ICA [10] algorithm is tried and
the results does not contain calculation of the oxygen saturation but results of
the separated sources are shown. The statistical relationship between motion
artifacts and PPG signals are addressed in [26] but it is doubtful whether the
method and conclusion is valid.

Other approaches are wavelet transform [4], Singular Value Decomposition [22],
and ANC based on additional accelerometer measurements [2].

None of the papers provides calibration curves for oxygen saturation measured
at different levels and the performance of the proposed methods are not easily
compared. The ICA approaches do not consider how the ICA problem is solved
and how properties of the PPG measurements can be used as constraints. From
this literature review it is concluded that only a few studies of the signal processing of pulse oximetry data exists and further studies are therefore needed. Initial
studies of ICA on pulse oximetry signals show that ICA is a very convenient
approach for removing noise from pulse oximetry signals.

1.4 Problem definition

1.4

Problem definition

The aim of this thesis is to estimate the oxygen saturation from data recorded
by the probe developed for the electronic patch. As ICA previously have been
applied on PPG signals but without analysing how the ICA problem is solved
best for pulse oximetry data, estimation of Sp O2 based on separating PPG
signals from noise using ICA is investigated. In order to evaluate the results,
existing methods and the DST by Masimo are implemented and analysed.
Beside this, the heart rate is detected using a Bayesian periodic component
detector and compared to a method based on FFT.

1.5

Thesis overview

This thesis consists of five chapters. Beside this introductory chapter, the following chapters are:
Data - In this chapter the data sets of pulse oximetry recordings are
introduced and preprocessing methods are described.
Theory - The theory behind all algorithm used for detection of heart rate
and Sp O2 estimation is given.
Results - The results of estimating Sp O2 and detection of heart rate using
all methods on all data sets are presented. Additional results are provided
in appendices.
Discussion and Conclusion - This final chapter contains a discussion
of the obtained results and the final conclusion of this thesis.

10

Introduction

Chapter

2
Data

In this chapter, data from the pulse oximeter are introduced. The data are provided by Department of Micro- and Nanotechnology at the Technical University
of Denmark (DTU) and the measurements were carried out in cooperation with
Bispebjerg Hospital.
All data sets consist of a recording of reflected red- and infrared light. This
means, when looking at a plot a the PPG signal, the diastolic stage is when
the signal has maximum amplitude and systolic stage is when the signal has
minimum amplitude within a cardiac cycle. All recordings are sampled at fs =
200Hz.

2.1

Data Set 1

Data set 1 consists of 14 measurements at different oxygen saturation levels.


All measurements are recorded on one subject with the probe attached to the
subjects right middle finger. Reference measurements were done by using a
commercial pulse oximeter (Datex Ohmeda AS/3) with the probe placed on
the subjects left middle finger. The recordings durations are around 30s and
the oxygen saturation level was attempted to be kept constant during the measurements. The reference oxygen saturation level was noted at the beginning

12

Data

and at the end of the recording. The heart rate was measured as well, using a
commercial heart rate monitor, noted at the beginning of the recordings. The
reference annotations are listed in table 2.1

Rec.#
1
2
3
4
5
6
7
8
9
10
11
12
13
14

SpO2 start [%]


100
100
100
98
99
97
88
85
85
78
79
75
74
75

SpO2 end [%]


100
100
100
99
98
96
85
82
79
77
75
78
75
75

HR [BPM]
60
51
57
56
58
54
60
68
61
65
67
70
69
72

Table 2.1: Reference measurements for data set 1.

To give an example of a typical recording, a 6s snippet of recording 1 is shown


in figure 2.1. As seen, the recordings are very noisy and the heart rate is not
easily recognised. Notice that the DC-level of the signal is much higher than
the pulsating part of the signal. The same snippet is shown in figure 2.2 after
bandpass filtering with a narrow passband around the heart rate frequency.
From this plot, the pulsating nature of the signal is clear.

The frequency content of the recording 1 are exploited by calculating the amplitude response of the Fast Fourier Transform. This is shown in figure 2.3.
It is noticeable, that most of the frequency content are found around 65Hz,
but some low frequency content can be seen as well. The frequency spectra
of the heart rate interval are of major interest, and the amplitude spectra is
shown for 0Hz f 4Hz in figure 2.4. The heart rate component is easily
found around 1Hz in both the red and infrared recording. An amount of low
frequency contents is also seen in the region below the heart rate.

2.1 Data Set 1

13

2740

Red

2735
2730
2725
2720
2715
0

3
t [s]

3
t [s]

Infrared

4420
4400
4380

Figure 2.1: Plot of a 6s snippet of recording 1.

x 10

Red

5
0

3
t [s]

3
t [s]

x 10

Infrared

Figure 2.2: Plot of the AC-component of recording 1 after bandpass filtering.

14

Data

x 10

Red

6
4
2
0

10

20

30

40

50
f [Hz]

60

70

80

90

100

10

20

30

40

50
f [Hz]

60

70

80

90

100

x 10

Infrared

1.5
1
0.5
0

Figure 2.3: Amplitude spectra for recording 1.


4

x 10

Red

6
4
2
0

0.5

1.5

2
f [Hz]

2.5

3.5

0.5

1.5

2
f [Hz]

2.5

3.5

x 10

Infrared

1.5
1
0.5
0

Figure 2.4: Amplitude spectra for recording 1, shown for only frequencies around
the heart rate interval.

2.2

Data Set 2

Data set 2 consist of four measurements from a healthy subject doing movements. The probe is attached to the subjects right thumb and for references a

2.3 Limitations in measurements

15

Nellcor N-65 were used on the left index finger. Each measurement starts by
the subject is resting hereafter the subject do a movement listed below and ends
with the subject is resting. The movements are
1. Squatting.
2. Moving finger.
3. Moving hand.
4. Moving hand.
The recordings are of length around 130s to 175s and the reference recording
stayed within 97-100%. A plot of the raw signal is shown in figure 2.5 and it is
seen, that the signal changes drastically from around 50s. The heart rate was
not recorded.

1780

Red

1760
1740
1720
1700
1680
0

20

40

60

80
t [s]

100

120

140

20

40

60

80
t [s]

100

120

140

3700

Infrared

3650
3600
3550
3500

Figure 2.5: Plot of recording 1 from data set 2.

2.3

Limitations in measurements

Some known limitations of the measurement setup are listed below.

16

Data
No anti-aliasing filter was used in front of the A/D-converter to avoid
aliasing of noise above the half sampling frequency, fs /2 = 100Hz.
Due to the high DC-level of the reflected light, the resolution of the ACcomponents in the A/D-converted recordings is very low.
Ambient light is not measured and subtracted from the recordings.
Noise due oscillations in the electronic circuit.

2.4

Preprocessing

2.4.1

Normalisation

According to the derivation of optical ratio R equation (1.11) in section 1.2 the
measured light intensity at the systolic stage should be divided by the measured light intensity at the diastolic stage to cancel out absorption due to nonpulsating tissue. This is referred to as normalising the recordings. As seen from
the plot of raw recordings in section 2.1, the data are very noisy. Finding the
local minimum and maximum within each cardiac cycle would thus lead to a
very noisy result. The plot also shows that the DC-level of the recording are
much higher than the AC-level, and therefor using the DC-level as instead of
the diastolic stage will give an insignificant error. This is a common approach
in pulse oximetry.
The logarithm is also omitted as Beer-Lamberts law doesnt strictly hold and a
calibration curve has to be estimated empirically. Therefor the normalisation is
done by dividing the AC-component of recording by the DC-component, where
the DC-component is calculated as the mean of the recording. Let x(t) represent
a recorded PPG signal, the normalised signal xn (t) is then calculated by
xn (t) =

x(t) E{x(t)}
,
E{x(t)}

(2.1)

where E{} is the expectation. The estimation of the optical ratio, denoted R,
from the normalised recording of red light xr (t) and the normalised recording
of infrared light xir (t) is then
= xr (t) .
R
xir (t)

(2.2)

2.4 Preprocessing

2.4.2

17

Bandpass filtering

To remove noise in the measurements, bandpass filtering is used. Both Finite


Impulse Response (FIR) and Infinite Impulse Response (IIR) are used. FIR
filters has the advantage of having linear phase characteristics whereas the recursive structure of IIR filters allows a given amplitude response to be achieved
with an order smaller than for FIR filters.
The standard difference equation for a Nth order FIR filter is
a0 y(t) = b0 x(t) + b1 x(t 1) + . . . + bN x(t N ),

(2.3)

and for a IIR filter


a0 y(t) = b0 x(t)+b1 x(t1)+. . .+bN x(tN )a1 y(t1). . .aN y(tN ). (2.4)
FIR and IIR filters are designed using the build-in Matlab functions fir1 and
butter, where the latter designs a Butterworth filter. The design requires specification of the passband lower- and upper cut frequencies. The passband can
be chosen to be the interval corresponding to possible human heart rates e.g.
0.5Hz fhr 4Hz. If the heart rate is known, the passband can be adapted to
be more narrow around the heart rate frequency. Care has to be taken to examine how suppression of harmonic components of the heart rate effects estimates
of SpO2 , as this will be a trade of between harmonics and high frequency noise.
The order of the filters are chosen as low as possible for archiving the desired
amplitude response. Data is filtered with Matlabs filter function.

18

Data

Chapter

3
Theory

3.1

Averaging Methods

Detecting the actual signal level in the diastolic and the systolic stage of the
noisy recordings will end up in a unreliable result. As the change of SO2 is
relative slow compared to the heart rate, the most simple way of estimating the
is to use some kind of averaging of signal levels.
optical ratio R
One way of doing this, is to calculate the mean of the absolute value of the zero
mean and normalised signals xr (t) and xir (t) with N samples
=
R

1
N
1
N

PN

t=1 |xr (t)|


PN
t=1 |xir (t)|

PN
t=1 |xr (t)|
.
= PN
t=1 |xir (t)|

A similar method is to compare the RMS-values of the signals


q P
v
u PN
N
1
2 (t)
2
u
x
t=1 r
N
t=1 xr (t)

.
R= q P
= t PN
2
N
1
2
t=1 xir (t)
t=1 xir (t)
N

(3.1)

(3.2)

The physical interpretation of these methods is to let the amount of measured


light of each colour be represented by a measure of the signal size respectively,

20

Theory

and calculate the ratio from these measures. The result of these estimates will
of course depend heavily on the signal length N , and noise due to e.g. motion
artifact will be reflected by the estimate, as the method cannot compensate for
this except by averaging.

3.2

Frequency Domain Methods

The optical ratio can also be estimated in the frequency domain by calculation
of the amplitude spectra of the signal using e.g. the Discrete Fourier Transform
(DFT) [23]


1
NX

2i


|X(f )| =
x(t)e N tf
(3.3)


t=0

is then calculated as the ratio of amplitudes of the frequency bins correspondR


ing to the heart-rate fhr for each signals
= |Xr (fhr )| .
R
|Xir (fhr )|

(3.4)

Thus, the estimate rely on detection of the heart rate. By assuming the heart
rate is the most significant component in the interval corresponding to possible
human heart rates e.g. 0.5Hz fhr 4Hz, the heart rate is detected in the
frequency domain by selecting the frequency bin with the largest amplitude
within the interval.
The precision of the heart rate found from the amplitude spectra will depends
on the number of points (samples) N0 used for calculation of the DFT. The
frequency resolution is given by the ratio of the sampling frequency fs to number
of points N0 used in calculation of the DFT, f0 = fs /N0 . For example, if the
heart rate needs to be determined with a resolution of 1 BPM, corresponding to
1/60Hz and the sampling frequency is fs = 200Hz, the number of points used
for the DFT should be
200Hz
fs
=
= 12000.
(3.5)
N0 =
f0
1/60Hz
To compensate for spectral leakage, Hamming windowing is used. The DFT is
calculated using the Fast Fourier Transform (FFT) implementation in Matlab
and if the signal length is shorter then N zero padding is used and if the signal
length is more than N , the signal is truncated.
The advantage of the frequency domain approach is, that it acts as a very
narrow bandpass filter and noise of frequencies different from the detected fhr
is suppressed efficient.

3.3 Masimo DST

3.3

21

Masimo DST

The Discrete Saturation Transform (DST) developed by Masimo corporation [5]


is based on the assumption that the measured signals can be described as a sum
of a desired PPG signal s(t) and a noise signal n(t) due to motion artifacts and
etc. Masimo defines the system as
xir (t) = s(t) + n(t)

(3.6)

xr (t) = ra s(t) + rv n(t)

(3.7)

where ra is the arterial ratio corresponding to the arterial saturation, and rv is


the ratio of venous, or non-arterial, components.
The method is based on removal of the noise term n(t) by the use of Adaptive
Noise Cancellation (ANC), well known from telecommunication etc. ANC can
be used to remove noise from a signal, when a signal containing only the noise,
is present, e.g. one speaking in a microphone in a very noisy environment and
a microphone only picking up the noise. The noise term cannot be directly
subtracted from the speakers signal due to time delay and other differences, but
by using an adaptive filter the noise signal can be filtered to match the noise in
the speakers signal best possible and then be subtracted.
In pulse oximetry, a noise signal is not available, and Masiso therefor defines a
reference noise signal n (t) as a weighted difference of the normalised measured
signals
n (t) = xr (t) rxir (t).
(3.8)
By inserting (3.6) and (3.7) in (3.8)
n (t) = ra s(t) + rv n(t) r(s(t) + n(t))
= (ra r)s(t) + (rv r)n(t)

(3.9)
(3.10)

it is seen from (3.10) that when ra = r the reference noise signal n (t) only
contains the weighted noise of the measurements.
Masimo suggests that r is found in an iterative way, by trying all values of r
corresponding to all Sp O2 levels from 0-100% in steps of e.g. 1%. The measured
signal from the red LED, xr (t), is then filtered by ANC with each noise reference
signal and the power of output signal from the ANC is calculated for each
reference signal. This results in a power spectrum for the values of r that will
have two peaks; one at r = rv and one at r = ra where the latter is the desired
ratio. It is not clear from [5] how to distinguish between the two peaks, and for
the implementation for this thesis, it is assumed that ra < rv as motion artifacts
usually results in lower Sp O2 readings. Care should be taken about this problem

22

Theory

in implementations for real world usage, as if the opposite situation occurs where
the actual SpO2 level is 75% but is estimated to 95% due to motion artifact
reduction! The implementation of DST used in this thesis, uses the Recursive

Figure 3.1: Schematic illustration of Masimo DST method and its behaviour
[16]. In this example, the measured signals contains motion artifacts and the
power spectrum from the outputs of the ANC has peaks around r corresponding
to Sp O2 levels if 60% and 95%. In this case, the Sp O2 is therefor estimated to
95%.
Least Squares (RLS) FIR adaptive filter from the Matlab Filter Design Toolbox.
The order of the filter (the number of weights) are chosen according to length
of the filtered signal to achieve best performance.

3.4

Bayesian Periodic Component Detection

To detect the heart rate from noisy data, a Bayesian approach has been used.
Let the data from a pulse oximetry recording of length N be represented by the
vector x. The signal is then modelled as a sum of K harmonic components
x = w + n

(3.11)

where is a N K matrix of periodic basis functions; t,2k1 = sin(kf0 t), t,2k =


cos(kf0 t) with f0 being the fundamental frequency. w is weight vector of length
K determining the content of the kth harmonic in the signal, and n is the noise
term assumed to be normal distributed with zero mean and unknown variance
2 .

3.4 Bayesian Periodic Component Detection

23

The number of harmonic components K, the fundamental frequency f0 are the


parameters of interest but are unknown. Using Bayes theorem, an estimate of
the probability p(f0 , K|x) is derived as
p(f0 , K|x) =

p(x|f0 , K)p(f0 , K)
p(x)

(3.12)

where p(x|f0 , K) is the likelihood function, p(f0 , K) is the prior probability


and p(x) is a normalisation constant. Given the set of parameters w, 2 , the
likelihood function is
N/2

(xw)2
1
(3.13)
e 22
p(x| 2 , w, , K) =
2
2
the latent variables w and 2 are eliminated by using a convenient prior p(w, 2 )
and integration
Z Z
p(x|f0 , K) =
P (x| 2 , w, , K)P (w, 2 )dwd 2 .
(3.14)
In [9] it is shown how this integration can be solved using the principle of
conjugate priors and a normal-inverse-gamma prior distribution, resulting in
1/2

(dP /2)
|VP |ad
(3.15)
p(x|f0 , K) =
d
N
p
|V|(aP )
(d/2)
with the parameters,
VP1 = V1 +
mP = VP (V1 m + x)
1
aP = a + m V1 m + x x m
P VP mP
dP = d + N

The parameters above are specified as follows; prior covariance V = I with


= 1/(T r( )/N ) and I is the identity matrix. The mean m = 0,
aP = (N + 1)x2 x VP x and d = 3.
With the probability p(x|0) specifying that the signal is Gaussian noise of unknown variance, corresponding to = 0, the probabilities of the model parameterised by f0 and K are then given by
P (f0 , K|x) =
P (0|x) =

P (x|f0 , K)
P
P (x|0) + f0 ,K P (x|f0 , K)
P (x|0) +

P (x|0)
P
.
f0 ,K P (x|f0 , K)

(3.16)
(3.17)

By using this Bayesian approach, the heart rate and, if desired, its harmonic
components can be detected by calculating the above probabilities for a grid of
fundamental frequencies f0 corresponding to the possible heart rate interval.

24

3.5

Theory

Independent Component Analysis

As Masimo reports success with decomposing the measured signal into a desired
PPG signal and undesired noise signal, it is interesting to investigate if the
problem of removing noise can be solved by Independent Component Analysis
(ICA).
The general ICA model is formulated as
X = AS

(3.18)

where X is a matrix of stacked observed signals, A is a mixing matrix and S is


a matrix of independent source signals. The aim is then to estimate A whereby
the source signals can be calculated.
By assuming each of the pulse oximetry recordings contains a component representing the PPG signal s1 (t) and a noise component s2 (t) the ICA model for
pulse oximetry is given by the linear system
xr (t) = a11 s1 (t) + a12 s2 (t)

(3.19)

xir (t) = a21 s1 (t) + a22 s2 (t)

(3.20)

where aij are the coefficients determining the elements of the mixing matrix A in
(3.18). The optical ratio is then estimated by the ratio of the mixing coefficients
of the PPG source signal
= a11 .
(3.21)
R
a21
The ICA problem can solved in several ways and in this thesis, three different
approaches has been applied. All implementaions are available online from the
IMM ICA toolbox. The theory of each algorithm and their properties is given
in the following sections.

3.6

Maximum Likelihood ICA

The Maximum Likelihood ICA (ICAML) algorithm is similar to Information


Maximisation by [1]. An derivation can also be found in [15]. It is a generative
model and with xt being a vector of the tth observation generated from mixing
the source vector st with the mixing matrix A. The posterior probability of the
source signal given the observation and mixing matrix can be formulated as
p(st |xt , A) =

p(xt |st , A)p(st )


p(xt |A)

(3.22)

3.7 Mean Field ICA

25

where p(xt |st , A) is the likelihood, p(st ) is the prior distribution of the
signal, and p(xt |A) is the normalisation factor. With a given prior, The
signal can then be integrated out
Z
p(xt |A) = p(xt |st , A)p(st )dst
Z Y
Y
(xt Ast )
p(st )dst
=
=

Y
1
p(A1 xt ).
| det(A)|

source
source
(3.23)
(3.24)
(3.25)

Defining the separation matrix as the inverse of the mixing matrix W = A1


and using the logarithm, the log likelihood is
X
log(p(xt |A)) = log(| det(W)|) +
log(p(Wxt )).
(3.26)

To maximise the likelihood, the gradient of the log likelihood with respect to
W is needed

log(p(xt |A)) = (W )1 + (st )x


(3.27)
t
W
where (st ) = s t log(p(st )). The choice of thus defines the prior distribution
of the sources in the algorithm. Letting being a linear function, corresponds to
a Gaussian distribution on the sources, this should be avoided as it is invariant
under rotation, and the mixing matrix will be arbitrary. In the implementation
of ICAML by [8], the nonlinear (st ) = tanh(st ) is used, which implies the
prior distribution is assumed to be p(st ) 1/ cosh(st ). This distribution has
heavier tails than the Gaussian distribution and is a common choice as the
distributions of most real world signals have heavier tails. The implementation
uses unconstrained nonlinear optimisation (BFGS) by [18] for optimisation of
the separation matrix W.

3.7

Mean Field ICA

Mean Field ICA (ICAMF) is a probabilistic method for solving the ICA problem
as ICAML, but is more flexible as it can be configured to use several constraints.
The first thing to notice is that it assumes the observed signals X are generated
with an additive noise source n, as is the case of most real world signals,
X = AS + n.

(3.28)

The noise is assumed to be Gaussian with zero mean and covariance and the
posterior is given by
p(S|X, A, , ) =

p(X|S, A, )p(S|)
p(S|A, , )

(3.29)

26

Theory

with p(X|S, A, ) being the likelihood and p(S|) is the prior distribution with
the parameters . In usual Bayesian approach, the sources are integrated out
leaving the parameters to be determined by maximising the likelihood. In the
case where the prior is allowed to be much more flexible, the derivation of the
log likelihood becomes too complicated to track analytically. Instead a lower
bound B is used as objective function, defined by
Z
p(X, S|)
L () log(p(X|)) = log q(S|)
dS
(3.30)
q(S|)
Z
p(X, S|)
q(S|)
dS B(, )
(3.31)
q(S|)
where = {A, , } is used as short hand for the parameters. The property of
the bounds holds for any choice of variational distribution q(S|).
The derivatives of the bound needed for optimisation are easily derived, resulting
in
B(, )

= 1 (XhSi
(3.32)
q AhSS iq ),
A
N
1
B(, )
=
1 h(X AS)(X AS) iq 1 ,
(3.33)

2
2


B(, )
log p(S|)
(3.34)
=

q
where the derivative in (3.34) depends on the choice of source prior.
Optimisation of the of the lower bound is done by an Expectation Maximisation
(EM) algorithm, which in short can be described by its E- and M-step:
E: Maximise B(, ) with respect to keeping fixed.
M: Maximise B(, ) with respect to keeping fixed.
By setting derivatives in (3.32) and (3.33) equal to zero, the obtained EM updates for the mixing matrix and the noise covariance then is
1
A = XhSi
q hSS iq ,

(3.35)

1
h(X AS)(X AS) iq .
(3.36)
N
The update of the prior parameters depends of the chosen distribution and can
therefor not be expressed explicitly. The E- and M-steps are then repeated until
convergence.
=

3.7 Mean Field ICA

27

This approach allows one to use several different priors and let each source have
its own prior. In the implementation used, the priors listed below are build in.
Their statistical properties will not be given here but can be found in [11].

Binary
Gaussian
Gaussian mixture
Bi-Gaussian
Heavy tail
Uniform
Laplace
Positive Gaussian
Exponential

The mixing matrix can be constrained to have only positive elements by using
the exponential function Aij = eij and substitute A by the underlying parameter in the parameter set . With in the parameter set the derivative of the
lower bound becomes
dB
A B
B
=
.
= Aij
dij
ij A
Aij

(3.37)

The mixing matrix can also be set to over- and under-complete for the case
where the number of observations are not equal to the number of sources. The
pulse oximetry system can then be modelled as
X = As + n

(3.38)

with only one source signal s = [st , , sN ] and mixing matrix A = [a1 , a2 ] .
The noise covariance matrix can further be constrained to be isotropic or diagonal for same noise variance on the observations or individual noise variance for
each observation, respectively [25] [21] [20] [14].

28

3.8

Theory

Molgedey and Schouster ICA

Molgedey and Schouster proposed an approach for separation of uncorrelated


sources in [17]. Molgedey and Schouster ICA (ICAMS) is based on dynamic
decorrelation and requires that the sources have different autocorrelation functions, and thus differs from the probabilistic ICA methods.
By time shifting the observation matrix by , denoted as X , the separation
of the sources can be done by solving the eigenvalue problem for the quotient
matrix Q X X (XX )1 [8][7]. The ICA models for the correlation matrices
XX and X X are
XX = ASS A
(3.39)
and
X X = AS S A .

(3.40)

If the sources are independent, the diagonal of the source cross-correlation matrix at lag zero C(0) equals the limit
1
SS = C(0)
N N
lim

(3.41)

and correspondingly for the delayed correlation at lag


lim

1
S S = C( ).
N

(3.42)

The quotient matrix can then be expressed in terms of the cross-correlation


1

Q X X XX
AC( )A

= AC( )A

= AC( )C(0)

(3.43)

1
AC(0)A
1
A
C(0)1 A1
1

(3.44)
(3.45)
(3.46)

Solving the eigenvalue problem for the quotient matrix


Q = ,

(3.47)

and identifying = A and = C( )C(0)1 , the mixing matrix is estimated


directly.
Selection of the time delay is significant for the result of the estimate. An
approximative method for determination of is suggested in [13]. As the requirement of the for separation of the sources is difference in the autocorrelations

3.8 Molgedey and Schouster ICA

29

of the sources, the method tries to find the value of that results in maximum
difference in the autocorrelations of the sources. The objective function of is
defined by

M1
X

si +1 ( ) si ( ) 1
(3.48)
( ) =

M 1
i=1

where si+1 > si are the sorted autocorrelations normalised by the autocorrelation at lag zero so this scales to one. The approximation for the optimal
is then found in an iterative way by first calculating the sources using a initial
value, e.g. = 1, secondly calculate ( ) and select the that gives the smallest
( ) and then start over by recalculating the sources. This procedure is repeated
until the value of stabilises.
A likelihood function can be derived by assuming the sources are given by unknown independent, unit variance, white noise signals Ui,t filtered the unknown
and source specific filters hk
Si,t =

K
X

hi, Ui,t

(3.49)

=0

The likelihood is then given by


p(X|A) =

(X AS)p(S)dS

(3.50)

with the source distribution


p(S) =

Y
i

P
1
1
S
(1 ) S
p
e 2 t,t i,t i t,t i,t
|2i |

(3.51)

where the sources covariance matrix is given by


X
i;t,t =
hi; hi,t t+

(3.52)

which forms Toeplitz matrices under the model assumptions. Evaluating the
integral in equation (3.50) then gives
p(X|A) =

Y
i

1
p
|2i |

1
| det(A)|

21

t,t

i,t (1 )
S
i

t,t


S
i,t

(3.53)

P
where Si,t denotes the sources estimated from A, X by Si,t = l (A1 )i,l Xl,t .
This likelihood expression can be used for comparing the model configuration
and optimisation of .

30

3.9

Theory

Evaluation Scheme

needs some attention as the reference meaThe evaluation of estimates of R


surements are given in % Sp O2 and theoretical relation between Sp O2 and R
doesnt hold but needs to be found empirically. Therefor a calibration curve has
for a range of S O levels.
to be fitted to estimates of R
p 2
A calibration curve is found by fitting a straight line to estimated optical ratios
by using the standard least squares fit. One way of evaluating the fit could be
R
to calculate e.g. the mean of squared residuals for the estimates and minimise
this error by tuning the parameters of the model. This would lead to a biased
fit, as the model will be optimised to one particular data set and new recordings
evaluated using this model will likely have a bigger error.
A better way is to use to data sets; a training set and a test set, where the
calibration curve is fitted to the estimates of the training set, but evaluated
using the test set and then selecting the parameters that gives the minimal
error on the test set. This method requires that the data set can be divided
into two sets with the same properties. When the size of the available data is
small, this partitioning is not possible. When only a training set is available,
cross-validation can be used.
In this thesis, data set 1 is considered to be too small to be parted into a
training and test set, and Leave-One-Out cross-validation (LOOCV) is therefor
for the whole data set and leaving one
used. This is done by calculating R
estimate out for evaluation, and fitting the calibration curve using the remaining
estimates and then calculate the error for the estimate left out. This procedure
is repeated until all estimates has been left out, and the error is calculated to
the fit of the new set of remaining estimates. In this way, a less biased error
expression is obtained.

Chapter

4
Results

In this chapter, the results from calculating the heart rate and oxygen saturation
by the algorithms described in chapter 3 are presented and analysed. This
chapter is parted into sections describing the results from each algorithm.
From data set 1, calibration curves are calculated and the accuracy is compared
In the same way, detection of the
to the window length used for estimating R.
heart rate is done for data set 1 and the performance versus window length
is shown. For calculation of calibration curves, the average of the reference
measurements of Sp O2 for each level is used. The accuracy of the Datex Ohmeda
AS/3, used for reference measurements, is not known. Masimo states in their
product specifications that the accuracy of Sp O2 within 70% to 100% is 2%
without motion and 3% with motion or low perfusion. The accuracy of the
Nellcor OxiMax N-65 is specified as Masimo. The largest difference in start and
end Sp O2 references measurements is 6% Sp O2 and the use of the average value
is therefore assumed to be the best use of the reference measurements, but the
uncertainty of references should be noted. The cross-validation scheme is used
to calculate the error of the calibration curve, and is calculated as the Euclidean
distance from the reference measurement to the estimated Sp O2 level.
Data set 2 is used to examine how resistant the algorithms are to motion artifacts
when calculating the Sp O2 . The heart rate is also calculated even though no
reference heart rate measurements are available.

32

4.1

Results

Preprocessing

The preprocessing of data consists of normalisation and bandpass filtering. Normalisation is done by subtracting the DC-component and dividing by the DCcomponent. In appendix A it is investigated how sensitive the DC-components
are to variations in the signals, and it is found that the DC-levels are very
insensitive and no further care needs to be taken.
The signals needs to be bandpass filtered to achieve useable results when es for all methods except frequency domain methods. Tuning of the
timating R
filter cut-frequencies results in increasing performance of the algorithms. FIR
and IIR filters are used, and the order is increased until the reduction in error
is insignificant. In appendix B the settling time of the filters are examined to
find out how the distortion due to bandpass filtering affects the estimates. It is
concluded better performance is achieved by discarding the first 5s (1000 samples) of a signal window after bandpass filtering, and this is thus done in the
results presented in the following sections. To get a feeling of how the choice of
bandpass filter cut-frequencies affects the error of the estimates, the mean error
of all estimates is plotted as contour plots as function of cut-frequencies for both
FIR and IIR filters of optimal orders. For these contour plots, notice that the
lower cut-frequency is changed in steps of 0.1Hz and the upper cut-frequency is
changed in steps of 1Hz and interpolation is used between the calculated errors.

4.2

Averaging Method

The results presented in this section are obtained using the method given by
equation (3.1) as this method has shown to perform better than the RMS
method. In figures 4.1 and 4.2 the mean error is shown as function of bandpass
filter cut-frequencies for a 1024th order FIR filter and a 6th order IIR filter respectively. The figures show that the error is decreased by selecting the upper
cut-frequency as low as possible according to the heart rate frequency and the
lower cut-frequency as high as possible according to the heart rate. Notice that
the order of the FIR filter should be chosen around 1024th to obtain the desired
amplitude response whereas the same performance is achieved with a 6th order
IIR filter. As approximately the same performance is achieved for both FIR and
IIR filters, it is concluded that the phase-distortion of the IIR filter dont affect
the calculation of Sp O2 .
The best calibration curve using a IIR bandpass filter is shown in figure 4.3,
with the estimates calculated from data and the theoretical relation between R

4.2 Averaging Method

33

2
1.9

0.95

1.8

0.9

1.7

0.85

1.6
1.5
0.75

f [Hz]

0.8

1.4
0.7
1.3
0.65
1.2
0.6
1.1
0.55

0.5

5
f [Hz]

Figure 4.1: Mean error as function of 1024th order FIR bandpass filters.
1

2
1.9

0.95

1.8

0.9

1.7
0.85
1.6
1.5
0.75

f [Hz]

0.8

1.4
0.7
1.3
0.65
1.2
0.6

1.1

0.55

0.5

5
f [Hz]

Figure 4.2: Mean error as function of 6th order IIR bandpass filters.

34

Results

to Sp O2 is shown as well. The obtained calibration curve is the straight line


+ 123, and it is seen the slope of the line is close to the
given by Sp O2 = 30R
theoretical curve in the shown region.
Theo. Curve
Fitted Cal. Curve
R estimates

100

95

p 2

S O [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure 4.3: Calibration curve obtained using IIR bandpass filtering.

To examine how the precision depends on the signal length, the signals are split
into windows of varying length and the mean error for each window length is
calculated. The result is shown in figure 4.4 for both a FIR and IIR bandpass
filter. It is seen, that the error decreases as the window length increases for
both filters. After around 10s the error increases a little, this is caused by only
a single signal window can be used when the signal length reaches 11s, and thus
less data is used.
To see how the method performs when the recordings contain motion artifacts,
is calculated for windows of length 10s and 20s after
data set 2 is used. R
bandpass filtering with a 8th order IIR filter with passband 0.8Hz to 4Hz. The
estimates for each window are shown in figures 4.5 and 4.6 for 10s and 20s window lengths respectively. The first thing to notice is, the estimates lie around
1.3 which corresponds to a Sp O2 level around 85% whereas the reference mea from data
surements are within 97% to 100%. This means that estimates of R
set 2 cannot be compared to the Sp O2 level using the calibration curve obtained
from data set 1.

4.2 Averaging Method

35

4.5
FIR
IIR
4

Abs Error in % SpO2

3.5

2.5

1.5

0.5

10
12
Window Length [s]

14

16

18

20

Figure 4.4: Mean error versus window length.


The beginning of the measurements is recorded with the subject resting, and
estimates from the first, say, 30s can therefore be considered as approximate
references for the rest of the recordings with motion artifacts. From the plots
it is seen that the estimates suffer heavily from motion artifacts. Increasing
the window length doesnt stabilise the estimates noticeable. Calculating the
error as the Euclidean distance from each estimate of each recording to the first
reference estimate can be done to compare the error for different window lengths
and bandpass filters, but as the estimate errors tend to be very high, and vary a
lot for different configurations it has not been possible find an optimal window
length nor an optimal bandpass filter.

4.2.1

Summary on Averaging Method

To summarise the results from the averaging method, a calibration curve is


found with an error of about 1% Sp O2 if data is bandpass filtered with a narrow
passband around the heart rate frequency. The error increases as the window
length decreases, and the error is around 2% Sp O2 for 10s window length. The
method is not able to give reliable estimates when the recordings contain motion
artifacts as in data set 2.

36

Results

2
1
2
3
4

1.5

0.5

20

40

60

80
Time [s]

100

120

140

160

estimated from data set 2 with windows of length 10s.


Figure 4.5: R
2
1
2
3
4

1.5

0.5

20

40

60

80

100

120

140

Time [s]

estimated from data set 2 with windows of length 20s.


Figure 4.6: R

4.3 Frequency Domain Method

4.3

37

Frequency Domain Method

In this section, results obtained from the frequency domain approach by us relies on the
ing FFT are presented. As the FFT method for estimation of R
detection of the heart rate, the results from heart rate detection are first analysed. The heart rate detection is limited to be in the interval from 30BPM to
240BPM.
The only parameter to consider when calculating the DFT by FFT is the number
of points N0 which determines the frequency resolution. The reference heart
rate is measured in integers of BPM, and with a sampling frequency of 200Hz,
a frequency resolution of 1BPM is obtained using N0 = 12000. The heart rate
is calculated for different window lengths and for a range of N0 . The results
are shown in figures 4.7 and 4.8 for the infrared and red recordings respectively.
From the figures it is seen that the error decreases when the window length
increases, and that N0 = 12000 gives the best result.
10
N0=2000
9

N0=3000

N0=5000

N0=4000
N0=6000
N0=12000

Abs Error [BPM]

N0=24000

10
15
Window Length [s]

20

25

Figure 4.7: Error in BPM from calculating the heart rate in by FFT of the
infrared recordings. N0 is the number of points used in the FFT.

To compensate for spectral leakage due to finite signal length, Hamming windowing is used. The results with Hamming windowing are shown in figures
4.9 and 4.10 for infrared and red recordings respectively. The use of Hamming
windowing reduces the error when the window length decreases, but increases
the error a bit for long windows. Nellcor specifies the heart rate accuracy of

38

Results

10
N0=2000
9

N0=3000

N0=5000

N0=4000
N0=6000
N0=12000

Abs Error [BPM]

N0=24000

10
15
Window Length [s]

20

25

Figure 4.8: Error in BPM from calculating the heart rate in by FFT of the red
recordings. N0 is the number of points used in the FFT.
their OxiMax N-65 to 3BPM and Masimo specifies theirs products to have an
accuracy of 3BPM for no motion and 5BPM with motion. Notice that the
reference heart rate was only measured in the beginning of the recording and
small changes thus might occur.
A calibration curve obtained using the N0 = 12000 point FFT and Hamming
windowing for recordings of length 25s is shown in figure 4.11. The obtained
+ 121 and the cross-validation error
calibration curve is given by Sp O2 = 29R
is 0.9% Sp O2 .
Plots of the error versus window length are shown in figures 4.12 and 4.13
without and with Hamming windowing. The error decreases when the window
length increases. The effect of the Hamming window small.
The results of heart rate detection of data set 2 are shown in figures 4.14 and
4.15 for window lengths of 10s and 20s respectively. For the 10s windows, the
heart rate is detected to be around 60BPM during the first 40s for all four
measurement which is reasonable for an adult at rest. After 40s, the heart rate
changes and especially measurement 1, 3 and 4 seems unreliable as they drop
below 40BPM. Also the change from 95BPM to 65BPM of measurement 2 at 80s
is unrealistic. For the 20s windows, the results are reasonable for measurement
3 and 4, but the drop below 40BPM of measurement 1 at 40s and the change
from 90BPM to 60BPM are unrealistic.

4.3 Frequency Domain Method

39

10
N0=2000
N0=3000

N0=4000
N =5000
0

N0=6000
N =12000
0

Abs Error [BPM]

N0=24000

10
15
Window Length [s]

20

25

Figure 4.9: Error in BPM from calculating the heart rate in by FFT of the
Hamming windowed infrared recordings. N0 is the number of points used in the
FFT.
from data set 2 are shown in figures 4.16 and 4.17 for
Results of estimating R
window lengths of 10s and 20s respectively. For the 10s estimates, the estimate
of the first window of all measurements except number 1 is very close. For the
second window, measurement number 4 begins to deviate, and after 40s the
estimates differ a lot and are thus very sensitive to motion artifacts. Increasing
the window length to 20s gives a similar result.

4.3.1

Summary on Frequency Domain Method

Detection of the heart rate by N0 = 12000 point FFT can be done within an
error of 3BPM for window lengths of at least 12s and hamming windowing. The
result is very similar for both red and infrared recordings. A calibration curve
is obtained with an error around 1% Sp O2 for 25s window length and Hamming
windowing. The error increases as the window length increases and is around
for data with motion
2% Sp O2 for 10s windows. The FFT fails to estimate R
artifacts from data set 2, as it is doubtful whether the heart rate detection for
this data set is reliable.

40

Results

10
N =2000
0

N0=3000

N0=5000

N =4000
0

N0=6000
N0=12000

Abs Error [BPM]

N0=24000

10
15
Window Length [s]

20

25

Figure 4.10: Error in BPM from calculating the heart rate in by FFT of the red
Hamming windowed recordings. N0 is the number of points used in the FFT.
Theo. Curve
Fitted Cal. Curve
R estimates

100

95

p 2

S O [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure 4.11: Calibration curve obtained using N0 = 12000 point FFT of 25s
window length and Hamming windowing.

4.3 Frequency Domain Method

41

8
N0=2000
N =3000
0

N0=4000
N0=5000
N =6000
0

N0=12000

Abs Error in % SpO2

N0=24000
5

10
15
Window Length [s]

20

25

Figure 4.12: Error versus window length for calibration curves obtained by
N0 = 12000 point FFT without Hamming windowing.
8
N0=2000
N0=3000
7

N0=4000
N0=5000
N0=6000

N0=12000

Abs Error in % SpO2

N0=24000
5

10
15
Window Length [s]

20

25

Figure 4.13: Error versus window length for calibration curves obtained by
N0 = 12000 point FFT with Hamming windowing.

42

Results

120
1
2
3
4

110

100

HR [BPM]

90

80

70

60

50

40

30

20

40

60

80
Time [s]

100

120

140

160

Figure 4.14: Heart rate estimates of the infrared recordings from data set 2 using
N0 = 12000 point FFT and window length of 10s with Hamming windowing.
100
1
2
3
4

90

HR [BPM]

80

70

60

50

40

30

20

40

60

80

100

120

140

Time [s]

Figure 4.15: Heart rate estimates of the infrared recordings from data set 2 using
N0 = 12000 point FFT and window length of 20s with Hamming windowing.

4.3 Frequency Domain Method

43

2
1
2
3
4

1.5

0.5

20

40

60

80
Time [s]

100

120

140

160

estimates of data set 2 using N0 = 12000 point FFT and window


Figure 4.16: R
length of 10s with Hamming windowing.
2
1
2
3
4

1.5

0.5

20

40

60

80

100

120

140

Time [s]

estimates of data set 2 using N0 = 12000 point FFT and window


Figure 4.17: R
length of 10s with Hamming windowing.

44

4.4

Results

Masimo DST

The results from the Masimo DST algorithm are presented in this section. The
performance of the DST algorithm is improved by bandpass filtering the recordings. FIR and IIR filters of several orders are used, and the order of the adaptive
filter in the DST algorithm is varied as well. The mean error is shown for both
FIR and IIR filters in figures 4.18 and 4.19, respectively. The order of the adaptive filter is 128, higher orders are considered as redundant as the performance
is acceptable according to the uncertainty of the reference measurements, and
+ 125
will increase the computation complexity further. Sp O2 = 31R
1

0.95

2.8

0.9

2.6

0.85

2.4

fl [Hz]

0.8

2.2

0.75

0.7
1.8
0.65
1.6
0.6
1.4
0.55
1.2
0.5

2.5

3.5

4
f [Hz]

4.5

5.5

Figure 4.18: Mean error of Masimo DST as function of bandpass cut-frequencies.


The filter is a 1024th order FIR filter. The minimum error is 1.1% Sp O2 at
fl = 0.8Hz and fh = 2Hz.
To demonstrate how the DST algorithm works, a plot of the adaptive filter
for recording 1 in data set 1 is shown in figure
output power for a range of R
= 0.8,
4.21. The power curve has one peak in the region of interest around R
and thus no noise term is detected. The normalised and IIR bandpass filtered
signal is shown in 4.22 and the output signals from the DST algorithm are
shown in 4.23. The pulsating nature of the PPG signals are easy to recognise
from the bandpass filtered signals, and most noise seems to be removed. After
the adaptive filtering, the PPG signal is still easily differentiated from the noise

4.4 Masimo DST

45

1
2.2
0.95
2.1
0.9
2
0.85
1.9
1.8

0.75

1.7

f [Hz]

0.8

0.7

1.6

0.65

1.5

0.6

1.4
1.3

0.55

0.5

1.2
2

2.5

3.5

4
f [Hz]

4.5

5.5

Figure 4.19: Mean error of Masimo DST as function of bandpass cut-frequencies.


The filter is a 8th order IIR filter. The minimum error is 1.2% Sp O2 at fl =
0.9Hz and fh = 2Hz.

signal.
To examine how performance of the DST for shorter window lengths, the order
of the adaptive filter is varied as well. The mean error is shown as contour plots
as a function of window length and adaptive filter order in figures 4.24 and 4.25
for FIR and IIR filters respectively. It is seen, that the error depends more on
the window length than the adaptive filter order and the adaptive filter order
should be chosen as hight as possible, especially when the window length is high.

Data set 2 is used to test how the DST algorithm performs on data with motion
are shown in figures 4.26 and 4.27 for window lengths
artifacts. Estimates of R
of 10s and 20s respectively. The estimate from the DST algorithm behaves
much like the estimates from the averaging and FFT methods. The estimates
are most stable during the first 30s, followed by the period with motion artifacts
where the estimates are out of range. At the end, the estimates end close to the
start values. Increasing the window length to 20s, doesnt improve the result
significantly.

46

Results

Theo. Curve
Fitted Cal. Curve
R estimates

100

95

p 2

S O [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure 4.20: Calibration curve obtained using Masimo DST.

300

250

Power

200

150

100

50

0.5

1.5
R

2.5

Figure 4.21: DST power spectra.

4.4 Masimo DST

47

Red

0.5
0
0.5
1

10

15
Time [s]

20

25

10

15
Time [s]

20

25

Infrared

0.5
0
0.5
1

Figure 4.22: Recording 1 from data set 1 after normalisation and IIR bandpass
filtering.
1

PPG

0.5
0
0.5
1

10

15
Time [s]

20

25

10

15
Time [s]

20

25

Noise

0.5
0
0.5
1

Figure 4.23: PPG and noise signals from recording 1 from data set 1 obtained
using Maismo DST.

48

Results

5
120
4.5
100

Adaptive FIR filter order

80

3.5

60

2.5
40
2
20
1.5
2

10
12
Window Length [s]

14

16

18

20

Figure 4.24: Mean error as a function of window length and adaptive filter order
for FIR bandpass filter.

4.4.1

Summary on DST

With the implementation of Masimo DST, it is possible to calculate a calibration


curve with an error close 1% Sp O2 by using optimal bandpass filtering. It is
shown, that the order of the adaptive filter is of less importance than the length
of the windows, and should in general be chosen high as possible, but with the
order of 128 acceptable performance is achieved. The power spectra produced
for signals with very
by the DST algorithm has peaks at the expected level of R
low or no motion artifacts, and the separated PPG and noise signal are easy
from signal with motion
to identify. The DST algorithm fails to estimate R
artifact from data set 2.

4.4 Masimo DST

49

5
120
4.5

100

Adaptive FIR filter order

3.5

80

3
60
2.5
40
2

20

1.5

10
12
Window Length [s]

14

16

18

20

Figure 4.25: Mean error as a function of window length and adaptive filter order
for IIR bandpass filter.
2
1
2
3
4

1.5

0.5

20

40

60

80
Time [s]

100

120

140

160

estimates using DST on data set 2 with windows of length 10s.


Figure 4.26: R

50

Results

2
1
2
3
4

1.5

0.5

20

40

60

80

100

120

140

Time [s]

estimates using DST on data set 2 with windows of length 20s.


Figure 4.27: R

4.5 Bayesian Periodic Component Detection

4.5

51

Bayesian Periodic Component Detection

The Bayesian periodic component detection is used for detection of the heart
rate, and the results are given here. The heart rate interval is specified as
30BPM to 240BPM with a resolution of 1BPM to match the reference heart
rate measurements. It is only of interest to detect the fundamental component
corresponding to the heart rate and no higher order components.
The results from detection of the heart rate of both the red and infrared recordings of data set 1 are shown in figure 4.28. The error decreases as the window
length increases and the performance is similar to the FFT method.
10
Infrared
Red
9

Abs Error [BPM]

10
15
Window Length [s]

20

25

Figure 4.28: Error versus window length from detection of heart rate using
Bayesian periodic component detection.

Detection of the heart rate on data set 2 is shown in figures 4.29 and 4.30 for
window length of 10s and 20s respectively. The results is similar to the result
from the FFT method, but notice that heart rate reaches the lower limit of
30BPM for measurements 1,3, and 4 for 10s windows and for 1,2, and 3 for 20s
windows.

52

Results

110
1
2
3
4

100

90

HR [BPM]

80

70

60

50

40

30

20

40

60

80
Time [s]

100

120

140

160

Figure 4.29: Heart rate results from using Bayesian heart rate detection on data
set 2 with a window length of 10s.
100
1
2
3
4

90

HR [BPM]

80

70

60

50

40

30

20

40

60

80

100

120

140

Time [s]

Figure 4.30: Heart rate results from using Bayesian heart rate detection on data
set 2 with a window length of 20s.

4.6 Maximum Likelihood ICA

4.6

53

Maximum Likelihood ICA

The maximum likelihood ICA (ICAML) is the simples ICA algorithm used in
this thesis. Contour plots of the mean error as function of bandpass filter cutfrequencies, shown in figures 4.31 and 4.32 for FIR and IIR filters respectively,
reveal that acceptable performance is not obtained. A calibration curve for
20s windows and best IIR filter is shown in figure 4.33, and it is seen that
differ a lot from what is found with the previous presented
the estimates of R
methods. It is therefore concluded that the ICAML fails to estimate the mixing
matrix that separates the signal correctly. The reason for this is the prior
distribution in the implementation and other prior distributions should be tried.
To give an example of how the signals are separated using ICAML, measurement 5 from data set 1 after bandpass filtering is shown in figure 4.34 and
the separated PPG and noise signals are shown in figure 4.35. The pulsating
PPG signals are easily recognised from both the red and infrared signals after
bandpass filtering, whereas both the PPG and noise signals looks more noisy.
1

40

0.95
35
0.9
30

0.85

fc1 [Hz]

0.8
25
0.75
20

0.7

0.65
15
0.6
10

0.55

0.5

5
fc2 [Hz]

Figure 4.31: Mean error as function of bandpass filter cut-frequencies for a


1024th order FIR filter.

54

Results

0.95

16

0.9
14
0.85

12

0.75

c1

[Hz]

0.8

10

0.7

0.65
8
0.6

0.55

0.5

5
fc2 [Hz]

Figure 4.32: Mean error as function of bandpass filter cut-frequencies for a 8th
order IIR filter.
Theo. Curve
Fitted Cal. Curve
R estimates

100

95

SpO2 [%]

90

85

80

75

0.2

0.4

0.6

0.8

1
R

1.2

1.4

1.6

1.8

Figure 4.33: Calibration curve obtained using IIR bandpass filtering and
ICAML.

4.6 Maximum Likelihood ICA

55

x 10

Red

0.5
0
0.5
1

10

15
Time [s]

20

25

10

15
Time [s]

20

25

x 10

Infrared

0.5
0
0.5
1

Figure 4.34: Measurement 5 from data set 1 after bandpass filtering.

PPG

2
0
2
4

10

15
Time [s]

20

25

10

15
Time [s]

20

25

Noise

Figure 4.35: PPG and noise signals separated by ICAML.

56

4.7

Results

Mean Field ICA

Mean Field ICA (ICAMF) differs from ICAML as it assumes the observations
are noisy and several constraints can be used, e.g. different prior distributions.
ICAMF is used to obtain a calibration curve for data set 1 constrained in many
ways and by using all combinations of prior distributions. The bi-Gaussian prior
distribution gives the best results, and a PPG signal is always identified from
the separated source signals. The interpretation of the second source signal is
on the other hand not clear, as noise is detected in the noise term. The model
is therefore reduced to only separate one source signal from recordings as this
simplification also have other advantages such as no signal sorting is needed and
the algorithm speeds up as the complexity depends on the number of sources.
Best results are obtained when the covariance matrix of the Gaussian noise term
is set to be diagonal, meaning the noise level from each observation are allowed
to be different. The mixing matrix can be constrained to be positive, but it
does not increase the performance any further. The expectation maximisation
optimiser is used and the expectation consistent solver is used as it has shown
to be the fastest configuration.
The effect of bandpass filtering before using ICAMF is shown in figures 4.36
and 4.37 for FIR and IIR filters respectively, and again it is concluded that the
passband should be chosen to be quite narrow around the heart rate frequency.
The calibration curve obtained using the best IIR filter is shown in figure 4.38.
The mean error versus window length is shown in figure 4.39 and it is seen, that
the error decreases as the window length increases.
To give an example of the PPG signal and noise signals separated using ICAMF,
these signals are shown for measurement 5 from data set 1 in figure 4.40. It is
seen that all signals are easily identified.
To investigate how ICAMF performs on signals with motion artifacts, estimates
calculated using ICAMF on data set 2 are shown in figures 4.41 and 4.42
of R
for window length of 10s and 20s respectively. It is seen that ICAMF also fails
when motion artifacts is present and acts much like the methods
to estimate R
described above. Best performance is seen on measurement 2 for both window
lengths.

4.7 Mean Field ICA

57

0.95
1.8

0.9

0.85
1.6

0.75

f [Hz]

0.8

1.4
0.7

0.65

1.2

0.6

0.55

0.5

5
f [Hz]

Figure 4.36: Mean error as function of bandpass filter cut-frequencies for a


1024th order FIR filter.

4.7.1

Summary on Mean Field ICA

With optimal bandpass filtering and ICAMF configured to separate one source
with a bi-Gaussian prior and letting the noise covariance matrix be diagonal,
very good results are obtained for calculation of calibration curves with an mean
from signals with motion
error below 1% Sp O2 . ICAMF is not able to estimate R
artifacts from data set 2.

58

Results

0.95
1.8
0.9

0.85
1.6

fl [Hz]

0.8

0.75

1.4

0.7
1.2

0.65

0.6
1
0.55

0.5

5
f [Hz]

Figure 4.37: Mean error as function of bandpass filter cut-frequencies for a


1024th order IIR filter.
Theo. Curve
Fitted Cal. Curve
R estimates

100

95

p 2

S O [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure 4.38: Calibration curve obtained using IIR bandpass filtering and
ICAMF.

4.7 Mean Field ICA

59

4.5
FIR
IIR
4

Abs Error in % SpO2

3.5

2.5

1.5

10
12
Window Length [s]

14

16

18

20

Figure 4.39: Mean error versus window length.

PPG

10

15
Time [s]

20

25

10

15
Time [s]

20

25

0.2

Noise

0.1
0
0.1
0.2

Figure 4.40: PPG and noise signals separated using ICAMF on measurement 5
from data set 1.

60

Results

2
1
2
3
4

1.5

0.5

20

40

60

80
Time [s]

100

120

140

160

on data set 2 using 10s windows.


Figure 4.41: Estimates of R

2
1
2
3
4

1.5

0.5

20

40

60

80

100

120

140

Time [s]

on data set 2 using 10s windows.


Figure 4.42: Estimates of R

4.8 Molgedey and Schouster ICA

4.8

61

Molgedey and Schouster ICA

Molgedey and Schouster ICA (ICAMS) differs from the probabilistic ICA in the
way that it requires that the source signals have different autocorrelations. The
mixing matrix is then estimated by maximising the difference in autocorrelation
of the separated source signals.
The effect of bandpass filtering is shown in figures 4.43 and 4.44. The result
is close to what is seen from the other methods, but notice that the upper
frequency should be chosen higher than what is found for the other methods.
This indicates that the method is not as sensitive to noise of frequencies above
the heart rate frequency. The calibration curve obtained using the best IIR
1024th order FIR bandpass filter
1

0.95
1.8
0.9

1.6

0.85

0.8

f [Hz]

1.4
0.75
1.2

0.7

0.65
1
0.6
0.8

0.55

0.5

10

11

12

13

f [Hz]
h

Figure 4.43: Mean error as function of bandpass filter cut-frequencies for a


1024th order FIR filter.
filter, is shown in figure 4.45. The error is 1% Sp O2 . The mean error versus
window length is shown in figure 4.46, and it is seen that the error decreases as
the window length increases.
To give an example of the PPG signal and noise signal separated using ICAMS,
these signals are shown for measurement 5 from data set 1 in figure 4.47. It is
seen that the separated PPG signal is similar to the signal found by ICAMF

62

Results

1024th order FIR bandpass filter


1

0.95
1.8
0.9

1.6

0.85

0.8
fl [Hz]

1.4
0.75
1.2

0.7

0.65
1
0.6
0.8

0.55

0.5

10

11

12

13

f [Hz]
h

Figure 4.44: Mean error as function of bandpass filter cut-frequencies for a 8th
order IIR filter.

and the noise signal looks similar as well.

To examine how the approximate method used to optimise the time delay
used in the algorithm, the log likelihood is calculated for all values of tau for
is very sensitive to the value of , but using
data set 1. The result shows that R
estimates found from maximum likelihood do not improve the result and it is
thus concluded that the approximate method for optimising works well. The
result is shown in appendix D.

ICAMF is also applied on data set 2, to examine performance on signals with


are shown in figures 4.48 and 4.49 for window
motion artifacts. Estimates of R
length of 10s and 20s respectively. Also for ICAMS, the estimates are very
sensitive to motion artifacts. Scatter plots of data set 2 are shown in appendix
C. From the scatter plots it is seen that the red and infrared recordings are
linear dependent, as the ICA model assumes.

4.8 Molgedey and Schouster ICA

63

Theo. Curve
Fitted Cal. Curve
R estimates

100

95

p 2

S O [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure 4.45: Calibration curve obtain using ICAMS and IIR bandpass filtering.
7
FIR
IIR
6

Abs Error in % SpO2

10
12
Window Length [s]

14

16

Figure 4.46: Mean error versus window length.

18

20

64

Results

PPG

2
0
2
4

10

15
Time [s]

20

25

10

15
Time [s]

20

25

Noise

2
0
2
4

Figure 4.47: PPG and noise signals separated using ICAMF on measurement 5
from data set 1.
2
1
2
3
4

1.5

0.5

20

40

60

80
Time [s]

100

120

140

160

for data set 2 using 10s windows.


Figure 4.48: Estimates of R

4.8 Molgedey and Schouster ICA

65

2
1
2
3
4

1.5

0.5

20

40

60

80

100

120

140

Time [s]

for data set 2 using 20s windows.


Figure 4.49: Estimates of R

4.8.1

Summary on Molgedey and Schouster ICA

By using an optimised bandpass filter, a calibration curve is obtained with a


mean error of 1% Sp O2 . The error increases for shorter window lengths, but
is very sensitive to the
for 10s windows the mean error is about 2% Sp O2 . R
value of , but the approximation used for optimising the time delay perform
better than optimising by maximum likelihood. ICAMS is sensitive to motion
artifact in the signals from data set 2.

66

Results

Chapter

Discussion and Conclusion

In this chapter, a discussion of the results presented in chapter 4 is found, as well


as an outlook with topics that needs further research. Finally the conclusion of
this thesis is given.

5.1

Discussion

The results show, that calibration curves can be found with all methods except
ICAML from data set 1 with good accuracy. All methods except the FFTmethod requires bandpass filtering to obtain useful results. Both FIR and IIR
filters can be used but the order and cut-frequencies should be chosen with
care. With an optimised bandpass filter, low frequency noise due to e.g. small
movements is suppressed, and noise of higher frequency from the electronics in
the probe is suppressed as well, resulting in easy recognisable PPG signals. The
heart rates in data set 1 are in the interval from 51BPM to 72BPM and can
be considered as the resting heart rate for adults. Measurements at high heart
rate should be carried out to determine whether the bandpass filter should be
adapted to the heart rate or if a fixed passband can be used, as choosing the
higher cut-frequency probably is a trade off between heart rate frequency and
high frequency noise from the probe.

68

Discussion and Conclusion

To adapt the passband to the heart rate, reliable detection of the heart rate
is of course needed. It is shown that the heart rate can be found from data
set 1 with an accuracy of 3BPM corresponding to the accuracy of commercial
pulse oximeters by both FFT and the Bayesian periodic component detector. As
data set 1 only contains recordings from a resting subject, heart rate detection
should be carried out on recordings on several other conditions higher heart
rates, increasing and decreasing heart rate etc.
As the heart rate is well detected by FFT from data set 1, the Sp O2 can be
estimated with good results by FFT, as this method acts as bandpass filtering
in the frequency domain.
The implementation of the Masimo DST algorithm is tested to work well on
data set 1, but the accuracy is not better than the simpler averaging and FFT
methods. Besides this, it is the slowest method used in this thesis as the signals
are filtered by the adaptive filter a new reference signal in each iteration of
finding the optimal reference filter.
Independent component analysis has proven to work well on data set 1 when
the problem is solved using constraints. The simple Maximum Likelihood ICA
fails to separate the source signal due to improper choice of prior distribution,
whereas the Mean Field ICA gives good results constrained to separate only
one source signal with the bi-Gaussian source prior and a Gaussian noise term.
Separation of only one source signal from noise, speeds up the algorithm significantly but ICAMF is the most complex ICA algorithm used. The pulsating
nature of the PPG signal is reflected by its autocorrelation and noise components with typically different autocorrelation, makes it possible to separate the
PPG and noise signal using Molgedey and Schouster ICA. ICAMS is very fast,
and the approximate optimisation is usually done with less than four iterations
for data set 1. The algorithm suffers from heavy fluctuations in estimation of
if the time delay is not optimised correctly. An algorithm that combines
R
the probabilistic ICA model with autocorrelation constraints in a Kalman filter
alike model is found in [19]. As further work, it is recommended to examine
how this algorithm performs on pulse oximeter signals.
Estimation Sp O2 from recordings with motion artifacts from data set 2 turns
cannot be
out to be a hard task. First, it is found that the range of estimated R
compared to the calibration curve obtained from data set 1. Experiments with
the probe has shown that it is sensitive to ambient light, and this might explain
this problem, but in future work calibration curves needs to be determined
from more subjects to investigate how personally dependent the recordings are.
The first part of the measurements are recorded with the subject resting, and
estimate of this part can therefore be compared to estimates during motion. It

5.2 Conclusion

69

insensitively to motion artifacts,


turns out that all algorithms fails to estimate R
and as the estimates fluctuates heavily it has not been possible to compare
the algorithms quantitatively as the mean error of the estimates will reflect
estimates that should be considered as out of range. To compare the estimates
quantitatively, some criteria reflecting the confidence of the estimate should be
put up. This could be based the possible rate of change in Sp O2 level. Evaluating
the error of the estimates also depends of the slope of the calibration curve to
to a value in % S O that it can be compared to the
convert the error of R
p 2
accuracy of commercial pulse oximeters. It is noticeable that the Masimo DST
better than the simple averaging and FFT
algorithm is not able to estimate R
methods, as well as detection of the heart rate also seems to be unreliable.
estimate should be considered
Finally some post processing scheme of the R
to obtain a more stable reading of Sp O2 . Some commercial pulse oximeters
use moving averaging to smooth the estimates. For this purpose, time series
modelling can be considered e.g. by predicting the expected value of the next
estimate based on previously obtained values and physiological properties of
e.g. change in oxygen saturation and heart rate. This might end up in an auto
regressive and/or moving average (ARMA) model corresponding to IIR low-pass
filtering. Kalman filtering should also be considered for this problem.

5.2

Conclusion

In this thesis, it is shown that the oxygen saturation can be estimated with
from measurements recorded using the pulse oximeter probe developed for the
electronic patch. The accuracy is within 2% Sp O2 depending on the window
length. It is found that the estimates depend heavily on bandpass filtering the
noisy signals. Both simple averaging and FFT methods are compared to an
implementation of the DST algorithm developed by Masimo Cooperation, and
further are the approach of independent component analysis investigated.
It is shown that the problem of separating the PPG signal from noise can be
done by solving the ICA problem with proper constraints. The simple Maximum
Likelihood ICA fails to separate the source signals correctly due to the bad choice
of prior distribution. With Mean Field ICA, it is shown that the problem can
be solved by a probabilistic ICA model by using a bi-Gaussian source prior.
The results are improved by letting covariance matrix of the Gaussian noise
term have different variance for each recording of red and infrared light. The
Molgedey and Schouster ICA is able to separate the signals with very good
results as the PPG signal and noise have very different autocorrelations. The
results from ICAMS are very sensitive to the time delay used in the algorithm

70

Discussion and Conclusion

and it is found that the approximate optimisation scheme works better than
calculating the likelihood for each value of .
By tuning the bandpass filter, the performance of all methods except ICAML
are about the same for the measurements carried out on a resting subject at
Sp O2 levels from 75% to 100% and the obtained calibration curves have similar
slopes and intercepts.
Estimation of Sp O2 from signals with motion artifacts reveals that the recordings
from to subjects cannot be compared using the obtained calibration curves.
Further, all methods are very sensitive to motion artifacts and fail to estimate
with an acceptable accuracy.
R
Beside this, it is shown that the heart rate can be detected with an accuracy
around 3BPM depending on the signal length using both FFT and a Bayesian
periodic component detector.
To sum up, it can be concluded that the oxygen saturation can be estimated
with an accuracy at least as good as conventional methods and the Masimo
DST algorithm for data sets without significant motion artifacts. It has not
been possible to produce reliable results from data sets with motion artifact
using ICA nor other methods, and thus it can be concluded that this topic
needs further research.

Appendix

A
DC-levels

To investigate how sensitive the DC-levels of the signals are to variations in


the signals, the DC-levels are calculated by sorting the signals and removing
a number of samples from the beginning and removing the same number of
samples from the end of the sorted signals. This is repeated for steps of 10% of
the signal length for all recordings. The results are shown in the figures below.
It is concluded that the DC-levels are not sensitive to e.g. outliers or other
variations.

72

DC-levels
4470

4460

DClevel, Infrared

4450

4440

4430

4420

4410

4400

10

20

30

40
50
% Samples removed

60

70

80

90

70

80

90

Figure A.1: Data set 1 IR.


2750

DClevel, Red

2700

2650

2600

10

20

30

40
50
% Samples removed

60

Figure A.2: Data set 1 red.

73
5000

4800

DClevel, Infrared

4600

4400

4200

4000

3800

3600

10

20

30

40
50
% Samples removed

60

70

80

90

70

80

90

Figure A.3: Data set 2 IR.


1950

DClevel, Red

1900

1850

1800

1750

1700

10

20

30

40
50
% Samples removed

60

Figure A.4: Data set 2 RED.

74

DC-levels

Appendix

B
Bandpass filtering

The amplitude and phase response of a FIR and IIR bandpass filters with lower
and upper cut-frequencies at 0.5Hz and 4Hz is shown figure B.1. In figures B.2
and B.3 the unit step-response for the FIR and IIR filters are shown. The unit
step-response can be used to determine the settling time of the filter, usually
defined as the time where the unit step-response reached 2% of its stationary
level.
signals from
To examine how bandpass filtering distorts the estimation of R,
data set 1, of length 25s (5000 samples) are normalised, and filtered by the
optimal IIR filter and the mean error for the obtained calibration curve is calculated for the filtered signals by removing a number of the first samples. This
investigation is repeated by reversing the signals in time to avoid errors due
to time dependent noise is the recordings. To see how the DC-levels variates
by removing a corresponding number of samples, this is shown in figures B.4
and B.5. The mean error versus number of removed samples are shown in the

following sections for each method of estimating R.

76

Bandpass filtering

Amplitude response

1.2
8th order IIR
1024th order FIR

1
0.8
0.6
0.4
0.2
0

5
6
Frequency [Hz]

10

Phase response

8th order IIR


1024th order FIR
1

5
6
Frequency [Hz]

10

Figure B.1: Amplitude and phase response of a FIR and IIR filter.

0.5

0.4

0.3

Unit stepresponse

0.2

0.1

0.1

0.2

0.3

0.4

0.5

200

400

600
Samples

800

1000

Figure B.2: Unit step response of a FIR filter.

1200

77

0.6

0.5

0.4

Unit stepresponse

0.3

0.2

0.1

0.1

0.2

0.3

0.4

200

400

600
Samples

800

1000

1200

Figure B.3: Unit step response of a IIR filter.

2740

DC level red

2720
2700
2680
2660
2640
2620
2600

500

1000

1500
Samples

2000

2500

3000

500

1000

1500
Samples

2000

2500

3000

4460

DC level infrared

4450
4440
4430
4420
4410
4400

Figure B.4: DC levels.

78

Bandpass filtering

DC level red

2750

2700

2650

2600

500

1000

1500
Samples

2000

2500

3000

500

1000

1500
Samples

2000

2500

3000

4480

DC level infrared

4460
4440
4420
4400
4380

Figure B.5: DC levels of signals reversed in time.

B.1 Averaging methods

Averaging methods
2.2
FIR
IIR
2

Abs Error in % SpO2

1.8

1.6

1.4

1.2

0.8

500

1000

1500
Samples

2000

2500

3000

Figure B.6: Error due to filter dist.


1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.3
R estimates

B.1

79

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

Figure B.7: R FIR.

3000

80

Bandpass filtering

1.6

1.5

1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.8: R IIR.

2.6
FIR
IIR
2.4

2.2

Abs Error in % SpO2

1.8

1.6

1.4

1.2

0.8

500

1000

1500
Samples

2000

2500

Figure B.9: Reversed Error due to filter dist.

3000

B.1 Averaging methods

81

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.10: Reversed R FIR.

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

Figure B.11: Reversed R IIR.

3000

82

Masismo DST
2.8
FIR
IIR
2.6

2.4

Abs Error in % SpO2

2.2

1.8

1.6

1.4

1.2

500

1000

1500
Samples

2000

2500

3000

Figure B.12: Error due to filter dist.

1.6

1.5
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.4

1.3
R estimates

B.2

Bandpass filtering

1.2

1.1

0.9

0.8

500

1000

1500
Samples

2000

2500

Figure B.13: R FIR.

3000

B.2 Masismo DST

83

1.6

1.5

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.4

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.14: R IIR.

3.2
FIR
IIR
3

2.8

Abs Error in % SpO2

2.6

2.4

2.2

1.8

1.6

1.4

500

1000

1500
Samples

2000

2500

Figure B.15: Reversed Error due to filter dist.

3000

84

Bandpass filtering

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.16: Reversed R FIR.

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

Figure B.17: Reversed R IIR.

3000

B.3 Mean Field ICA

Mean Field ICA


2.5
FIR
IIR

Abs Error in % SpO2

1.5

500

1000

1500
Samples

2000

2500

3000

Figure B.18: Error due to filter dist.


1.6

1.5

1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.3

R estimates

B.3

85

1.2

1.1

0.9

0.8

0.7

500

1000

1500
Samples

2000

2500

Figure B.19: R FIR.

3000

86

Bandpass filtering

1.6

1.5

1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.20: R IIR.

4
FIR
IIR
3.5

Abs Error in % SpO2

2.5

1.5

500

1000

1500
Samples

2000

2500

Figure B.21: Reversed Error due to filter dist.

3000

B.3 Mean Field ICA

87

1.6
1.5
1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.3

R estimates

1.2
1.1
1
0.9
0.8
0.7
0.6

500

1000

1500
Samples

2000

2500

3000

Figure B.22: Reversed R FIR.

1.6
1.5
1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.3

R estimates

1.2
1.1
1
0.9
0.8
0.7
0.6

500

1000

1500
Samples

2000

2500

Figure B.23: Reversed R IIR.

3000

88

Molgedey and Schouster ICA


3.5
FIR
IIR
3

Abs Error in % SpO2

2.5

1.5

0.5

500

1000

1500
Samples

2000

2500

3000

Figure B.24: Error due to filter dist.

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

1.3
R estimates

B.4

Bandpass filtering

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

Figure B.25: R FIR.

3000

B.4 Molgedey and Schouster ICA

89

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

3000

Figure B.26: R IIR.

3.5
FIR
IIR
3

Abs Error in % SpO2

2.5

1.5

0.5

500

1000

1500
Samples

2000

2500

Figure B.27: Reversed Error due to filter dist.

3000

90

Bandpass filtering

1.6

1.4
100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.2

0.8

0.6

500

1000

1500
Samples

2000

2500

3000

Figure B.28: Reversed R FIR.

1.6

1.5

1.4

100%
100%
100%
99%
99%
97%
87%
84%
82%
78%
77%
77%
75%
75%

R estimates

1.3

1.2

1.1

0.9

0.8

0.7
0

500

1000

1500
Samples

2000

2500

Figure B.29: Reversed R IIR.

3000

Appendix

Scatter Plots of Data Set 2

In this appendix, scatter plots of all measurements from data set 2 are shown.
First the raw normalised recordings are shown, followed by bandpass filtered
recordings. Notice that a linear dependence is seen after bandpass filtering.

92

Scatter Plots of Data Set 2

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
0.5

0.4

0.3

0.2

0.1

0.1

0.2

0.3

0.4

0.5

Figure C.1: Measurement 1 nomalised.

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
1

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

Figure C.2: Measurement 1 FIR bandpass filtered.

93

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
0.5

0.4

0.3

0.2

0.1

0.1

0.2

0.3

0.4

0.5

Figure C.3: Measurement 2 nomalised.

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

Figure C.4: Measurement 2 FIR bandpass filtered.

94

Scatter Plots of Data Set 2

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
0.3

0.2

0.1

0.1

0.2

0.3

0.4

Figure C.5: Measurement 3 nomalised.

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

Figure C.6: Measurement 3 FIR bandpass filtered.

95

0.5

0.5

1
0.5

0.4

0.3

0.2

0.1

0.1

0.2

0.3

0.4

0.5

Figure C.7: Measurement 4 nomalised.

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

1
1

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

Figure C.8: Measurement 4 FIR bandpass filtered.

96

Scatter Plots of Data Set 2

Appendix

D
Optimisation of in for
ICAMS

depends on the time delay in the ICAMS


To investigate how the estimate of R
algorithm, the log likelihood is calculated for all possible values of when using
versus
a window length of 20s. Plot of the log likelihood versus and R
is shown for all measurements in data set 1. The maximum log likelihood is
estimates are shown as
indicated with a red circle and the mean value of the R

a dashed green line. The log likelihood versus R is shown as well.


In the end, calibration curves obtained using the maximum likelihood estimates
are shown. It is concluded that calculating the log likeliand mean values of R
hood decreases the accuracy.

Optimisation of in for ICAMS

98
4

x 10

Log Likelihood

2.5

2.45

2.4

2.35

2.3

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.4
1.2

1
0.8
0.6
0.4

versus for measurement 1.


Figure D.1: Log likelihood and R
4

2.46

x 10

2.44

2.42

Log Likelihood

2.4

2.38

2.36

2.34

2.32

2.3
0.4

0.5

0.6

0.7

0.8

0.9

1.1

1.2

1.3

for measurement 1.
Figure D.2: Log likelihood versus R

99
4

x 10

Log Likelihood

2.8

2.6

2.4

2.2

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1
0.9
0.8
R

0.7
0.6
0.5
0.4

versus for measurement 2.


Figure D.3: Log likelihood and R
4

2.8

x 10

2.7

2.6

Log Likelihood

2.5

2.4

2.3

2.2

2.1

0.4

0.5

0.6

0.7

0.8

0.9

for measurement 2.
Figure D.4: Log likelihood versus R

Optimisation of in for ICAMS

100
4

Log Likelihood

2.7

x 10

2.65

2.6

2.55

2.5

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1
0.9

0.8
0.7
0.6
0.5

versus for measurement 3.


Figure D.5: Log likelihood and R
4

2.7

x 10

2.68

2.66

Log Likelihood

2.64

2.62

2.6

2.58

2.56

2.54

2.52
0.55

0.6

0.65

0.7

0.75
R

0.8

0.85

0.9

0.95

for measurement 3.
Figure D.6: Log likelihood versus R

101
4

x 10

1.92

Log Likelihood

1.9
1.88
1.86
1.84
1.82

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.2
1

0.8
0.6
0.4
0.2

versus for measurement 4.


Figure D.7: Log likelihood and R
4

1.91

x 10

1.9

1.89

Log Likelihood

1.88

1.87

1.86

1.85

1.84

1.83

1.82

0.4

0.5

0.6

0.7

0.8
R

0.9

1.1

1.2

1.3

for measurement 4.
Figure D.8: Log likelihood versus R

Optimisation of in for ICAMS

102
4

x 10

Log Likelihood

2.3

2.25

2.2

2.15

2.1

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.4
1.2

1
0.8
0.6
0.4

versus for measurement 5.


Figure D.9: Log likelihood and R
4

2.28

x 10

2.26

2.24

Log Likelihood

2.22

2.2

2.18

2.16

2.14

2.12
0.4

0.5

0.6

0.7

0.8

0.9

1.1

1.2

1.3

for measurement 5.
Figure D.10: Log likelihood versus R

103
4

x 10

Log Likelihood

2.34

2.32

2.3

2.28

2.26

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.4
1.2

1
0.8
0.6
0.4

versus for measurement 6.


Figure D.11: Log likelihood and R
4

2.34

x 10

2.33

2.32

Log Likelihood

2.31

2.3

2.29

2.28

2.27

2.26
0.4

0.5

0.6

0.7

0.8

0.9

1.1

1.2

1.3

for measurement 6.
Figure D.12: Log likelihood versus R

Optimisation of in for ICAMS

104
4

2.7

x 10

Log Likelihood

2.6
2.5
2.4
2.3
2.2

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

2
1.8

1.6
1.4
1.2
1
0.8

versus for measurement 7.


Figure D.13: Log likelihood and R
4

2.7

x 10

2.65

2.6

Log Likelihood

2.55

2.5

2.45

2.4

2.35

2.3

2.25

2.2
0.8

1.2

1.4
R

1.6

1.8

for measurement 7.
Figure D.14: Log likelihood versus R

105
4

x 10

Log Likelihood

2.8
2.6
2.4
2.2
2

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.8
1.6

1.4
1.2
1
0.8

versus for measurement 8.


Figure D.15: Log likelihood and R
4

x 10

2.9

2.8

Log Likelihood

2.7

2.6

2.5

2.4

2.3

2.2

2.1
0.8

0.9

1.1

1.2

1.3
R

1.4

1.5

1.6

1.7

1.8

for measurement 8.
Figure D.16: Log likelihood versus R

Optimisation of in for ICAMS

106
4

x 10

Log Likelihood

2.35

2.3

2.25

2.2

2.15

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.6
1.5

1.4
1.3
1.2
1.1

versus for measurement 9.


Figure D.17: Log likelihood and R
4

2.34

x 10

2.32

2.3

Log Likelihood

2.28

2.26

2.24

2.22

2.2

2.18

2.16
1.15

1.2

1.25

1.3

1.35

1.4

1.45

1.5

1.55

1.6

for measurement 9.
Figure D.18: Log likelihood versus R

107
4

x 10

2.18

Log Likelihood

2.16
2.14
2.12
2.1
2.08
2.06

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

2
1.8

1.6
1.4
1.2
1

versus for measurement 10.


Figure D.19: Log likelihood and R
4

2.17

x 10

2.16

2.15

Log Likelihood

2.14

2.13

2.12

2.11

2.1

2.09

2.08

2.07

1.1

1.2

1.3

1.4

1.5

1.6

1.7

1.8

1.9

for measurement 10.


Figure D.20: Log likelihood versus R

Optimisation of in for ICAMS

108
4

x 10

2.6

Log Likelihood

2.4
2.2
2
1.8
1.6

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

2
1.8

1.6
1.4
1.2
1

versus for measurement 11.


Figure D.21: Log likelihood and R
4

2.5

x 10

2.4

2.3

Log Likelihood

2.2

2.1

1.9

1.8

1.7

1.1

1.2

1.3

1.4

1.5
R

1.6

1.7

1.8

1.9

for measurement 11.


Figure D.22: Log likelihood versus R

109
4

x 10

1.9

Log Likelihood

1.85
1.8
1.75
1.7
1.65

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.8

1.6

1.4

1.2

versus for measurement 12.


Figure D.23: Log likelihood and R
4

1.9

x 10

Log Likelihood

1.85

1.8

1.75

1.7

1.65
1.1

1.2

1.3

1.4

1.5
R

1.6

1.7

1.8

1.9

for measurement 12.


Figure D.24: Log likelihood versus R

Optimisation of in for ICAMS

110
4

Log Likelihood

2.3

x 10

2.25

2.2

2.15

2.1

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.9
1.8

1.7
1.6
1.5
1.4

versus for measurement 13.


Figure D.25: Log likelihood and R
4

2.28

x 10

2.26

2.24

Log Likelihood

2.22

2.2

2.18

2.16

2.14

2.12
1.4

1.45

1.5

1.55

1.6

1.65

1.7

1.75

1.8

1.85

for measurement 13.


Figure D.26: Log likelihood versus R

111
4

Log Likelihood

2.3

x 10

2.25

2.2

2.15

2.1

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

1.9
1.8

1.7
1.6
1.5
1.4

versus for measurement 13.


Figure D.27: Log likelihood and R
4

2.28

x 10

2.26

2.24

Log Likelihood

2.22

2.2

2.18

2.16

2.14

2.12
1.4

1.45

1.5

1.55

1.6

1.65

1.7

1.75

1.8

1.85

for measurement 13.


Figure D.28: Log likelihood versus R

Optimisation of in for ICAMS

112
4

x 10

1.9

Log Likelihood

1.85
1.8
1.75
1.7
1.65
1.6

500

1000

1500

2000
[samples]

2500

3000

3500

4000

500

1000

1500

2000
[samples]

2500

3000

3500

4000

2.2
2

1.8
1.6
1.4

versus for measurement 14.


Figure D.29: Log likelihood and R
4

1.9

x 10

1.85

Log Likelihood

1.8

1.75

1.7

1.65

1.6

1.3

1.4

1.5

1.6

1.7

1.8

1.9

2.1

for measurement 14.


Figure D.30: Log likelihood versus R

113

Theo. Curve
Fitted Cal. Curve
R estimates

100

95

SpO2 [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

Figure D.31: Calibration curve obtained using maximum likelihood estimates.


Theo. Curve
Fitted Cal. Curve
R estimates

100

95

SpO2 [%]

90

85

80

75

0.2

0.4

0.6

0.8

1.2

1.4

1.6

for all values


Figure D.32: Calibration curve obtained using the mean value R
of .

114

Optimisation of in for ICAMS

Bibliography

[1] A. Bell and T.J. Sejnowski. An information-maximization approach to


blind separation and blind deconvolution. Neural Computation, 7:1129
1159, 1995.
[2] G. Comtois, Y. Mendelson, and P. Ramuka. A comparative evaluation of
adaptive noise cancellation algorithms for minimizing motion artifacts in a
forehead-mounted wearable pulse oximeter. 2007 29th Annual International
Conference of the IEEE Engineering in Medicine and Biology Society, pages
15281531, 2007.
[3] Sune Duun, Rasmus G. Haahr, Karen Birkelund, Palle Raahauge, Peter
Petersen, Henrik Dam, Lars Noergaard, and Erik V. Thomsen. A novel ring
shaped photodiode for reflectance pulse oximetry in wireless applications.
IEEE Sensors 2007 Conference, pages 596599, 2007.
[4] Jong Yong A. Foo. Comparison of wavelet transformation and adaptive filtering in restoring artefact-induced time-related measurement. Biomedical
Signal Processing and Control, 1:9398, 2006.
[5] Julian M. Goldman, Michael T. Petterson, Robert J. Kopotic, and Steven J.
Barker. Masimo signal extraction pulse oximetry. Journal of Clinical Monitoring and Computing, 16:475483, 2000.
[6] M.T. Graybeal, J.M.; Petterson. Adaptive filtering and alternative calculations revolutionizes pulse oximetry sensitivity and specificity during motion
and low perfusion. The 26th Annual International Conference of the IEEE
Engineering in Medicine and Biology Society, 2:53635366, 2004.

116

BIBLIOGRAPHY

[7] L. K. Hansen, J. Larsen, and T. Kolenda. On Independent Component


Analysis for Multimedia Signals. CRC Press, 2000.
[8] L. K. Hansen, J. Larsen, and T. Kolenda. Blind detection of independent
dynamic components. In proc. IEEE ICASSP2001, 5:31973200, 2001.
[9] Lars Kai Hansen, Finn
Arup Nielsen, and Jan Larsen. Exploring fmri data
for periodic signal components. Artificial Intelligence in Medicine, 25:35
44, 2002.
[10] A Hyvarinen. Fast and robust fixed-point algorithms for independent component analysis. IEEE Transactions on Neural Networks, 10:626634, 1999.
[11] P. Hjen-Srensen, O. Winther, and L.K. Hansen. Mean field approaches to
independent component analysis. Neural Computation, 14:889918, 2002.
[12] B.S. Kim and S.K. Yoo. Motion artifact reduction in photoplethysmography
using independent component analysis. IEEE Transactions on Biomedical
Engineering, 53:566568, 2006.
[13] T. Kolenda, L.K. Hansen, and J. Larsen. Signal detection using ica: Application to chat room topic spotting. In proc. ICA2001, pages 540545,
2001.
[14] M. Opper L. Csato and O. Winther. Tap gibbs free energy, belief propagation and sparsity. Advances in Neural Information Processing Systems, 14,
2002.
[15] David J. C. MacKay. Information Theory, Inference, and Learning Algorithms, chapter 34. Cambridge University Press, 2007.
[16] Masimo. Signal extraction technology. Technical report, Masimo Corporation, 2006.
[17] L. Molgedey and H. Schuster. Separation of independent signals using timedelayed correlations. Physical Review Letters, 72(23):36343637, 1994.
[18] H.B. Nielsen. Ucminf - an algorithm for unconstrained, nonlinear optimization. Technical Report IMM-TEC-0019, IMM, Technical University of
Denmark, 2001.
[19] Rasmus Kongsgaard Olsson and Lars Kai Hansen. Linear state-space models for blind source separation. Journal of Machine Learning Research,
7:25852602, 2006.
[20] M. Opper and O. Winther. Adaptive and self-averaging thouless-andersonpalmer mean field theory for probabilistic modeling. Phys. Rev. Lett,
64(056131), 2001.

BIBLIOGRAPHY

117

[21] M. Opper and O. Winther. Tractable approximations for probabilistic models: The adaptive thouless-anderson-palmer mean field approach. Phys.
Rev. Lett, 86:36953699, 2001.
[22] K.A. Reddy and V.J. Kumar. Motion artifact reduction in photoplethysmographic signals using singular value decomposition. 2007 IEEE Instrumentation & Measurement Technology Conference IMTC 2007, pages 14,
2007.
[23] T.L. Rusch, R. Sankar, and J.E Scharf. Signal processing methods for pulse
oximetry. Computers in Biology and Medicine, 26:143159, 1996.
[24] John G. Webster, editor. Design of Pulse Oximeters, chapter 4. Institute
of Physics Publishing, 1997.
[25] Ole Winther and Kaare Brandt Petersen. Flexible and efficient implementations of bayesian independent component analysis. Neurocomputing,
71:221233, 2007.
[26] Jianchu Yao and S. Warren. A short study to assess the potential of independent component analysis for motion artifact separation in wearable
pulse oximeter signals. 2005 IEEE Engineering in Medicine and Biology
27th Annual Conference, pages 35853588, 2005.

Anda mungkin juga menyukai