X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=Robust%2Fsrc%2FBenchmarks%2FSSJava%2FEyeTracking%2FClassifierTree.java;h=fa69d23518a887ea5c49c6272a7e52c9a4516002;hb=338b40f8f52cf09dc5fcef67796acc65a69758b9;hp=54e19f70f651c0649471d5dc947aa91c005afa37;hpb=4cf04d9fa926d0fed7c6ffc64aaee45d88f5ad15;p=IRC.git diff --git a/Robust/src/Benchmarks/SSJava/EyeTracking/ClassifierTree.java b/Robust/src/Benchmarks/SSJava/EyeTracking/ClassifierTree.java index 54e19f70..fa69d235 100644 --- a/Robust/src/Benchmarks/SSJava/EyeTracking/ClassifierTree.java +++ b/Robust/src/Benchmarks/SSJava/EyeTracking/ClassifierTree.java @@ -1,3 +1,5 @@ +import SSJava.PCLOC; + /* * Copyright 2009 (c) Florian Frankenberger (darkblue.de) * @@ -21,11 +23,11 @@ * * @author Florian */ -@LATTICE("C") +@LATTICE("CS maxScaleFactor || factor < minScaleFactor) continue; // now we calculate the actualDimmension - @LOC("V") int actualDimmension = (int) (100 * factor); - @LOC("V") int maxX = imageData.getWidth() - actualDimmension; - @LOC("V") int maxY = imageData.getHeight() - actualDimmension; + @LOC("THIS,ClassifierTree.C") int actualDimmension = (int) (100 * factor); + @LOC("THIS,ClassifierTree.C") int maxX = imageData.getWidth() - actualDimmension; + @LOC("THIS,ClassifierTree.C") int maxY = imageData.getHeight() - actualDimmension; - @LOC("V") int maxDiffX = Math.max(Math.abs(startPosX - maxX), startPosX); - @LOC("V") int maxDiffY = Math.max(Math.abs(startPosY - maxY), startPosY); + @LOC("THIS,ClassifierTree.C") int maxDiffX = Math.max(Math.abs(startPosX - maxX), startPosX); + @LOC("THIS,ClassifierTree.C") int maxDiffY = Math.max(Math.abs(startPosY - maxY), startPosY); - for (@LOC("CXY") float xDiff = 0.1f; Math.abs(xDiff) <= maxDiffX; xDiff = + @LOC("CXY") int xidx = 0; + TERMINATE: for (@LOC("CXY") float xDiff = 0.1f; Math.abs(xDiff) <= maxDiffX; xDiff = (xDiff + sgn(xDiff) * 0.5f) * -1) { + + if (++xidx > 1000) { + return null; + } + @LOC("CXY") int xPos = Math.round((float) (startPosX + xDiff)); + if (xPos < 0 || xPos > maxX) continue; + @LOC("CXY") int yidx = 0; // yLines: - for (@LOC("CXY") float yDiff = 0.1f; Math.abs(yDiff) <= maxDiffY; yDiff = + TERMINATE: for (@LOC("CXY") float yDiff = 0.1f; Math.abs(yDiff) <= maxDiffY; yDiff = (yDiff + sgn(yDiff) * 0.5f) * -1) { + + if (++yidx > 1000) { + return null; + } + @LOC("CXY") int yPos = Math.round(startPosY + yDiff); if (yPos < 0 || yPos > maxY) continue; @@ -164,6 +184,8 @@ public class ClassifierTree { } + @LATTICE("OUT 0 ? +1 : 1)); }