2014-10-16 1 views
0

Если у меня есть изображение, содержащее много объектов, и я хочу получить, например, первые моменты изображения для всего изображения в результате bwlabel, который хранится в Ilabel, как бы я это сделал?Особенности для изображения, содержащего много объектов

[Ilabel num] = bwlabel(Ibw); 
stats = regionprops(Ilabel,'BoundingBox'); 
+0

overflownians может быть? Или лучше переливы? Нах, похоже, не может сделать хорошего слова. – Divakar

+0

Вы имеете в виду, как получить доступ к различным записям из статистики? Например, координаты Bounding Box 1-го объекта? Если так, используйте статистику (1) .BoundingBox, так как статистика - это структура. Если нет, попробуйте немного уточнить, что вы хотите. Благодаря! –

+0

Нет, я хочу взять момент всего изображения. Я должен взять изображение без использования bwlabel и передать изображение непосредственно в regionprops. –

ответ

0

Предполагая Ibw в вашем примере числового (не логично) и содержит только целые числа 0 и 1 (или 0 и некоторые другие соответствуют целому значению), вы должны быть в состоянии использовать его непосредственно в качестве матрицы этикетки :

stats = regionprops(Ibw,'BoundingBox'); 

Это будет обрабатывать каждый ненулевой пиксель в изображении как часть одного компонента. Кроме того, вы можете взять матрицу этикетки от bwlabel и изменить все этикетки на 1:

[Ilabel num] = bwlabel(Ibw); 
Ilabel(find(Ilabel)) = 1; 
stats = regionprops(Ilabel,'BoundingBox'); 
Смежные вопросы