MATLAB: Identifying periods of signal above threshold

Image Processing Toolboxsignal processing

The code below provides number of "bursts" or periods of activity (300 consecutive points = 0.2 s) above a given threshold. How could I add a further condition to the code that identifies "bursts" only when there are at least n values of separation (i.e. 1200 points) (below the threshold) between two different bursts?
above_threshold = (signal > threshold);
minAcceptableLength = 300;
% Find spans that are long enough.
isLongEnough = bwareafilt(above_threshold, [minAcceptableLength, inf]);
% Count the number of spans (bursts) that are long enough.
[labeledSpans, numberOfBursts] = bwlabel(isLongEnough);

Best Answer

You'd have to look at the inverse: ~isLongEnough. Then call regionprops() to measure the lengths of all the stretches/gaps between the bursts. Then take some action depending on whether they are long enough or not.
labeledLowSignalRegions = bwlabel(~isLongEnough);
props = regionprops(labeledLowSignalRegions, 'Area');
allLengths = [props.Area]