applying kmeans for ROI in Image

4 views (last 30 days)
FIR
FIR on 31 Jan 2013
I have a image below
http://imgur.com/RsRHy2V
here i have detected surf features and have draw circle over it,now i want to apply k means for that surf features inside that blue circle,please assist
for whole image i used code
cform = makecform('srgb2lab');
lab_he = applycform(I,cform);
he=I;
ab = double(lab_he(:,:,2:3));
nrows = size(ab,1);
ncols = size(ab,2);
ab = reshape(ab,nrows*ncols,2);
nColors = 3;
% repeat the clustering 3 times to avoid local minima
[cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean', ...
'Replicates',3);
but how to apply for surffeatures inside circle
  4 Comments
Lester Lim
Lester Lim on 31 Jan 2013
Edited: Lester Lim on 31 Jan 2013
use roipoly, after drawing the ROI, double click it to give mask...
FIR
FIR on 31 Jan 2013
but rioploy gives a binary image , i need to apply k means surf features

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 31 Jan 2013
Get a mask for each circle (say by using code from the FAQ) and then get the pixel values inside by doing:
pixelValuesInsideCircle = grayImage(circleMask);

Tags

Community Treasure Hunt

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

Start Hunting!