Advancing engineering approaches for extracting clinically significant information from physiologic signals


The BSP Lab consists of faculty, students, and collaborators working together at the intersection of signal processing and health. Our objectives:

  • Developing advanced signal processing and estimation methods for analyzing and understanding biomedical signals.
  • Advancing our knowledge of pathophysiology through the investigation of behavior that manifests in physiologic signals.
  • Providing opportunities for student participation in rigorous research methodology and the dissemination of knowledge.
  • Contributing to regional and national biomedical research.

We primarily focus on clinically relevant projects in which the extracted information can help physicians or medical devices make better critical decisions and improve patient outcome. The BSP lab is part of the department of Electrical and Computer Engineering.  We collaborate closely with Oregon Health & Science University (OHSU), located less than 2 miles from Portland State University.

Research, Publications, and Downloads

The BSP lab has many research projects underway. Short summaries for some of these projects are given here. Please see publications for a more complete account of the work that we have done and especially our prior work. Code and data sets used in our research projects can be found at downloads.


Students interested in signal processing and data analysis are encouraged to take the ECE MS Signal Processing and Machine Learning Track.



In addition to research and teaching, the BSP Lab is actively engaged with local industry. Our faculty have a successful track record of spinning out successful startup companies.

APDM company logo

APDM provides technologies and services for automation, data management, and instrumentation in clinical trials, and especially movement disorders such as Parkinson's disease. These technologies include innovative measures of mobility that use wireless, wearable, synchronized movement monitors equipped with triaxial accelerometers, gyroscopes, and magnetometers.

motiosens company logo

MotioSens provides cost-effective, high-quality devices for precise indoor/outdoor location and activity monitoring.  We provide systems and services to support clinical research (e.g., fall detection in Multiple Sclerosis).  Consumer products target the rapidly growing elderly population with a unique solution to indoor tracking and mobility assessment that operates passively without the need for a wearable device.

Lab Facilities

Computers - Scopes - Meters - Robots - Gyros - Accelerometers - Transceivers

The BSP lab is located in a 450 square foot space in FAB 89-02 and consists of multiple PC workstations, laptops, data acquisition systems, and a fully equipped lab bench with standard test equipment including power supplies, oscilloscope, spectrum analyzer, function generator, soldering stations, digital multimeters, and a large variety of sensor components. Student desks, a small meeting space, and sofa, provide for a multi-purpose laboratory where students affiliated with the lab may work on projects during their studies at PSU.


Street Address
Portland State University
Electrical and Computer Engineering
FAB 89-02
1900 SW Fourth Avenue
Portland, Oregon 97201
Contact Information
Eric Wan, Ph.D.
Phone: (503) 725-9041
The laboratory is located on the bottom floor of the Fourth Avenue Building (FAB) in Suite 89. The FAB is connected to the tower of the City of Portland's 1900 building. Suite 89 is located behind the main elevators for the 1900 building.

BSPL Research

Current and Past Research

The BSP lab has many research projects underway. Short summaries of some of these projects are given below. 


diagram of the inside of living quarters

  • Sensor Technology for Elder Care
    We are developing algorithms and systems to support seniors living independently in their home through unobtrusive monitoring of location, mobility, and activities of daily living. We have developed unique approaches for indoor tracking that operates without requiring the person to wear a device or tag. Supported by grants from NIH and the Alzheimer’s Association.
  • Integrated Navigation Systems (INS) for Pedestrian Tracking and Body Joint Angle Estimation
    INS systems involve the use of state-space estimation methods to combine various inertial sensors (i.e., MEMs gyroscopes and accelerometers) with external observations (e.g., GPS or indoor beacon technology) in order to estimate both the position and pose of the object being tracked. Prior work focused on Unmanned Aerial Vehicles. These methods are now being applied to the growing field of wearables for tracking people indoors or for dynamically estimating body joint angles.

A picture containing clock

Description automatically generated

  • Ambulatory Monitoring of Parkinson's Disease
    Parkinson's disease afflicts well over 500,000 Americans and over 4 million world wide. We are investigating new methods for ambulatory monitoring of Parkinson's disease and other movement disorders.
  • Cardiovascular Dynamics of Intracranial Pressure for Traumatic Brain Injury
    We have several projects that relate to advancing our knowledge of cardiovascular dynamics as it relates to intracranial pressure in children with traumatic brain injury.
  • Microelectrode Analysis
    We are analyzing microelectrode recordings (MER) acquired from patients with Parkinson's disease (PD) and essential tremor (ET) during stereotactic surgery to help localize critical structures and improve this type of therapy.

A picture containing table, sitting, photo, front

Description automatically generated

  • New Methods for Nonlinear Kalman Filtering and Recursive Bayesian Estimation
    Our core research on recursive Bayesian estimation and state-space methods cuts across multiple research projects and has found wide use in many related fields. Algorithms that have been developed include the Unscented/Sigma-Point Kalman Filter (UKF/SPKF), SPKF smoothers, and particle filter hybrids.  See also ReBEL download for available software.
  • Frequency Tracking
    We have many applications that contain quasi-periodic non-sinusoidal signals with time-varying amplitudes. We are investigating new approaches to these problems based on the latest methods for state space estimation.
  • Noninvasive Blood Glucose Monitoring using Otoacoustic Emissions
    The objective of this research was to determine whether otoacoustic emissions (OAE) can be used to measure blood glucose noninvasively in diabetic subjects. An OAE is a low-intensity sound generated by the cochlea in response to acoustic stimuli.
  • Automatic Classification of Flying Insects
    This project involved research and development of remote optical instrumentation capable of automatically counting and classifying insects in flight. Neither acoustic or image based, the instrument uses a solar cell as an unconventional sensor to record rapid fluctuations in light intensity caused by the shadow or reflection of a flying insect. Applications include monitoring for integrated pest management, for public health (e.g. tracking outbreaks of the West Niles virus or Malaria), and for assessing biodiversity.
  • Heart Function Characterization Combining Acoustic and Electrocardiogram Signals
    Working with Inovise Medical Inc., this project applied adaptive signal processing and machine learning techniques to the problem of heart function characterization using combined acoustic and ECG signals.


BSPL Downloads


BSP Lab software and data sets available for download

The BSP Laboratory has developed many algorithms for signal processing for the analysis of biomedical signals.   A selection of MATLAB implementations can be downloaded here. General purpose Bayesian estimation algorithms are also provided as well as examples of data recorded during our research projects and used in our publications.

Biomedical Detection Benchmarks

Intracranial Pressure, Blood Pressure, and Pulse Oximetry (infrared) Beat Detection Benchmarks. Each file has two signal segments from two different patients (e.g. icp1, icp2), the detected indices of the systolic peaks as detected by the algorithm (i.e., d1, d2) and the systolic peaks as visually detected by three experts (dDT1 dDT2 dJM1 dJM2 dTT1 dTT2). The sample rate of all the signals was 125 Hz. The heart rate in these signals may be higher than expected because these signals were acquired from children in a pediatric intensive care unit. Additional details are in the journal article describing the detection algorithm.

Traumatic Brain Injury Data

The following data was all recorded during a 6 hour period simultaneously from a single pediatric patient with a traumatic brain injury.

  • Electrocardiogram: zipped text file, sampled at 500 Hz, units unknown.
  • Arterial Blood Pressure: zipped text file, sampled at 125 Hz in units of mmHg.
  • Central Venous Pressure: zipped text file, sampled at 125 Hz in units of mmHg. Contains two drop outs.
  • Intracranial Pressure: zipped text file, sampled at 125 Hz in units of mmHg.
  • Respiration: zipped text file, sampled at 125 Hz, units are scaled to range from 0 to 1023.
  • Pulse Oxymetry: zipped text file, one of the two signals from a pulse oximeter sampled at 125 Hz, units are scaled to range from 0 to 1023.

Noisy Electrocardiogram

Electrocardiogram:  signal recorded at 500 Hz sampling rate from a pediatric head injury patient. This segment contains a lot of noise and a drop-out typical of data recorded in an intensive care unit setting.

Signal-Point Kalman Filters and the ReBEL Toolkit

Recursive Bayesian Estimation Library logo

ReBEL (Recursive Bayesian Estimation Library) is a Matlab® toolkit of functions and scripts, designed to facilitate sequential Bayesian inference (estimation) in general state-space models. This software consolidates research on new methods for recursive Bayesian estimation and Kalman filtering by Eric A. Wan and Rudolph van der Merwe, OGI School of Science & Engineering, OHSU (Oregon Health & Science University), and PSU.

ReBEL currently contains most of the following functional units that can be used for state-, parameter- and joint-estimation:

  • Kalman filter
  • Extended Kalman filter
  • Sigma-Point Kalman filters (SPKF) 
    • Unscented Kalman filter (UKF)
    • Central difference Kalman filter (CDKF)
    • Square-root SPKFs
    • Gaussian mixture SPKFs
    • Iterated SPKF
    • SPKF smoothers
  • Particle filters 
    • Generic SIR particle filter
    • Gaussian sum particle filter
    • Sigma-point particle filter
    • Gaussian mixture sigma-point particle filter
  • Rao-Blackwellized particle filters

The code is designed to be as general, modular and extensible as possible, while at the same time trying to be as computationally efficient as possible. It has been tested with Matlab 7.2 (R2006a).

Related Publications:

  • Wan, E. A., & Van Der Merwe, R. (2001). The unscented Kalman filter. Kalman filtering and neural networks, 221-280. 
  • Wan, E. A., & Van Der Merwe, R. (2000). The unscented Kalman filter for nonlinear estimation. In Adaptive Systems for Signal Processing, Communications, and Control Symposium 2000. AS-SPCC. The IEEE 2000 (pp. 153-158). IEEE. 
  • Van Der Merwe, R., Doucet, A., De Freitas, N., & Wan, E. (2000, August). The unscented particle filter. In NIPS (pp. 584-590). 
  • Van Der Merwe, R. (2004). Sigma-point Kalman filters for probabilistic inference in dynamic state-space models (Doctoral dissertation, Oregon Health & Science University). 
  • Paul, A. S. (2010). Sigma-point Kalman smoothing: algorithms and analysis with applications to indoor tracking. 

Acknowledgements: This software consolidates research on new methods for recursive Bayesian estimation and Kalman filtering and is supported in part by the NSF under contract ECS-0083106, DARPA under contract F33615-98-C-3516 and ONR under contract N0014-02-C-0248.


Chaotic Time Series

A close up of a logo

Description automatically generated

Chaotic time series often used for benchmarking prediction methods.  Both data and MATLAB code to generate the signals are provided.

  • Mackey-Glass Time series (delay 17 and 30)
  • Henon Time Series
  • Ikeda Time Series
  • Lorenz Attractor
  • Laser Series from SFI Competition (1000 point competition and 10000 point extension)
  • Sunspot Series (yearly from 1700-1994, monthly from 1947-1991)


FIR Neural Networks

A close up of a device

Description automatically generated

Finite Impulse Response (FIR) neural network models each synapse as a linear filter to provide dynamic interconnectivity. Temporal backpropagation is used to train the network in which error terms are symmetrically filtered backward through the network


  • Wan, E. A. (1993). Time series prediction by using a connectionist network with internal delay lines. In SANTA FE INSTITUTE STUDIES IN THE SCIENCES OF COMPLEXITY-PROCEEDINGS VOLUME- (Vol. 15, pp. 195-195). ADDISON-WESLEY PUBLISHING CO.
  • Wan, E. A. (1993). Finite impulse response neural networks with applications in time series prediction (Doctoral dissertation, Stanford University).
  • Back, A., Wan, E. A., Lawrence, S., & Tsoi, A. C. (1994, September). A unifying view of some training algorithms for multilayer perceptrons with FIR filter synapses. In Neural Networks for Signal Processing [1994] IV. Proceedings of the 1994 IEEE Workshop (pp. 146-154). IEEE. 

Inverted Double Pendulum

The inverted double pendulum is a classic benchmark problem used in control, estimation, and machine learning. The simulator package implements the full non-linear dynamics along with real-time animation. Also implemented for demonstration purposes is a nonlinear state-dependent Riccati equation (SDRE) controller and Sigma-Point Kalman Filter (SPKF). The SPKF estimates both the states and parameters of the model.  The demo shows the ability to stabilize the pendulum in a single trial.