簡體   English   中英

如何區分八度中的數組值?

[英]how do i differentiate array values in octave?

我正在執行將ECG信號作為一維數組文件輸入的任務,進行一些處理以檢測心率。

第一步也是使用5點差分方程來求微分值,以擺脫低頻值,我已經搜索了倍頻程的微分法,但發現的只是多項式。 那么如何在octave / mat-lab命令中實現呢?

謝謝

根據我的經驗,也許您想使用5個點來計算信號的斜率(微分的近似值),例如,可以輕松實現:

load ecg;
n=5
for i=n+1:length(ecg)
    Y(i-n) = (ecg(i) - ecg(i-n))/n;
end

subplot(2,1,1); plot(ecg)
subplot(2,1,2); plot(Y)

這是您期望的結果嗎? 在此處輸入圖片說明

您可以在R-peak檢測中使用Pan-Tompkins方法,

ecgSig是您的ECG信號,采樣頻率為Fs

t=(0:size(ecgSig,2)-1)/Fs;
ecgSig = circshift(ecgSig,[0 5]) - ecgSig;

subplot(211)
plot(t,ecgSig);
subplot(212)
plot(t,ecgSig);

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM