i retrieve contours from images by using canny algorithm. it's enough to have a descriptor image and put in SVM and find similarities? Or i need necessarily other features like elongation, perimeter, area ? I talk about this, because inspired by this example: http://scikit-learn.org/dev/auto_examples/plot_digits_classification.html i give my image in greyscale first, in canny algorithm style second and in both cases my confusion matrix was plenty of 0 like precision, recall, f1-score, support measure
Asked
Active
Viewed 344 times
0
-
2AFAIK the kind of feature that will work for a task is really problem specific and I suspect nobody will be able to answer this question whithout providing your dataset online + the full script of your experiment. StackOverflow is probably not the best place to discuss computer vision. Furthermore SO is about programming questions, not theoretical questions, hence this is probably off-topic. – ogrisel Jan 10 '13 at 13:31
-
1Also if you use kernel SVM in scikit-learn you should always grid search the optimal value for C and gamma. Measuring f1-score without doing a grid search is worth nothing: check this http://scikit-learn.org/dev/auto_examples/grid_search_digits.html As for the theoretical part of your question: which features / algorithms work best for which kind of task / data, please ask here: http://dsp.stackexchange.com/questions/tagged/computer-vision – ogrisel Jan 10 '13 at 13:52
-
With no intend to disrespect, the question shows that you may need to improve your understanding of how the whole process of SVM classification works. Unless you can classify the "entire population" with 100% recall and precision, no single feature or features set is merely "enough". Depending on your samples, features derived from canny algorithm may give you some separation in SVM. Whether it's enough depends on how satisfied you are with that separation in your application. – Bee Jan 10 '13 at 17:28
1 Answers
0
My advice is:
unless you have a low number of images in your database and/or the recognition is going to be really specific (not a random thing for example) I would highly recommend you to apply one or more features extractors such SIFT, Fourier Descriptors, Haralick's Features, Hough Transform to extract more details which could be summarised in a short vector.
Then you could apply SVM after all this in order to get more accuracy.

Community
- 1
- 1

Rafael Ruiz Muñoz
- 5,333
- 6
- 46
- 92