How to exclude different sections of an ECG signal?

3 次查看(过去 30 天)
I want to process various ECG signals, however, they all contain artifacts. Using a custom Matlab GUI, I shaded the artifacts of each datasets and were saved as a .mat file. Below is an example of an arifact being shaded. I also included the files of this signal here.
The .mat file contains the ECG signal, respiration signal, time, and the shaded data of the ECG and respiration signal. The shaded data contains 2 columns: first column being the start time and the second column being the end time of the shaded artifact, the rows correspond to the number of artifacts shaded in the signal (as seen below).
I want to be able to exclude these shaded data when processing the ECG signal and I will have to do this for 40 datasets. Though I'm not sure how to approach this with my basic knowledge of using Matlab. Is there a way to automatically exclude the artifacts from the ECG signal using the shaded data?
  2 个评论
Image Analyst
Image Analyst 2020-9-19
Do you want the artifact zones to be found automatically, or are you okay with manually indicating where they are?
cfmmj23
cfmmj23 2020-9-20
Sorry for the confusion. In my case, I have to find the artifacts manually using the GUI that was provided to me and then try to exclude them using the shaded data. Though, if there is a way to find the artifact zones automatically, I'd also like to learn about it as it would help with my reseach.

请先登录,再进行评论。

回答(1 个)

Ameer Hamza
Ameer Hamza 2020-9-19
Try something like this
idx1 = t > AX1_Shade(:,1);
idx2 = t < AX1_Shade(:,2);
idx = idx1 & idx2;
idx = any(idx);
t(idx) = [];
fbsum(idx) = [];
Similar thing can be done for respiration data.

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by