1
$\begingroup$

I extracted sift feature to construct a bag-of-words model. I did the following to extract the feature vector:

  1. Extracted features from the key frames.

  2. After the feature extraction I tried using Principle Component Analysis to reduce the size of my features.

Query: What further pre-processing steps should I take before creating a codebook out of the set of features extracted ?

$\endgroup$
  • 2
    $\begingroup$ People will be much more willing to help you if they can see some effort on your part to solve the problem yourself. Simply asking for for a solution without any evidence of any personal research is a little presumptuous. $\endgroup$ – Sam Maloney Apr 30 '13 at 16:10
  • $\begingroup$ Thank you for the response, but i studied the state of the art, the thing is that there are many issues and i dont know the best choice !!! $\endgroup$ – Video retrieval Apr 30 '13 at 17:28
  • $\begingroup$ The work i'm doing is basically in the feature extraction step, i have done this, i extracted a space time dependant feature. It is a novel feature. $\endgroup$ – Video retrieval Apr 30 '13 at 17:31
  • $\begingroup$ So, I need to have advices about a clustering process adapdet to the space time faeture, i thinked about K-means. Then a code book construction for video annotation. $\endgroup$ – Video retrieval Apr 30 '13 at 17:32
1
$\begingroup$

There is now support for the bag-of-words model in the Computer Vision System Toolbox for MATLAB.

$\endgroup$
1
$\begingroup$

First of all, read this. Then:

Due to the nature of this question, I will only give you some hints on pre-processing to improve your retrieval task.

  1. Don't use Sift. Use RootSift. This is a performance gain at no cost. It is taking the square root of Sift vectors and applying L1 normalization.

  2. You can use Harris Affine regions to even be more robust.

  3. VLAD generally improves BoW model with a very simple procedure.

  4. You can apply your PCA not on BoW but on this VLAD vectors.

  5. Finally, you can always use a more clever quantization scheme such as product quantization.

$\endgroup$
0
$\begingroup$

There is quite a bit of research showing that neither the features nor the method to build a dictionary matter that much in comparison to later encoding and pooling layers in the architecture. Have a look at these two articles.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.