matlab - How to get a fixed size SIFT feature vector? -


i trying obtain feature vectors n =~ 1300 images in data set, 1 of features have implement shape. plan use sift descriptors. however, each image returns different number of keypoints, run

[f,d] = vl_sift(image); 

f of size 4 x n , d of size 128 x n n number of keypoints detected.

however, want obtain single vector of size 128 x 1 can represent image possible. have seen things clustering , k-means, don't have idea how them.

the basic idea average of these n vectors of size 128x1, have feature vector. taking average meaningful? should kind of histogram?

any appreciated. !

this big research problem. correct, averaging descriptors not meaningful. there several approaches out there creating single vector out of set of local descriptors. 1 big class of methods called "bag of features" or "bag of visual words". general idea cluster local descriptors (e. g. sift) many images (e. g. using k-means). take particular image, figure out cluster each descriptor image belongs to, , create histogram. there different ways of doing clustering , different ways of creating , normalizing histogram.

a different approach called "pyramid match kernel", way of training svm classifier on sets of local descriptors.

so starters google "bag of features" or "bag of visual words".


Comments

Popular posts from this blog

javascript - jquery or ashx not working -

opencv - DataType<cv::detail::deriv_type>::depth what is it used for -

python 3.x - Mapping specific letters onto a list of words -