I just Finish 2015 IEEE Signal Processing Cup, and here is an Heart Rate Tracking algorithm using Wrist-Typed PPG Signal.
Notice
This is Not the exact algorithm we used in the paper: http://web.cse.ohio-state.edu/~tke/doc/MICROST.pdf, which gave better result than this one, but the idea and procedure are the same.
- Download the code
- Add Path in Matlab
- change variable in init.m (where to save pictures)
Then
runall_train %% run algorithm on all training data
runall_test %% run algorithm on all testing data
You will see the result.
- 7-order haar wavelet transform for signal preprocess
- Four Heuristic Unit for tracking Frequency Peak
-
Memory Rule: for heart rate could not change too sharply
-
Magnitude Rule: select the larger peak
-
Wavelet Rule(only used in the first frame): When the heart rate peak submerges in motion peaks, the wavelet preprocess may make it emerges.
-
Acceleration Rule: When the subject speeds up, the heart rate tends to grow
-
And each rule corresponds to a M-file.
- A Post in My Blog: Link (in Chinese)
- More Intro: TODO
The Data used here comes from HERE with copyrights. So if you want to use them, follow the instructions there.
The MIT License
Copyright (c) 2014-2015
Xinyu Zhang [email protected]
Ke Tan [email protected]
Shilin Zhu [email protected]
Zhiqiang Liu [email protected]
Bin Liu [email protected]