750 likes | 888 Views
University Lecturer & Associate Director, Centre for Doctoral Training in Healthcare Innovation, Institute of Biomedical Engineering, University of Oxford. Biomedical Signal Processing DTC Lecture April 5 2011 Dr. Gari Clifford gari@robots.ox.ac.uk http://www.robots.ox.ac.uk/~gari.
E N D
University Lecturer & Associate Director, Centre for Doctoral Training in Healthcare Innovation, Institute of Biomedical Engineering, University of Oxford Biomedical Signal Processing DTC Lecture April 5 2011 Dr. Gari Clifford gari@robots.ox.ac.uk http://www.robots.ox.ac.uk/~gari
Overview Types of biomedical signals Biopotentials – ‘passive monitoring’ Probing the body with energy Noise and Pre-processing Signal quality and trust metrics Event detection & feature extraction Classification Data fusion
The electrocardiogram & the heart • Blood circulates, passing near every cell in the body, • driven by this pump (actually, two pumps) - • Atria = turbochargers • Myocardium: myocytes (muscle cells) • Mechanical systole • Electrical systole
Action potential of myocyte K+ K+ 2 K+ 3 Na+ ATPase • Each mechanical heartbeat is triggered by an action potential • The cell membrane controls permeability to ions • Cell becomes polarized and at some critical level, depolarizes • = muscle contraction transmembrane potential, Vm,
The dipole field due to current flow in a myocardial cell at the advancing front of depolarization. Vm is the transmembrane potential.
How a wave of electrical current propagates through myocardium Typically, an impulse originating anywhere in the myocardium will propagate throughout the heart Cells communicate electrically via “gap junctions” • Behaves as a “syncytium” • Think of the “Mexican wave” • at football!
Important specific structures Sino-atrial node = pacemaker (usually) Atria After electrical excitation: contraction Atrioventricular node (a tactical pause) Ventricular conducting fibers (freeways) Ventricular myocardium (surface roads) After electrical excitation: contraction
Recording the surface ECG (Defib Protect) Isolate Filter Amplify Anti-alias Digitize
How to record ECG? Ag-Ag-Cl sensors Shave off hair Abrade skin (to remove dead skin and improve conductivity) Clean with alcohol Wait for alcohol to evaporate Place electrode patches on clinical locations
Clinical lead placement • Different lead positions give different ‘views’ • Abnormalities may not show up on some leads
Normal features of the electrocardiogram. • P-wave – atrial depolarization / contraction • PR segment: isoelectric • QRS complex: ventricular depol. • ST-segment • T-wave: repol. • QT interval
Electromyogram (EMG) Similar to ECG Recording of electrical activity produced by skeletal muscles EMG potentials range 50 μV - 30 mV, depending on muscle Typical frequency of muscle motor unit firing: 7 Hz (eye) – 20 Hz (gluteal) EOG = electro-oculogram Abnormality: A decrease in duration of the action potential A reduction in the area/amplitude ratio of the action potential A decrease in the number of motor units in the muscle (severe)
Uterine EMG Contraction on EMG Intra-uterine pressure Power spectral density
The electrical activity of the brain (the electroencephalogram or EEG) can be monitored with a pair of scalp electrodes. Its frequency content decreases with alertness. Electroencephalogram (EEG) Awake Light sleep Deep sleep
Auscultation (audio) Heart Sounds S1 & S2 (lub-dub) S3 & S4 Lung Sounds Wheezes Crackles
On a phone …. Auscultation iPhone HTC G1
Audio feature extraction Sleep (snoring versus apnea) Voice stress for pain • Apnea detection in neonates • Lung infections – TB or asthma? • Time / frequency representations of • Tracheal Lung Sounds, • fine crackles, • coarse crackles, and • squawks, • with corresponding spectrograms. [Hadjileontiadis 2008]
Active Monitoring Injecting energy Impedance pneumography Pulse oximetry Blood pressure oscillometry
Electrical impedance pneumography(measurement of respiration rate) 2x2-electrode method to measure electrical impedance (Z) at ~20 kHz Often use ECG electrodes Most of the changes in Z across the chest are due to breathing (although some are also caused by blood flow in and out of the heart)
Oximetry is a technique for measuring how much oxygen the blood is carrying, the oxygen saturation of the blood The haemoglobin molecule (which is bound to the red blood cells) carries the oxygen in the blood The two forms of the molecule (Hb and HbO2) have different optical spectra Oximetry (measurement of oxygen saturation)
Pulse oximetry(measurement of oxygen saturation) • Discovered in Japan in the mid-1970's (Aoyagi, 1974) • Only that part of the signal directly related to the inflow of arterial blood into the body segment is used for the calculation of SaO2. • It is assumed that the increase in attenuation of light is caused by the inflow of arterial blood only.
Pulse oximetry(measurement of oxygen saturation) Light absorption across the finger (or the earlobe) is measured using a single probe with two LEDs and a photodiode emitting and absorbing in the IR and near-IR
Oximetry (measurement of oxygen saturation) • The wavelength range between 600 and 1,000 nm is also the range for which there is the least attenuation of light by body tissues. • By measuring the light transmission through a body segment at two wavelengths within that range, the arterial SaO2 can be determined. Oximetry is a non-invasive optical technique
Primary signal - pulse oximetry Pulse oximetry assumes that the attenuation of light by the finger can be split into 3 independent components: arterial blood, venous blood and tissues The amplitudes of the pulsatile component of light attenuation at the two wavelengths are used to derive arterial oxygen saturation
Measurement of blood pressure • Blood Pressure is generally described by two measurements (in mmHg*): • Systolic Pressure • Diastolic Pressure • Generally quoted as "Systolic over Diastolic". • e.g. 120/70 is a systolic pressure of 120 mmHg and a diastolic pressure of 70 mmHg. • In ICU 66% of patients have an invasive catheter for BP (* 1 mmhg ≈ 1 Torr= 7.5×10−3 Pa)
Measurement of blood pressure • Systolic pressure is the arterial pressure when the heart is beating (i.e. during systole). • It is, broadly speaking, the highest pressure present in the arterial (and vascular) system and is a reflection of how hard the heart is pumping. • Diastolic pressure is the arterial pressure when the heart is not beating (i.e. during diastole). • It is, broadly speaking, the lowest pressure present in the arterial system and is a reflection of the resistance against which the heart is pumping.
Measurement of blood pressure • There are two other measures of blood pressure: • Pulse Pressure, the difference between systolic and diastolic pressures. • Mean Arterial Pressure, the mean over the cardiac cycle. It is usually calculated using the following formula: MAP = 2/3 Diastolic Pressure + 1/3 Systolic Pressure
Non-invasive measurement of BP Non-invasive blood pressure measurement requires an inflatable cuff and a pressure transducer
Oscillometric measurement of BP Pulsatile oscillations in cuff pressure are extracted by high-pass filtering of the pressure transducer signal Max oscillations occur when the cuff pressure is equal to the mean arterial pressure Systolic and diastolic pressures are identified as occurring at fixed percentages of maximum oscillations (0.55 and 0.85, respectively)
Putting it all together Sleep apnea
But it’s not that easy … Dealing with noise …
Noise in biomedical signals Power line interference:50 ±0.2 Hz mains noise (or 60 Hz in many data sets) with an amplitude of up to 50% of full scale deflection (FSD), the peak-to-peak ECG amplitude Sensor pop or contact noise:Loss of contact between the sensor and the skin manifesting as sharp changes with saturation at FSD for periods of around 1 s on the ECG (usually due to an electrode being nearly or completely pulled off); Patient–sensor motion artifacts:Movement of the electrode away from the contact area on the skin, leading to variations in the impedance between the electrode and skin causing potential variations in the ECG and usually manifesting themselves as rapid (but continuous) baseline jumps or complete saturation for up to 0.5 second; Electromyographic (EMG) noise:Electrical activity due to muscle contractions lasting around 50 ms between dc and 10,000 Hz with an average amplitude of 10% FSD level; Baseline drift: E.g. respiratory motion with an amplitude of ~15% FSD at frequencies drifting between 0.15-0.3 Hz; Hardware electronics noise: Artifacts generated by the signal processing hardware, such as signal saturation; Electrosurgical noise: Noise generated by other medical equipment present in the patient care environment a frequencies between 100 kHz and 1 MHz, lasting for approximately 1 and 10 seconds; - may include defibrillation artifact too. Quantization noise: Steps introduced into data Clock drift & missing data: Sampling frequency is not constant – always use a real-time OS Aliasing: Spurious frequencies because sampling frequency is too low or data were resampled Signal processing artifacts: (e.g., Gibbs oscillations, IIR filters, ). Other Biological sources & sinks :(e.g., non-conductive tissues, fetal/maternal mixture, observer pulse).
Pre-processing & filtering How do we deal with noise IIR – standard difference filtering, nonlinear phase response FIR – standard difference filtering, linear phase response Adaptive (e.g. Kalman) filter Weiner/Fourier – projection of data onto frequency subspace Wavelet – filter banks (time/freq filtering or projection of data onto time-frequency subspace) PCA – Rotation and projection of data onto lower dimensional orthogonal space ICA – Rotation and projection of data onto same or lower dimensional non-orthogonal space Machine learning techniques (ANN etc – see Roweis‘99)
Principal Component Analysis (PCA) Standard signal/noise separation method Compress data into lower dimensions to reduce workload or to visualize data relationships Rotate data to improve the separation between classes Also known as Karhunen-Loève (KL) transform or the Hotelling transform or Singular Value Decomposition (SVD) – although SVD is actually a mathematical method of PCA
Principal Component Analysis (PCA) A form of Blind source Separation – an observation, X ,can be broken down into a mixing matrix , A , and a set of basis functions , Z : X=AZ Second orderdecorrelation = independence Find a set of orthogonal axes in the data (independence metric = variance) Project data onto these axes to decorrelate Independence is forced onto the data through the orthogonality of axes
Two dimensional example • Where are the principal components? • Hint: axes of maximum variation, and orthogonal
Two dimensional example • Gives best axis to project minimum RMS error • Data becomes ‘sphered’ or whitened / decorrelated
Singular Value Decomposition (SVD) Decompose observation X=AZ into…. X=USVT S is a diagonal matrix of singular values with elements arranged in descending order of magnitude (the singular spectrum) The columns of V are the eigenvectors of C=XTX(the orthogonal subspace … dot(vi,vj)=0 ) … they ‘demix’ or rotate the data Uis the matrix of projections of X onto the eigenvectors of C … the ‘source’ estimates
Eigenspectrum of decomposition • S = singular matrix … zeros except on the leading diagonal • Sij (i=j) are the eigenvalues½ • Placed in order of descending magnitude • Correspond to the magnitude of projected data along each eigenvector • Eigenvectors are the axes of maximal variation in the data Eigenspectrum= Plot of eigenvalues [stem(diag(S).^2)] • Variance = power • (analogous to Fourier components in power spectra)
SVD for noise/signal separation To perform SVD filtering of a signal, use a truncated SVD decomposition (using the first p eigenvectors) Y=USpVT [Reduce the dimensionality of the data by discarding noise projections Snoise=0 Then reconstruct the data with just the signal subsapce] Most of the signal is contained in the first few principal components. Discarding these and projecting back into the original observation space effects a noise-filtering or a noise/signal separation
Real data Real ECG data example Add noise
Real ECG data example S2 X n • Xp =USpVT Xp … p=2 Xp … p=4
Feature extraction & event detection Two paradigms: Use subset of parameters of (lossy) filter E.g. Fourier or wavelet coefficients Detect events and segment data E.g. Threshold on amplitude and keep N samples after threshold.
Event detection How is event detection different from: Supervised Learning: Abnormal events are extremely rare, normal events are plentiful Clustering: Clustering = partitioning data into groups Not the same as finding statistically anomalous groups Outlier Detection: Events of interest are usually not individual outliers The event typically affects a subgroup of the data rather than a single data point
Amplitude thresholding Simple! If HR > 140 BPM … tachycardia Adaptive If HR > 140 BPM more than 4 times in minute, increase threshold by 10% Dumb – sensitive to outliers and noise
Slope thresholding Simple! If ΔHR/Δt > 50/10 BPM/s … alarm Less dumb – even more sensitive to outliers and noise – see example on differentiation in a bit
Control Chart Upper Control Limit • Control chart (from Statistical Quality Control) • Estimate and from data up to current time • Upper control limit = • Raise alarm if upper control limit exceeded