Class FractalBoxCounter

java.lang.Object
ij.plugin.filter.FractalBoxCounter
All Implemented Interfaces:
PlugInFilter

public class FractalBoxCounter
extends Object
implements PlugInFilter
Calculate the so-called "capacity" fractal dimension. The algorithm is called, in fractal parlance, the "box counting" method. In the simplest terms, the routine counts the number of boxes of a given size needed to cover a one pixel wide, binary (black on white) border. The procedure is repeated for boxes that are 2 to 64 pixels wide. The output consists of two columns labeled "size" and "count". A plot is generated with the log of size on the x-axis and the log of count on the y-axis and the data is fitted with a straight line. The slope (S) of the line is the negative of the fractal dimension, i.e. D=-S. A full description of the technique can be found in T. G. Smith, Jr., G. D. Lange and W. B. Marks, Fractal Methods and Results in Cellular Morphology, which appeared in J. Neurosci. Methods, 69:1123-126, 1996. --- 12/Jun/2006 G. Landini added "set is white" option, otherwise the plugin assumes that the object is always low-dimensional (i.e. the phase with the smallest number of pixels). Now it works fine for sets with D near to 2.0
  • Constructor Details

  • Method Details

    • setup

      public int setup​(String arg, ImagePlus imp)
      Description copied from interface: PlugInFilter
      This method is called once when the filter is loaded. 'arg', which may be blank, is the argument specified for this plugin in IJ_Props.txt or in the plugins.config file of a jar archive containing the plugin. 'imp' is the currently active image. This method should return a flag word that specifies the filters capabilities.

      For Plugin-filters specifying the PlugInFilter.FINAL_PROCESSING flag, the setup method will be called again, this time with arg = "final" after all other processing is done.

      Specified by:
      setup in interface PlugInFilter
    • run

      public void run​(ImageProcessor ip)
      Description copied from interface: PlugInFilter
      Filters use this method to process the image. If the PlugInFilter.DOES_STACKS flag was set, it is called for each slice in a stack. With PlugInFilter.CONVERT_TO_FLOAT, the filter is called with the image data converted to a FloatProcessor (3 times per image for RGB images). ImageJ will lock the image before calling this method and unlock it when the filter is finished. For PlugInFilters specifying the PlugInFilter.NO_IMAGE_REQUIRED flag and not the PlugInFilter.DONE flag, run(ip) is called once with the argument null.
      Specified by:
      run in interface PlugInFilter
    • s2ints

      public int[] s2ints​(String s)
      Breaks the specified string into an array of ints. Returns null if there is an error.