edu.stanford.rsl.konrad.filtering
Class DynamicDensityOptimizationScatterCorrectionTool

java.lang.Object
  extended by edu.stanford.rsl.konrad.filtering.ImageFilteringTool
      extended by edu.stanford.rsl.konrad.filtering.IndividualImageFilteringTool
          extended by edu.stanford.rsl.konrad.filtering.DynamicDensityOptimizationScatterCorrectionTool
All Implemented Interfaces:
Citeable, GUIConfigurable, SafeSerializable, NamedParallelizableRunnable, ParallelizableRunnable, java.io.Serializable, java.lang.Cloneable, java.lang.Runnable

public class DynamicDensityOptimizationScatterCorrectionTool
extends IndividualImageFilteringTool

See Also:
Serialized Form

Constructor Summary
DynamicDensityOptimizationScatterCorrectionTool()
           
 
Method Summary
 ij.process.ImageProcessor applyToolToProcessor(ij.process.ImageProcessor imageProcessor)
          Is called in every thread to apply the tool to an individual ImageProcessor
 IndividualImageFilteringTool clone()
          All ImageFilteringTools need to be Cloneable in order to enable multiple processor usage.
 void configure()
          Configures the object before execution
 java.lang.String getBibtexCitation()
          Returns the citation in bibTex format
 java.lang.String getMedlineCitation()
          Returns the citation in Medline format
 double getSigma()
           
 java.lang.String getToolName()
          returns the name of the actual tool which was used.
 double getWeight()
           
 boolean isDeviceDependent()
          Scatter correction is device dependent.
 void prepareForSerialization()
          Sets all data objects in the serialized object to null which do not implement the Serializable interface.
 void setSigma(double sigma)
           
 void setWeight(double weight)
           
 void sharpenFloat(ij.process.FloatProcessor fp, double sigma, float weight)
          Dynamic Density Optimization of a float image.
 
Methods inherited from class edu.stanford.rsl.konrad.filtering.IndividualImageFilteringTool
applyToolToProcessor, getFilteredImageProcessor, getImageIndex, getProcessName, run, setImageIndex, setImageProcessor, setLatch
 
Methods inherited from class edu.stanford.rsl.konrad.filtering.ImageFilteringTool
getFilterTools, isConfigured, setConfigured, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DynamicDensityOptimizationScatterCorrectionTool

public DynamicDensityOptimizationScatterCorrectionTool()
Method Detail

prepareForSerialization

public void prepareForSerialization()
Description copied from interface: SafeSerializable
Sets all data objects in the serialized object to null which do not implement the Serializable interface. It can also be used to save space in the serialized form. Configuration parameters are preserved. Processing data is discarded.

Specified by:
prepareForSerialization in interface SafeSerializable
Overrides:
prepareForSerialization in class IndividualImageFilteringTool

sharpenFloat

public void sharpenFloat(ij.process.FloatProcessor fp,
                         double sigma,
                         float weight)
Dynamic Density Optimization of a float image. 'fp' must have a valid snapshot. Almost identical to sharpenFloat in UnsharpMask.java from ImageJ. Unsharp mask is added instead of subtracted as the filter is applied in log domain.

Parameters:
fp - the Processor to be masked
sigma - the standard deviation
weight - the weight of the mask [0,1]

applyToolToProcessor

public ij.process.ImageProcessor applyToolToProcessor(ij.process.ImageProcessor imageProcessor)
Description copied from class: IndividualImageFilteringTool
Is called in every thread to apply the tool to an individual ImageProcessor

Specified by:
applyToolToProcessor in class IndividualImageFilteringTool
Parameters:
imageProcessor - the ImageProcessor
Returns:
the filtered instance of the ImageProcessor

clone

public IndividualImageFilteringTool clone()
Description copied from class: IndividualImageFilteringTool
All ImageFilteringTools need to be Cloneable in order to enable multiple processor usage.

Specified by:
clone in class IndividualImageFilteringTool

getToolName

public java.lang.String getToolName()
Description copied from class: ImageFilteringTool
returns the name of the actual tool which was used.

Specified by:
getToolName in class ImageFilteringTool
Returns:
the name of the tool as string.

getBibtexCitation

public java.lang.String getBibtexCitation()
Description copied from interface: Citeable
Returns the citation in bibTex format

Returns:
citation as String

getMedlineCitation

public java.lang.String getMedlineCitation()
Description copied from interface: Citeable
Returns the citation in Medline format

Returns:
citation as String

configure

public void configure()
               throws java.lang.Exception
Description copied from interface: GUIConfigurable
Configures the object before execution

Throws:
java.lang.Exception - may happen

isDeviceDependent

public boolean isDeviceDependent()
Scatter correction is device dependent.

Specified by:
isDeviceDependent in class ImageFilteringTool
Returns:
true if the method is device dependent.

getSigma

public double getSigma()
Returns:
the sigma

setSigma

public void setSigma(double sigma)
Parameters:
sigma - the sigma to set

getWeight

public double getWeight()
Returns:
the weight

setWeight

public void setWeight(double weight)
Parameters:
weight - the weight to set