29 lines
821 B
Matlab
29 lines
821 B
Matlab
function[obj] = correct_for_baseline(obj, settings)
|
|
%% correction for baseline measure
|
|
% The actual baseline is calculated in getBaseline
|
|
eyes = fieldnames(obj.data);
|
|
for e = 1:length(eyes)
|
|
eye = eyes{e};
|
|
|
|
signals = fieldnames(obj.data.(eye).uncorrected);
|
|
|
|
baseline = getBaseline(obj, settings);
|
|
obj.baseline = baseline;
|
|
|
|
for i = 1:length(signals)
|
|
|
|
signal = getfield(obj.data.(eye).uncorrected, signals{i});
|
|
|
|
if (~isnan(baseline))
|
|
%% apply the correction
|
|
corrected_signal = (signal - baseline) / baseline;
|
|
else
|
|
%% no correction is applied
|
|
corrected_signal = signal;
|
|
end
|
|
|
|
obj.data.(eye).baseline_corrected = setfield(obj.data.(eye).baseline_corrected, signals{i}, corrected_signal);
|
|
end
|
|
end
|
|
|