show ouput clustering images

Hello
I = imread('flowers','jpg');
I = im2double(I);
HSV = rgb2hsv(I);
H = HSV(:,:,1); H = H(:);
S = HSV(:,:,2); S = S(:);
V = HSV(:,:,3); V = V(:);
HH=[H S V];
idx = kmeans(HH, 4);
how i show output ?
Thanks.

Answers (1)

Image Analyst
Image Analyst on 17 Mar 2014
rgb2ind() will do cluster analysis of rgb images.

2 Comments

Tomas
Tomas on 17 Mar 2014
Edited: Tomas on 17 Mar 2014
ok thanks, How do I use rg2ind ? for example
RGB = imread('flowers.tif');
[X,map] = rgb2ind(RGB,128);
imshow(X,map)
how to create something out of it as
H = HSV(:,:,1); H = H(:);
S = HSV(:,:,2); S = S(:);
V = HSV(:,:,3); V = V(:);
HH=[H S V];
idx = kmeans(HH, 4);
rgb2ind() does the clustering itself using a variety of methods. You don't need to use kmeans afterwards, though you can use kmeans instead if you want to do it in HSV color space instead of rgb space.

Sign in to comment.

Asked:

on 17 Mar 2014

Commented:

on 16 Jul 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!