Spetlik, R., Franc, V., Cech, J. and Matas, J. (2018) Visual Heart Rate Estimation with Convolutional Neural Network. In Proceedings of British Machine Vision Conference, 2018
See http://cmp.felk.cvut.cz/~spetlrad/ecg-fitness/ for the original paper and the ECG-Fitness dataset.
This repo is being constructed. You can monitor the progress bellow.
- Document the installation.
- Convert models to a reasonable format.
- Create public evaluation scripts.
- Create public learning scripts.
We support only the following plug-and-play installation. You don't have to follow the steps bellow, but it may happen that it will not work :( This setup should work regardless of the operation system (i.e. Windows and Linux is OK).
- Install miniconda http://lmgtfy.com/?q=miniconda+install.
- Update miniconda with
conda update -n base conda
. - Create a Python 2.7 environment hr-cnn with
conda create -n hr-cnn python=2.7
. - Activate the environment with
source activate hr-cnn
. - Install packages.
- Install Pytorch http://lmgtfy.com/?q=install+pytorch.
- Run 'python -u install.py' OR perform the following procedure:
- Install docopt with
conda install docopt
. - Install scipy with
conda install scipy
- Install h5py with
conda install h5py
- Install opencv with
conda install opencv
- Install boost 1.65.1 with
conda install boost=1.65.1
- Install bob.blitz with
conda install bob.blitz
- Install docopt with
- Clone the repo to a directory of your preference with
git clone [email protected]:radimspetlik/hr-cnn.git
. - Add the data.
- Download the models from http://cmp.felk.cvut.cz/~spetlrad/ecg-fitness/models.zip and extract them to
data/models/
. - Copy the contents of the
bbox
directory (distributed in the 7zipped ECG Fitness database) tobob/db/ecg_fitness/data/bbox/
. - Copy the contents of the
test_h5_faces.7zip
todata\experiments\cnn\ecg-fitness-face-192x128\15\01\
.
- Download the models from http://cmp.felk.cvut.cz/~spetlrad/ecg-fitness/models.zip and extract them to
- Run the test script with
python hr-cnn/test.py
. The network will evaluate a short sequence attached in the repo. You should get the following results:
[INFO] Root Mean Squared Error = ?
[INFO] Mean of error-rate percentage = ?
[INFO] Mean absolute error = ?
[INFO] Pearson's correlation = ?
[INFO] Pearson's correlation significance = ?