Вот простое решение на основе regexp
для определения количества запусков:
result = numel(regexp(char(a+'0'), '1+'));
Вы также можете использовать strfind
,который работает для числовых массивов (хотя это не задокументировано):
result = numel(strfind([0 a], [1 0]));
или просто diff
:
result = sum(diff([a 0])<0);
Если у вас есть панель инструментов обработки изображений,bwlabel
также можно использовать для работы:
result = max(bwlabel(a));
или (спасибо @ rahnema1 за это):
[~, result] = bwlabel(a);