I wanted to iterate this piece of code for 10 seconds.
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
disp('Opening an inlet...');
inlet = lsl_inlet(stream_result{1});
[vec,ts] = inlet.pull_sample();
start = ts;
fNIRS_record = [];
flag = 0;
while ts - start < 1 %one second data which is ~8 frames
[vec,ts] = inlet.pull_sample();
fNIRS_record = [fNIRS_record;vec];
fprintf('%.2f\t',vec);
fprintf('%.5f\n',ts);
flag = flag + 1;
end
if(flag == size(fNIRS_record,1))
%Real time channel exclusion based on threshCV
RT_HbO = fNIRS_record( :,2:2:end);%getting only HbO values at real time
%using getCV() eliminate bad channels.
RT_vertcat = mean(RT_HbO,2);%avg of all 20 channels.
RT_vertcat = array2table(RT_vertcat);
realtime_stats_HbO = groupsummary(RT_vertcat,{}, {'mean', @slope_HbO, @(v) var(v, 1), @(pk) max(pk), @(sk) skewness(sk), @(kurt) kurtosis(kurt)});
clear flag;clear RT_HbO;clear RT_vertcat;
label = trainedModel.predictFcn(realtime_stats_HbO); %<--------------It has predict and print the label and clear everything and run the loop again for desired time period which is 10 seconds.
end
0 Kommentare
Antworten (1)
Walter Roberson
am 24 Okt. 2019
tic;
while toc < 10
Timing is unlikely to be exact.
3 Kommentare
Walter Roberson
am 24 Okt. 2019
for iter = 1 : 10
tic;
... do the work
pause(1-toc);
end
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!