Class OneMinusErf

java.lang.Object
sc.fiji.snt.tracing.cost.OneMinusErf
All Implemented Interfaces:
Cost

public class OneMinusErf extends Object implements Cost
A cost function inspired by an A* search implementation in the Janelia Workstation, where the cost of moving to a new voxel is given by the complementary error function 1 - erf(z), where

erf(x) is the Error Function

z is the Standard Score of the voxel intensity at the new point, given the intensity statistics of the underlying image

Author:
Cameron Arshadi
  • Constructor Details

    • OneMinusErf

      public OneMinusErf(double max, double average, double standardDeviation)
      Parameters:
      max - the maximum intensity value of the image, used to compute the minimum step cost
      average - the average intensity value of the image, used to compute the intensity z-score
      standardDeviation - the standard deviation of the intensity values of the image, used to compute the intensity z-score
  • Method Details

    • costMovingTo

      public double costMovingTo(double valueAtNewPoint)
      Specified by:
      costMovingTo in interface Cost
    • setZFudge

      public void setZFudge(double zFudge)
      Scale factor for intensity z-score. Values less than 1 help numerically distinguish very bright voxels, and will cause more nodes to be explored. Default is 1.0.
      Parameters:
      zFudge - the z-score is post-multiplied by this value
    • getZFudge

      public double getZFudge()
    • zScore

      protected double zScore(double valueAtNewPoint)
    • minStepCost

      public double minStepCost()
      Specified by:
      minStepCost in interface Cost