Uses of Class
geometry.object.SkeletonNode

Packages that use SkeletonNode
algorithm.matching Package containing all classes that are used to establish a final matching between two skeletons' end nodes. 
algorithm.psgm All classes used for the computation of two skeletons' endnode similarities, as described in the paper. 
geometry.object Package containing all skeleton data structures needed. 
io.loader.load2D Contains all classes used to load a 2D skeleton from the input files. 
io.loader.load3D Contains all classes needed to load a 3D-skeleton. 
io.loader.shared Package containing all classes needed to load 2D skeletons as well as 3D skeletons. 
utils Contains simple helper classes. 
 

Uses of SkeletonNode in algorithm.matching
 

Fields in algorithm.matching declared as SkeletonNode
private  SkeletonNode PossibleMatching.sn1
           
private  SkeletonNode PossibleMatching.sn2
           
 

Methods in algorithm.matching that return SkeletonNode
 SkeletonNode PossibleMatching.getSn1()
           
 SkeletonNode PossibleMatching.getSn2()
           
 

Methods in algorithm.matching that return types with arguments of type SkeletonNode
private  java.util.List<SkeletonNode> OSBfinalMatching.orderEndNodes(SkeletonObject so, SkeletonNode node)
          Order the skeleton's end nodes according to their distance to the specified node, measured by the length of the skeleton path between the two nodes.
 

Methods in algorithm.matching with parameters of type SkeletonNode
 PossibleMatching PossibleMatchList.getMatchingByEndNodes(SkeletonNode sn1, SkeletonNode sn2)
          From the list of possible matchings, extract the matching between the two nodes specified by the parameters.
private  java.util.List<SkeletonNode> OSBfinalMatching.orderEndNodes(SkeletonObject so, SkeletonNode node)
          Order the skeleton's end nodes according to their distance to the specified node, measured by the length of the skeleton path between the two nodes.
 void PossibleMatching.setSn1(SkeletonNode sn1)
           
 void PossibleMatching.setSn2(SkeletonNode sn2)
           
 

Method parameters in algorithm.matching with type arguments of type SkeletonNode
private  double[][] OSBfinalMatching.getCostMatrix(double[][] costs, java.util.List<SkeletonNode> orderedEndnodes1, java.util.List<SkeletonNode> orderedEndnodes2, PossibleMatchList possibleMatchings)
          Get the matching cost matrix as input for OSB function.
private  double[][] OSBfinalMatching.getCostMatrix(double[][] costs, java.util.List<SkeletonNode> orderedEndnodes1, java.util.List<SkeletonNode> orderedEndnodes2, PossibleMatchList possibleMatchings)
          Get the matching cost matrix as input for OSB function.
 

Constructors in algorithm.matching with parameters of type SkeletonNode
PossibleMatching(SkeletonNode sn1, SkeletonNode sn2, double matchingcost)
           
 

Uses of SkeletonNode in algorithm.psgm
 

Methods in algorithm.psgm with parameters of type SkeletonNode
 double CostGetter.getCost(SkeletonNode sn1, SkeletonNode sn2)
          Get the matching costs for the two specified end nodes.
 double[][] CostGetter.getPathDistanceMatrix(SkeletonNode sn1, SkeletonNode sn2)
          Get the path distance matrix for a pair of end nodes to be matched.
 

Uses of SkeletonNode in geometry.object
 

Fields in geometry.object declared as SkeletonNode
private  SkeletonNode SkeletonBranch.endnode
           
private  SkeletonNode SkeletonPath.endnode1
          the skeleton path's first end node (the start point)
private  SkeletonNode SkeletonPath.endnode2
          the skeleton path's second end node (the end point)
private  SkeletonNode SkeletonNode.previous
          holds the information which skeleton node is the predecessor on the path
private  SkeletonNode SkeletonBranch.startnode
           
 

Fields in geometry.object with type parameters of type SkeletonNode
private  java.util.List<SkeletonNode> SkeletonPath.allNodes
          a list containing all nodes on this skeleton path
private  java.util.List<SkeletonNode> Skeleton.endnodes
          list containing all skeleton endnodes.
private  org.jgrapht.graph.SimpleDirectedWeightedGraph<SkeletonNode,SkeletonBranch> SkeletonGraph.graph
          the "real" skeleton graph
private  java.util.List<SkeletonNode> SkeletonBranch.nodes
           
private  java.util.Map<SkeletonNode,java.util.List<SkeletonPath>> Skeleton.paths
          list containing all skeleton paths emanating from every skeleton node.
 

Methods in geometry.object that return SkeletonNode
 SkeletonNode SkeletonBranch.getEndnode()
           
 SkeletonNode SkeletonPath.getEndnode1()
          Get the skeleton path's first end node.
 SkeletonNode SkeletonPath.getEndnode2()
          Get the skeleton path's second end node.
 SkeletonNode SkeletonNode.getPrevious()
          get the predecessor of this skeleton node on the path.
 SkeletonNode SkeletonBranch.getStartnode()
           
 

Methods in geometry.object that return types with arguments of type SkeletonNode
 java.util.List<SkeletonNode> Skeleton.getAllEndNodes()
          Return the skeleton's end nodes.
 java.util.List<SkeletonNode> SkeletonPath.getAllIncludedSkeletonPoints()
          get a list of all skeletonnodes included in this path, but without end nodes.
 java.util.List<SkeletonNode> SkeletonPath.getAllNodes()
          Get the list of all skeleton nodes on this path.
 java.util.Map<SkeletonNode,java.util.List<SkeletonPath>> Skeleton.getAllSkeletonPaths()
          Get all skeleton paths.
 java.util.List<SkeletonNode> SkeletonGraph.getAllVertexNeighbors(SkeletonNode node)
          Get all vertices in the graph directly connected to the specified vertex.
 java.util.Set<SkeletonNode> SkeletonGraph.getAllVertices()
          Get all vertices in this graph.
 java.util.List<SkeletonNode> SkeletonBranch.getNodes()
           
 

Methods in geometry.object with parameters of type SkeletonNode
 void SkeletonBranch.addNode(SkeletonNode node)
           
 void Skeleton.addPaths(java.util.List<SkeletonPath> paths, SkeletonNode endnode)
          add a list of paths to the skeleton's paths.
 boolean SkeletonGraph.addVertex(SkeletonNode node)
          Add a new vertex to the graph.
 boolean SkeletonNode.equals(SkeletonNode node)
          check if the current skeleton node is equal to the one specified as parameter.
 java.util.List<SkeletonNode> SkeletonGraph.getAllVertexNeighbors(SkeletonNode node)
          Get all vertices in the graph directly connected to the specified vertex.
 java.util.Set<SkeletonBranch> SkeletonGraph.getOutgoingEdges(SkeletonNode node)
          return the edges emanating from the specified node
 SkeletonPath SkeletonGraph.getShortestPath(SkeletonNode start, SkeletonNode end)
          Get the shortest path in the graph from the specified start node to the specified end node.
 SkeletonPath Skeleton.getSkeletonPathByEndnodes(SkeletonNode node1, SkeletonNode node2)
          get the skeleton path between the specified end nodes.
 java.util.List<SkeletonPath> Skeleton.getSkeletonPathsByEndnode(SkeletonNode node)
          Get a list of all skeleton paths emanating from the specified end node.The specified end node has to be the key to the path map to be a match.
 boolean SkeletonGraph.removeVertex(SkeletonNode node)
           
 void SkeletonBranch.setEndnode(SkeletonNode endnode)
           
 void SkeletonPath.setEndnode1(SkeletonNode endnode1)
          Set the skeleton path's first end node.
 void SkeletonPath.setEndnode2(SkeletonNode endnode2)
          Set the skeleton path's second end node.
 void SkeletonNode.setPrevious(SkeletonNode previous)
          get the predecessor of this skeleton node on the path.
 void SkeletonBranch.setStartnode(SkeletonNode startnode)
           
 

Method parameters in geometry.object with type arguments of type SkeletonNode
 void Skeleton.setAllEndnodes(java.util.List<SkeletonNode> endnodes)
          set the skeleton's endnodes.
 void SkeletonPath.setAllNodes(java.util.List<SkeletonNode> allNodes)
          Set all nodes on this skeleton path.
 void SkeletonBranch.setNodes(java.util.List<SkeletonNode> nodes)
           
 void Skeleton.setPaths(java.util.Map<SkeletonNode,java.util.List<SkeletonPath>> allPaths)
          set the skeleton's skeleton paths.
 

Constructors in geometry.object with parameters of type SkeletonNode
SkeletonPath(SkeletonNode endnode1, SkeletonNode endnode2)
          Constructor.
 

Uses of SkeletonNode in io.loader.load2D
 

Methods in io.loader.load2D that return SkeletonNode
private  SkeletonNode SkeletonParser2D.checkNeighborHood(java.awt.Point cp)
          check if a skeleton end node is in the 3x3 neighbor hood of the specified contour point.
 SkeletonNode NodeArea2D.cleanNodeArea()
           
 

Methods in io.loader.load2D that return types with arguments of type SkeletonNode
static java.util.List<SkeletonNode> NeighborSkeletonNodes2D.getNeighborSkeletonNodes(SkeletonNode sn, java.awt.image.BufferedImage bimg)
          return a list of all neighbor skeleton nodes.
protected  java.util.Map<SkeletonNode,java.util.List<SkeletonBranch>> SkeletonParser2D.sampleParts()
           
 

Methods in io.loader.load2D with parameters of type SkeletonNode
private static SkeletonBranch SampleParts2D.createPart(SkeletonNode startnode, SkeletonNode endnode, java.util.List<SkeletonNode> nodesOnPart)
          If an end node or junction node has been reached, this function can be used to create the part between the startnode and the current node.
static java.util.List<SkeletonNode> NeighborSkeletonNodes2D.getNeighborSkeletonNodes(SkeletonNode sn, java.awt.image.BufferedImage bimg)
          return a list of all neighbor skeleton nodes.
private  boolean SkeletonParser2D.isNeighborOf(java.awt.Point cp, SkeletonNode n)
          check if the specified skeleton node is in the 3x3 neighborhood of the specified contour point.
private static boolean SampleParts2D.isVisited(boolean[][] visited, SkeletonNode node)
          Test if the speicifed skeleton node has been visited.
private static void SampleParts2D.markAsVisited(boolean[][] visited, SkeletonNode node)
          mark the specified skeleton node as visited.
static java.util.List<SkeletonBranch> SampleParts2D.samplePartsPerStartNode(SkeletonNode startnode, ij.ImagePlus skeletonImage, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes)
          Sample all skeleton branches emanating from the specified startnode.
 

Method parameters in io.loader.load2D with type arguments of type SkeletonNode
private  void SkeletonParser2D.cleanJunctionNodes(java.util.List<SkeletonNode> junctionnodes)
          In some constellations, directly adjacent nodes are recognized as junction nodes.
private static SkeletonBranch SampleParts2D.createPart(SkeletonNode startnode, SkeletonNode endnode, java.util.List<SkeletonNode> nodesOnPart)
          If an end node or junction node has been reached, this function can be used to create the part between the startnode and the current node.
static java.util.List<SkeletonBranch> SampleParts2D.samplePartsPerStartNode(SkeletonNode startnode, ij.ImagePlus skeletonImage, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes)
          Sample all skeleton branches emanating from the specified startnode.
static java.util.List<SkeletonBranch> SampleParts2D.samplePartsPerStartNode(SkeletonNode startnode, ij.ImagePlus skeletonImage, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes)
          Sample all skeleton branches emanating from the specified startnode.
 

Uses of SkeletonNode in io.loader.load3D
 

Methods in io.loader.load3D that return SkeletonNode
 SkeletonNode NodeArea3D.cleanNodeArea()
           
 

Methods in io.loader.load3D that return types with arguments of type SkeletonNode
static java.util.List<SkeletonNode> NeighborSkeletonNodes3D.getNeighborSkeletonNodes(SkeletonNode sn, int[][][] thinningcube, double widthDim, double heightDim, double depthDim)
          Get a list of all skeleton neighbor nodes for the specified node by checking the 3x3x3 neighborhood of this voxel and creating a new skeleton node for each skeleton voxel found.
protected  java.util.Map<SkeletonNode,java.util.List<SkeletonBranch>> SkeletonParser3D.sampleParts()
           
 

Methods in io.loader.load3D with parameters of type SkeletonNode
private static SkeletonBranch SampleParts3D.createPart(SkeletonNode startnode, SkeletonNode endnode, java.util.List<SkeletonNode> nodesOnPart)
          If an end node or junction node has been reached, this function can be used to create the part between the startnode and the current node.
static java.util.List<SkeletonNode> NeighborSkeletonNodes3D.getNeighborSkeletonNodes(SkeletonNode sn, int[][][] thinningcube, double widthDim, double heightDim, double depthDim)
          Get a list of all skeleton neighbor nodes for the specified node by checking the 3x3x3 neighborhood of this voxel and creating a new skeleton node for each skeleton voxel found.
static boolean NeighborSkeletonNodes3D.isEdgeNeighbor(SkeletonNode n1, SkeletonNode n2)
          Check if two skeleton nodes are edge-connected.
static boolean NeighborSkeletonNodes3D.isSurfaceNeighbor(SkeletonNode n1, SkeletonNode n2)
          Check if two skeleton nodes are surface connected.
private static boolean SampleParts3D.isVisited(boolean[][][] visited, SkeletonNode node)
          Check if the specified node has already been visited.
private static void SampleParts3D.markAsVisited(boolean[][][] visited, SkeletonNode node)
          Mark the the specified node as visited.
static java.util.List<SkeletonBranch> SampleParts3D.samplePartsPerStartNode(SkeletonNode startnode, int[][][] thinningcube, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes, double widthDim, double heightDim, double depthDim)
          sample all skeleton parts emanating from the specified startnode which has to be a critical node, that is, either end node or junction node.
 

Method parameters in io.loader.load3D with type arguments of type SkeletonNode
private  void SkeletonParser3D.cleanJunctionNodes(java.util.List<SkeletonNode> junctionnodes, int[][][] thinningcube)
          Clean the list of junction nodes.
private static SkeletonBranch SampleParts3D.createPart(SkeletonNode startnode, SkeletonNode endnode, java.util.List<SkeletonNode> nodesOnPart)
          If an end node or junction node has been reached, this function can be used to create the part between the startnode and the current node.
static java.util.List<SkeletonBranch> SampleParts3D.samplePartsPerStartNode(SkeletonNode startnode, int[][][] thinningcube, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes, double widthDim, double heightDim, double depthDim)
          sample all skeleton parts emanating from the specified startnode which has to be a critical node, that is, either end node or junction node.
static java.util.List<SkeletonBranch> SampleParts3D.samplePartsPerStartNode(SkeletonNode startnode, int[][][] thinningcube, java.util.List<SkeletonNode> endnodes, java.util.List<SkeletonNode> junctionnodes, double widthDim, double heightDim, double depthDim)
          sample all skeleton parts emanating from the specified startnode which has to be a critical node, that is, either end node or junction node.
 

Uses of SkeletonNode in io.loader.shared
 

Fields in io.loader.shared with type parameters of type SkeletonNode
protected  java.util.List<SkeletonNode> SkeletonParser.allEndnodes
          list containing all skeleton end nodes
protected  java.util.List<SkeletonNode> SkeletonParser.allJunctionNodes
          list containing all skeleton junction nodes
protected  java.util.List<SkeletonNode> NodeArea.junctionNodes
          List of all found junction nodes, potentially containing redundant nodes.
 

Methods in io.loader.shared that return SkeletonNode
abstract  SkeletonNode NodeArea.cleanNodeArea()
          extract the prefered junction node from this node area.
 

Methods in io.loader.shared that return types with arguments of type SkeletonNode
protected abstract  java.util.Map<SkeletonNode,java.util.List<SkeletonBranch>> SkeletonParser.sampleParts()
          sample all SkeletonBranches emanating from each critical node.
 

Methods in io.loader.shared with parameters of type SkeletonNode
 void NodeArea.addNode(SkeletonNode node)
           
 boolean NodeArea.contains(SkeletonNode n)
          Test of this node area contains the specified skeleton node.
static double Preprocessor.getEmanatingBranchLength(SkeletonObject so, SkeletonNode endnode)
          Get the length of the skeleton branch emanating from the specified skeleton end node
 

Method parameters in io.loader.shared with type arguments of type SkeletonNode
static SkeletonGraph GraphBuilder.buildGraph(java.util.Map<SkeletonNode,java.util.List<SkeletonBranch>> allParts)
          Build a graph from the sampled parts.
 

Constructor parameters in io.loader.shared with type arguments of type SkeletonNode
NodeArea(java.util.List<SkeletonNode> nodes)
          Constructor.
 

Uses of SkeletonNode in utils
 

Methods in utils with parameters of type SkeletonNode
static boolean ListUtilities.contains(java.util.List<SkeletonNode> nodes, SkeletonNode node)
          Test if a list haystack contains a specified skeleton node needle.
 

Method parameters in utils with type arguments of type SkeletonNode
static boolean ListUtilities.contains(java.util.List<SkeletonNode> nodes, SkeletonNode node)
          Test if a list haystack contains a specified skeleton node needle.