Why matchfeatures give wrong answer?

4 次查看(过去 30 天)
Hi guys,
I have two features vector A=[ 85.8038 57.4149; 144.1727 94.1888; 158.8450 189.1278] and B=[ 87.1281 56.5832; 144.0943 94.7689; 158.4395 190.4297]
I run indexPairs = matchFeatures(A,B,'MatchThreshold',0.8) and have expected to achieve this result:
1 1 2 2 3 3 but I took this result: 1 2 3 3
If any body know a solution, please help me.

采纳的回答

Dima Lisin
Dima Lisin 2014-9-3
Hi Afsaneh,
You are getting this result because matchFeatures normalizes the feature vectors to have a magnitude of 1. This is because matchFeatures is designed to work with patch descriptors, such as SURF or HOG. You seem to be passing in x-y coordinates, for which the normalization and the threshold do not make sense.
  2 个评论
Afsaneh
Afsaneh 2014-9-3
Thanks Dima, yes. I used matchFeatures to match Centroid features.
Dima Lisin
Dima Lisin 2014-9-4
In that case, matchFeatures is not really suitable.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Feature Detection and Extraction 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by