How can I access each superpixel of an image?
Show older comments
Hello
I have successfully segmented the superpixels of an image (having size 120x160) using SLIC algorithm. For instance,
segments = vl_slic(img,regionSize, regularizer);
This segments(having size 120x160) contain all the number of superpixels which are segmented from img using SLIC. And I segmented only 50 superpixels.
Now how can I access each superpixel from this segments?
For example, I want to make a cell array (let say l=cell(1,num_superpixels)) and keep all individual superpixels in each cell for further processing.
Any help is appreciated
Thanks in advance!
2 Comments
SONAM TIPLE
on 25 Mar 2017
Edited: SONAM TIPLE
on 25 Mar 2017
segmented_images = cell(1,max(max(L)));
rgb_label = repmat(L,[1 1 3]);
for k = 1:max(max(L)) %L-label matrix
color = im;%im-Color img
color(rgb_label ~= k) = 0; segmented_images{k} = color; end
imshow(segmented_images{1}), title('objects in cluster 1');% this will display your Superpixel or cluster no 1, %this way you can view your individual superpixel %check segmented_images in workspace you will find cell arrays.
Ad
on 16 Apr 2017
what is 'im'?
Answers (1)
Huan Liang
on 12 Apr 2017
0 votes
idx=label2idx(L); and then you can use idx{i} to search each superpixel
Categories
Find more on Image Segmentation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!