Discrepancy in signalLabeler AutomatedValue Function with Multi-channel Data??

2 views (last 30 days)
I am working with the signalLabeler in MATLAB and attempting to use the AutomatedValue function as described in the template here:
openExample('signal/LabelQRSComplexesECGSignalsUsingTrainedDeepNetworkExample')
.
However, contrary to the documentation, when I call the custom function within signalLabeler, the input 'x' is passed as a single-dimension vector rather than a multi-channel matrix or cell array. This inconsistency is also reflected in the provided example, where 'x' is used as one-channel data and the for-loop seems redundant. Also, when I select multiple channels in signalLabeler, the 'x' passed to function is still one-channel data. How can I address this to work with multi-channel ECG data as intended by the function's template?

Answers (1)

Ayush Modi
Ayush Modi on 10 Jan 2024
Hi,
The example in the link provided (https://au.mathworks.com/help/signal/ug/label-qrs-complexes-and-r-peaks-of-ecg-signals-using-deep-network.html) is to demonstrate how you can pass a signal variable (Single or Multi-channel). The for-loop is there to handle both of these cases.
Assuming you are trying to pass a multi-channel signal into the parameter “x”, I replicated the steps mentioned in the example and replaced the signal with my own multi-channel signal (4 channels).
Furthermore, I have added the below line of code to check the size of the signal in the “findQRS” custom function to check the number of channels received in "x":
size(x,2)
The output returned for the above code during execution of the code was 4.
I hope this helps you in understanding the example better.

Categories

Find more on EEG/MEG/ECoG in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!