edu.stanford.rsl.konrad.reconstruction
Class ReconstructionFilter

java.lang.Object
  extended by edu.stanford.rsl.konrad.filtering.ImageFilteringTool
      extended by edu.stanford.rsl.konrad.filtering.multiprojection.MultiProjectionFilter
          extended by edu.stanford.rsl.konrad.reconstruction.ReconstructionFilter
All Implemented Interfaces:
Citeable, GUIConfigurable, SafeSerializable, ProjectionSink, java.io.Serializable, java.lang.Cloneable, java.lang.Runnable
Direct Known Subclasses:
FBPReconstructionFilter, SimpleIterativeReconstruction, SuperShortScanBackprojection

public abstract class ReconstructionFilter
extends MultiProjectionFilter

All reconstruction algorithms are based on the reconstruction filter. The reconstruction filter is the abstract class that gives the general outline of any reconstruction algorithm.

Author:
akmaier
See Also:
Serialized Form

Constructor Summary
ReconstructionFilter()
           
 
Method Summary
 void applyHounsfieldScaling()
          applies the Hounsfield scaling as defined in the current global configuration.
 Trajectory getGeometry()
           
 void initializeProjectionVolume()
          creates an empty projection volume.
 void prepareForSerialization()
          Sets all data objects in the serialized object to null which do not implement the Serializable interface.
 void setProjectionVolume(Grid3D projectionVolume)
          Used to set the projection volume.
 void updateVolume(int i, int j, int k, double increment)
          updates the projection volume.
 
Methods inherited from class edu.stanford.rsl.konrad.filtering.multiprojection.MultiProjectionFilter
close, feedFilter, getContext, getName, process, run, setContext, setShowStatus, setSink, start
 
Methods inherited from class edu.stanford.rsl.konrad.filtering.ImageFilteringTool
clone, getFilterTools, getToolName, isConfigured, isDeviceDependent, setConfigured, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.stanford.rsl.apps.gui.GUIConfigurable
configure
 
Methods inherited from interface edu.stanford.rsl.apps.gui.Citeable
getBibtexCitation, getMedlineCitation
 

Constructor Detail

ReconstructionFilter

public ReconstructionFilter()
Method Detail

getGeometry

public Trajectory getGeometry()

updateVolume

public void updateVolume(int i,
                         int j,
                         int k,
                         double increment)
updates the projection volume. Note that direct access to pixels is much faster than accessing the image data with getProcessor(), if the data type is known.

Parameters:
i - x pixel entry number
j - y pixel entry number
k - z pixel entry number
increment - the value to add.

setProjectionVolume

public void setProjectionVolume(Grid3D projectionVolume)
Used to set the projection volume. This is used in "SubVolumeBackprojector" in order to reconstruct parts of the volume in a parallel manner. Note that projection volumes should be of type FloatProcessor

Parameters:
projectionVolume - the volume

initializeProjectionVolume

public void initializeProjectionVolume()
creates an empty projection volume.


applyHounsfieldScaling

public void applyHounsfieldScaling()
applies the Hounsfield scaling as defined in the current global configuration. (Calls Configuration.getGlobalConfiguration().getHounsfieldScaling()).


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 MultiProjectionFilter