Matlab: что такое «изображение метки»? - PullRequest
2 голосов
/ 15 ноября 2011

Я не понимаю термин / существительное 'изображение метки' в Matlab, и как оно обычно используется?Детали будут оценены.Заранее спасибо.

1 Ответ

3 голосов
/ 15 ноября 2011

Я предполагаю, что вы имеете в виду изображение этикетки или матрицу этикетки, создаваемую такими функциями, как bwlabel или bwconncomp и labelmatrix.

Матрица меток берет каждый связанный компонент, то есть каждую отдельную область включенных пикселей, в двоичном изображении и присваивает ему уникальное целое число «метка».

Например, двоичное изображение, заданное этой матрицей:

1 1 1 0 0 0 0
1 1 1 0 0 0 0
1 1 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 1 1 1
0 0 0 0 1 1 1

станет такой меткой матрицы:

1 1 1 0 0 0 0
1 1 1 0 0 0 0
1 1 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 2 2 2
0 0 0 0 2 2 2

Это очень полезные функции для работы с отдельными регионами в двоичных изображениях. Я часто использую шаблоны как:

labels = bwlabel(binaryImage);
for i=1:max(max(labels))
    regionMask = labels == i;
    %# do something with regionMask
end

или

bwcc = bwconncomp(binaryImage);
bwprops = regionprops(bwcc);
for i=length(bwprops)
    regionMask = imcrop(binaryImage,bwprops(i).BoundingBox);
    %# do something with regionMask
end
...