私は方形パルス(+いくつかのノイズ)で構成された信号を持っています、ここにその小さな部分があります:
脈拍数を数えるための効率的で堅牢な方法を探しています。
これまでに行ったことは次のとおりです。
振幅には少しノイズがありますが、SNR は大きく、しきい値を設定できます。
data = data>1;
各パルスの長さにはノイズが含まれている可能性があるため、無視して を使用diff
して微分 (+ と -) を取得し、ゼロ以外の要素がいくつあるかを調べ、2 で割ります (パルスごとに微分ピークが 2 つあるため)。
dd=diff(data);
num_of_pulses=length(find(diff(dd)))/2
それが最善の方法ですか?diff
うるさいので使わないように言われました…