Having the start and end of each interval of the noise array, how could I do it to exclude those times that overlap with another interval array of detections?
I know how to do it in a loop, but then it has to go interval by interval to check if they overlap to excluded it and this takes to much time. Is there a better approach that I could use without using a loop?
I know I can check for the overlapping intervals like this:
ovlp = @(x, y)bsxfun(@ge, x(:, 1), y(:, 1)') & bsxfun(@le, x(:, 1), y(:, 2)');
idx = ovlp(noise,det) | ovlp(det, noise)';
[row, col] = ind2sub(size(idx), find(idx));
output = [row, col];
However, then this does not tell me what start or end of the noise interval will become the end of the detection interval.
Thank you so much for your help.