How to use VLfeat to do VLAD-k encoding?

2 次查看(过去 30 天)
Hi everyone, I want to use VLfeat library to do VLAD-k encoding of image features. They have a simple tutorial online at here (<http://www.vlfeat.org/overview/encodings.html)>. But the tutorial is a little vague for me to follow. In addition, the example is for VLAD with nearest neighbor, not VLAD-k. So could anyone write an example of VLAD-k using VLfeat for me? Thanks a lot.
  1 个评论
Yi Zhu
Yi Zhu 2016-5-28
VLAD-k exmaple I wrote, is this correct? Especially for the assignment step? Thanks.
numFeatures = 5000 ;
dimension = 2 ;
data = rand(dimension,numFeatures) ; % Data is used to train the VLAD encoding
numDataToBeEncoded = 1000;
dataToBeEncoded = rand(dimension,numDataToBeEncoded);
numClusters = 30 ;
centers = vl_kmeans(data, numClusters);
kdtree = vl_kdtreebuild(centers) ;
nn = vl_kdtreequery(kdtree, centers, dataToBeEncoded,'NUMNEIGHBORS', k) ; % k is the number of nearest neighbors
assignments = zeros(numClusters,numDataToBeEncoded);
assignments(sub2ind(size(assignments), nn, 1:length(nn))) = 1; % is here still correct for VLAD-k? nn is a matrix now
enc = vl_vlad(dataToBeEncoded,centers,assignments);

请先登录,再进行评论。

回答(1 个)

ahmed shahin
ahmed shahin 2021-8-20
Dear Zhu
what is the value of k?

类别

Help CenterFile Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by