Ask Your Question

Revision history [back]

classification with bag of visual word in python

I'm trying to classify different dog races using opencv and visual bag of word technique. I'm new in the field and I wondering 3 questions about the approach.

1. I have seen code example where the BOWtrainer is used with the matcher. Does it means the matcher help to find the "good keypoints/descriptors" so only the good ones will be used for the clustering. I cannot find any reference (tutorial?) on the subject and how it works. I don't know if it's common practice or not.

  1. I'd like to compare the quality of the different detector/descriptor techniques BEFORE using them in the clustering . Can i use PCA on the descriptor to see if they have a good separative power? the problem I encountered is that the number of keypoints varies with each picture, should i flatten the descriptor for each image so they got same dimension and they can be compared with PCA?

  2. I would like to use several techniques for the bag of visual word like ORB, SIFT SURF etc... should i perform K-means clustering for each descriptor, make histogram for each image and the finally concatenate each new features in a big feature vector so i can use a classifier on them? I have read that Kmeans clustering is not supposed to be good with binary descriptors. That approach could allow a different clustering adapted to the descriptor kind and then mixe every one of them in the end?

Thank you for your help

click to hide/show revision 2
None

updated 2018-05-22 06:21:22 -0600

berak gravatar image

classification with bag of visual word in python

I'm trying to classify different dog races using opencv and visual bag of word technique. I'm new in the field and I wondering 3 questions about the approach.

1.

  1. I have seen code example where the BOWtrainer is used with the matcher. Does it means the matcher help to find the "good keypoints/descriptors" so only the good ones will be used for the clustering. I cannot find any reference (tutorial?) on the subject and how it works. I don't know if it's common practice or not.

    1. I'd like to compare the quality of the different detector/descriptor techniques BEFORE using them in the clustering . Can i use PCA on the descriptor to see if they have a good separative power? the problem I encountered is that the number of keypoints varies with each picture, should i flatten the descriptor for each image so they got same dimension and they can be compared with PCA?

    2. I would like to use several techniques for the bag of visual word like ORB, SIFT SURF etc... should i perform K-means clustering for each descriptor, make histogram for each image and the finally concatenate each new features in a big feature vector so i can use a classifier on them? I have read that Kmeans clustering is not supposed to be good with binary descriptors. That approach could allow a different clustering adapted to the descriptor kind and then mixe every one of them in the end?

    Thank you for your help