public class ParkerWeightingTool extends IndividualImageFilteringTool
Constructor and Description |
---|
ParkerWeightingTool() |
Modifier and Type | Method and Description |
---|---|
Grid2D |
applyToolToImage(Grid2D imageProcessor)
Applies the tool to the given image processor.
|
IndividualImageFilteringTool |
clone()
All ImageFilteringTools need to be Cloneable in order to enable multiple processor usage.
|
double[] |
computeParkerWeights1D(double beta)
Returns the row weights for the given angle (in radians);
|
double[] |
computeParkerWeights1D(int projNum)
computes the set of Parker weights for the given projection
|
double |
computeScanRange()
computes the scan range of the scan, note that this is only valid if
the scan range is less or equal to 360 degrees
|
void |
configure()
Configures the object before execution
|
java.lang.String |
getBibtexCitation()
Returns the citation in bibTex format
|
int |
getDetectorWidth() |
java.lang.String |
getMedlineCitation()
Returns the citation in Medline format
|
int |
getNumberOfProjections() |
double |
getPixelDimensionX() |
double[] |
getPrimaryAngles() |
double |
getSourceToDetectorDistance() |
java.lang.String |
getToolName()
returns the name of the actual tool which was used.
|
boolean |
isDeviceDependent()
Is used to compensate ambiguities caused by double rays.
|
static double |
linearWeight(double alpha,
double beta,
double delta)
Implements a linear weighting which complies with
weight(alpha, beta) + weight (- alpha, beta - Math.PI + (2*alpha)) = 1
(Sum of the weight for opposing rays is 1).
|
double[] |
normalizePrimaryAngleRange(double[] angles) |
void |
setConfiguration(Configuration config) |
void |
setDetectorWidth(int detectorWidth) |
void |
setNumberOfProjections(int numberOfProjections) |
void |
setPixelDimensionX(double pixelDimensionX) |
void |
setPrimaryAngles(double[] primaryAngles) |
void |
setSourceToDetectorDistance(double sourceToDetectorDistance) |
getFilteredImage, getImageIndex, getProcessName, prepareForSerialization, run, setImageIndex, setImageProcessor, setLatch
getFilterTools, isConfigured, setConfigured, toString
public int getNumberOfProjections()
public void setNumberOfProjections(int numberOfProjections)
public int getDetectorWidth()
public void setDetectorWidth(int detectorWidth)
public double getPixelDimensionX()
public void setPixelDimensionX(double pixelDimensionX)
public double getSourceToDetectorDistance()
public void setSourceToDetectorDistance(double sourceToDetectorDistance)
public double[] getPrimaryAngles()
public void setPrimaryAngles(double[] primaryAngles)
public double[] normalizePrimaryAngleRange(double[] angles)
public void setConfiguration(Configuration config)
public IndividualImageFilteringTool clone()
IndividualImageFilteringTool
clone
in class IndividualImageFilteringTool
public java.lang.String getToolName()
ImageFilteringTool
getToolName
in class ImageFilteringTool
public double computeScanRange()
public double[] computeParkerWeights1D(int projNum)
projNum
- the projection numberpublic double[] computeParkerWeights1D(double beta)
beta
- the anglepublic static double linearWeight(double alpha, double beta, double delta)
alpha
- the angle of the row element within the interval [-delta,delta]beta
- the current rotation angle of the source detector pair [0, Math.PI + 2delta]delta
- the half fan angle;public Grid2D applyToolToImage(Grid2D imageProcessor)
applyToolToImage
in class IndividualImageFilteringTool
imageProcessor
- the ImageProcessorpublic void configure() throws java.lang.Exception
GUIConfigurable
java.lang.Exception
- may happenpublic java.lang.String getBibtexCitation()
Citeable
public java.lang.String getMedlineCitation()
Citeable
public boolean isDeviceDependent()
isDeviceDependent
in class ImageFilteringTool