Нужно объединить пикселы в области, Matlab
Есть изображение, в котором после обработки фон имеет яркость = 0, объекты имеют ненулевую яркость. Нужно объединить эти объекты в области и присвоить им ID. Смысл такой: алгоритм построчно сканирует изображение, если обнаруживает ненулевой пиксел, сохраняет его координаты, яркость куда-нибудь в массив, например, и начинает проверять соседние пикселы. Если среди соседних обнаруживает ненулевые, то так же сохраняет их координаты и яркость. Впоследствии, эти значения нужны будут для вычислений. Когда таким образом будет выделена первая область, всем пикселам, входящим в нее должна быть присвоена яркость = 0. После этого, алгоритм продолжает построчно сканировать изображение в поисках ненулевых пикселей и в случае их обнаружения повторяет вышеописанные действия. Пока что дальше этого алгоритма дело не идет:
img = imread('t.png');
[x, y] = size(img);
for i = 1:x
for j = 1:y
if img(i,j) ~= 0
%сохраняем координаты и яркость
if img(i, j+1) ~= 0%%проверяем правый соседний пиксел
% сохраняем координаты и яркость
j = j + 1;
end
if img(i+1, j) ~= 0%%проверяем нижний соседний
% сохраняем координаты и яркость
i = i + 1;
end
end
end
end