How can I calculate percentage of Euclidean distance?
42 次查看(过去 30 天)
显示 更早的评论
Hello
I use this code to find the similarities between features by the Euclidean distance.
function D= E_distance(n1, n2)
D = sqrt(sum((n1 - n2) .^ 2));
end
It will give me the distance between features, but I want to get the percentage where I can compare it to the threshold, how can I get it?
0 个评论
采纳的回答
OCDER
2018-8-15
编辑:OCDER
2018-8-16
Assuming you want similarity % as explained here, alter the equation as such : https://stats.stackexchange.com/questions/53068/euclidean-distance-score-and-similarity
function S = E_similarity(n1, n2)
S = 1/(1+sqrt(sum((n1 - n2) .^ 2)));
end
If S == 1 (or distance is 0), then two points are the same
If S == 0 (or distance goes to infinite), then two points are very different
To use a cutoff of similarity, for instance 0.80, then you would so this
SimCutoff = 0.8;
if E_Similarity(n1, n2) <= SimCutoff
disp('Exceed cutoff. Not similar enough')
else
disp('Similar enough')
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Feature Detection and Extraction 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!