Для сегментации в матлабе есть функция bwconncomp
. Он может подсчитать количество обнаруженных объектов.
Im=imread('Mountain.ppm');
[Seg_Im] = normalize_segmentation(Im);
Im_filt=medfilt2(Seg_Im,[3 3]);
se=strel('disk',2);
Seg_Im = imclose(Im_filt,se);
Obj_Im= bwconncomp(Seg_Im,6)
Obj_Im =
Connectivity: 6
ImageSize: [30 32]
NumObjects: 1
PixelIdxList: {[129x1 double]}
И когда я получаю доступ к PixelIdxList
, максимальное значение равно 834.
Что это за 834? Потому что размер изображения всего 30x32.
И как мы можем получить позицию объекта, используя информацию PixelIdxList
/bwconncomp
?