OSDN Git Service

update algorithm of calculating similarity between BirthmarkSet. Ignoring NaN and...
authortama3 <tama3@acee48c3-7b26-0410-bdac-b3d0e5314bbc>
Mon, 16 Jul 2007 01:49:46 +0000 (01:49 +0000)
committertama3 <tama3@acee48c3-7b26-0410-bdac-b3d0e5314bbc>
Mon, 16 Jul 2007 01:49:46 +0000 (01:49 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/stigmata/trunk@170 acee48c3-7b26-0410-bdac-b3d0e5314bbc

src/main/java/jp/naist/se/stigmata/ComparisonPair.java

index c9b5ceb..4e69414 100644 (file)
@@ -52,10 +52,15 @@ public class ComparisonPair implements Iterable<ComparisonPairElement>{
      */\r
     public double calculateSimilarity(){\r
         double similarity = 0d;\r
+        int count = 0;\r
         for(ComparisonPairElement elem: this){\r
-            similarity += elem.getSimilarity();\r
+            double sim = elem.getSimilarity();\r
+            if(!Double.isNaN(sim) && !Double.isInfinite(sim)){\r
+                similarity += sim;\r
+                count++;\r
+            }\r
         }\r
-        return similarity / getBirthmarksCount();\r
+        return similarity / count;\r
     }\r
 \r
     /**\r