


missedBeatDetector Finds missed beats in the signal
Analyses consecutive RR-intervals to detect signs of missed beats.
For each interval, the sum of its neighbors is computed:
sum = interval(i-1) + interval(i+1)
An interval is deemed noisy when:
interval(i) > sum - sum*toleratedeviationPercent
and: interval(i) < sum - sum*toleratedeviationPercent
Inputs:
interval - The RR-interval data
toleratedeviationPercent - Tolerated variation in %
Outputs:
errors - Boolean Array, 1 for errors

0001 function errors = missedBeatDetector( interval, toleratedeviationPercent ) 0002 %missedBeatDetector Finds missed beats in the signal 0003 % Analyses consecutive RR-intervals to detect signs of missed beats. 0004 % 0005 % For each interval, the sum of its neighbors is computed: 0006 % sum = interval(i-1) + interval(i+1) 0007 % An interval is deemed noisy when: 0008 % interval(i) > sum - sum*toleratedeviationPercent 0009 % and: interval(i) < sum - sum*toleratedeviationPercent 0010 % 0011 % Inputs: 0012 % interval - The RR-interval data 0013 % toleratedeviationPercent - Tolerated variation in % 0014 % 0015 % Outputs: 0016 % errors - Boolean Array, 1 for errors 0017 % 0018 0019 allowedDeviation = toleratedeviationPercent / 100; 0020 0021 errors = zeros(1,length(interval)); 0022 0023 for i = 2:length(interval)-1 0024 % double of 2 adjacent hardbeats: missed peak 0025 sumPrevNext = interval(i-1) + interval(i+1); 0026 deviation = allowedDeviation * sumPrevNext; 0027 if(interval(i) > (sumPrevNext - deviation) && interval(i) < (sumPrevNext + deviation)) 0028 errors(i) = 1; 0029 end 0030 end 0031 end 0032