Source code for pyVHR.datasets.cohface

import h5py
import numpy as np
from pyVHR.datasets.dataset import Dataset
from pyVHR.BPM.BPM import BVPsignal


[docs]class COHFACE(Dataset): """ Cohface Dataset .. Cohface dataset structure: .. ----------------- .. datasetDIR/ .. | .. |-- subjDIR_1/ .. | |-- vidDIR1/ .. | |-- videoFile1.avi .. | |-- ... .. | |-- videoFileN.avi .. |... .. | |-- vidDIRM/ .. | |-- videoFile1.avi .. | |-- ... .. | |-- videoFileM.avi .. |... .. |-- subjDIR_n/ .. |... """ name = 'COHFACE' signalGT = 'BVP' # GT signal type numLevels = 2 # depth of the filesystem collecting video and BVP files numSubjects = 40 # number of subjects video_EXT = 'avi' # extension of the video files frameRate = 20 # vieo frame rate VIDEO_SUBSTRING = 'data' # substring contained in the filename SIG_EXT = 'hdf5' # extension of the BVP files SIG_SUBSTRING = 'data' # substring contained in the filename SIG_SampleRate = 256 # sample rate of the BVP files skinThresh = [40, 60] # thresholds for skin detection
[docs] def readSigfile(self, filename): """ Load signal from file. Returns: a :py:class:`pyVHR.BPM.BPM.BVPsignal` object that can be used to extract BPM signal from ground truth BVP signal. """ f = h5py.File(filename, 'r') data = np.array(f['pulse']) # load the signal data = data.reshape(1, len(data)) # monodimentional signal return BVPsignal(data, self.SIG_SampleRate)