|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.stanford.rsl.konrad.filtering.ImageFilteringTool
edu.stanford.rsl.konrad.filtering.IndividualImageFilteringTool
edu.stanford.rsl.konrad.filtering.PoissonNoiseFilteringTool
edu.stanford.rsl.konrad.filtering.LogPoissonNoiseFilteringTool
public class LogPoissonNoiseFilteringTool
Applies Poisson noise to the input image as it would happen in the physical process (based on a monochromatic x-ray source).
The relation given the emitted photons by the source , the observed photons
, and the absorption
coefficients
in
along the ray segments
in
is given by Lambert-Beer's law:
.
We assume that the input data is in log domain, i.e. given as
in
as returned by a forward projection.
The data is converted to photon count domain
via application of the minus exponent transform.
Photon noise statistics are computed according to a Poisson distribution
where is assumed to be
for each pixel.
With the mean and standard deviation of the Poisson distribution being
and
respectively, the Signal-to-Noise-Ration (SNR) is
.
Hence, the more photons were observed, the better the SNR for the respective pixel.
The user
has to specify a photon count (e.g. 75000). This value will correspond to 0 in the log domain image.
Then the photon statistics are applied according to Poisson noise statistics.
In the final step the data is then transformed back to minus log domain to match the scaling of the original input data.
CUDAForwardProjector
,
Serialized FormConstructor Summary | |
---|---|
LogPoissonNoiseFilteringTool()
|
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 |
getPhotonCountMax()
|
java.lang.String |
getToolName()
returns the name of the actual tool which was used. |
boolean |
isDeviceDependent()
Cosine filtering depends on the projection geometry and is hence not device depdendent. |
void |
prepareForSerialization()
Sets all data objects in the serialized object to null which do not implement the Serializable interface. |
void |
setPhotonCountMax(double photonCountMax)
|
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 |
---|
public LogPoissonNoiseFilteringTool()
Method Detail |
---|
public double getPhotonCountMax()
public void setPhotonCountMax(double photonCountMax)
photonCountMax
- the photonCountMax to setpublic IndividualImageFilteringTool clone()
IndividualImageFilteringTool
clone
in class PoissonNoiseFilteringTool
public java.lang.String getToolName()
ImageFilteringTool
getToolName
in class PoissonNoiseFilteringTool
public ij.process.ImageProcessor applyToolToProcessor(ij.process.ImageProcessor imageProcessor) throws java.lang.Exception
IndividualImageFilteringTool
applyToolToProcessor
in class PoissonNoiseFilteringTool
imageProcessor
- the ImageProcessor
java.lang.Exception
public void prepareForSerialization()
SafeSerializable
prepareForSerialization
in interface SafeSerializable
prepareForSerialization
in class PoissonNoiseFilteringTool
public void configure() throws java.lang.Exception
GUIConfigurable
configure
in interface GUIConfigurable
configure
in class PoissonNoiseFilteringTool
java.lang.Exception
- may happenpublic java.lang.String getBibtexCitation()
Citeable
getBibtexCitation
in interface Citeable
getBibtexCitation
in class PoissonNoiseFilteringTool
public java.lang.String getMedlineCitation()
Citeable
getMedlineCitation
in interface Citeable
getMedlineCitation
in class PoissonNoiseFilteringTool
public boolean isDeviceDependent()
isDeviceDependent
in class PoissonNoiseFilteringTool
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |