|
@@ -36,7 +36,7 @@ namespace bbiwarg.Recognition.FingerRecognition
|
|
|
Finger compareFinger = (Finger)compareObject;
|
|
|
LineSegment2D compareLineSegment = compareFinger.LineSegment;
|
|
|
Line2D compareLine = compareLineSegment.Line;
|
|
|
- /*
|
|
|
+
|
|
|
//tip position
|
|
|
float tipPointDistance = TipPoint.getDistanceTo(compareFinger.TipPoint);
|
|
|
float tipPointSimilarity = Math.Max(0, 1 - tipPointDistance / Constants.FingerSimilarityMaxTipPointDistance);
|
|
@@ -44,7 +44,7 @@ namespace bbiwarg.Recognition.FingerRecognition
|
|
|
//hand position
|
|
|
float handPointDistance = HandPoint.getDistanceTo(compareFinger.HandPoint);
|
|
|
float handPointSimilarity = Math.Max(0, 1 - handPointDistance / Constants.FingerSimilarityMaxHandPointDistance);
|
|
|
- */
|
|
|
+ /*
|
|
|
//check angle
|
|
|
float angle = LineSegment.Line.getAngleBetween(compareLine);
|
|
|
float angleSimilarity = Math.Max(1 - angle / Constants.FingerSimilarityMaxAngle, 0);
|
|
@@ -56,9 +56,11 @@ namespace bbiwarg.Recognition.FingerRecognition
|
|
|
//check vertical distance
|
|
|
float verticalDistance = LineSegment.getVerticalDistanceTo(compareLineSegment);
|
|
|
float verticalDistanceSimilarity = Math.Max(1 - verticalDistance / Constants.FingerSimilarityMaxVerticalDistance, 0);
|
|
|
-
|
|
|
+ */
|
|
|
+ float similarity = tipPointSimilarity * handPointSimilarity;
|
|
|
//float similarity = tipPointSimilarity * handPointSimilarity * angleSimilarity * parallelDistanceSimilarity * verticalDistanceSimilarity;
|
|
|
- float similarity = (angleSimilarity + parallelDistanceSimilarity + verticalDistanceSimilarity) / 3;
|
|
|
+ //float similarity = (tipPointSimilarity + handPointSimilarity + angleSimilarity + parallelDistanceSimilarity + verticalDistanceSimilarity)/5;
|
|
|
+ //float similarity = (angleSimilarity + parallelDistanceSimilarity + verticalDistanceSimilarity) / 3;
|
|
|
|
|
|
return similarity;
|
|
|
}
|