|
STIRA
0.1
|
data structure for FFT manipulations More...
#include <FFTBand.h>
Public Member Functions | |
| FFTBand (ArrayGrid< double > *pGrid, bool isreal=true) | |
| Constructor: build a complex band initialized by a real-valued grid. More... | |
| FFTBand (ArrayGrid< std::complex< double > > *pGrid) | |
| Constructor: build a complex band initialized by a complex-valued grid. More... | |
| FFTBand (int width, int height, std::complex< double > initValue=std::complex< double >(0.0, 0.0)) | |
| Constructor: build a complex band initialized by zeros. More... | |
| FFTBand (FFTBand &otherFFTBand) | |
| Copy constructor. | |
| ~FFTBand () | |
| destructor | |
| FFTBand * | Clone () |
| clones the current band | |
| std::complex< double > | GetValue (int x, int y) const |
| Get a value from the complex band. More... | |
| void | SetValue (int x, int y, std::complex< double > complexValue) |
| Set a value in the complex band using a complex data type from STL. More... | |
| void | SetValue (int x, int y, double realValue, double imagValue) |
| Set a value in the complex band using two double representing the real and imaginary part of the complex number. More... | |
| int | GetWidth () const |
| Get width of data grid. | |
| int | GetHeight () const |
| Get height of data grid. | |
| void | ApplyForwardTransform () |
| Replaces the current FFTBand with a forward transformed one. | |
| void | ApplyInverseTransform () |
| Replaces the current FFTBand with an inverse transformed one. | |
| void | PointMirrorBand () |
| Mirrors the whole band around the center of the band Changes the original data structure (not creating a new one) | |
| ArrayGrid< double > * | ConvertToRealGrid () |
| creates a real-valued ArrayGrid with the real component of the complex values in this FFTBand | |
| ArrayGrid< double > * | ConvertToImaginaryGrid () |
| creates a real-valued ArrayGrid with the imaginary component of the complex values in this FFTBand | |
| ArrayGrid< std::complex< double > > * | ConvertToComplexGrid () |
| creates a complex-valued ArrayGrid with the complex values in this FFTBand | |
| void | ExportAbsImage (std::string fileName) |
| export abs of current FFTBand to a PGM file More... | |
| void | SwitchQuadrants () |
| switches upper left with lower right quadrant and lower left with upper right Changes the original data structure (not creating a new one) | |
| void | Conjugate () |
| changes all complex grid values in their complex conjugate values Changes the original data structure (not creating a new one) | |
| double | GetBandMaximum (FFTDataType type) |
| gets maximum value of real or imaginary components in the band More... | |
| double | GetBandMinimum (FFTDataType type) |
| gets minimum value of real or imaginary components in the band More... | |
| void | Multiply (FFTBand *other) |
| multiplies this FFTBand point by point with another FFTBand More... | |
| void | Multiply (ArrayGrid< double > *grid) |
| multiplies this FFTBand point by point with an ArrayGrid More... | |
| void | Multiply (std::complex< double > myFactor) |
| multiplies this FFTBand point by point with a real-valued factor More... | |
| void | Multiply (double myFactor) |
| multiplies this FFTBand point by point with a complex-valued factor More... | |
data structure for FFT manipulations
| stira::fouriertools::FFTBand::FFTBand | ( | ArrayGrid< double > * | pGrid, |
| bool | isreal = true |
||
| ) |
Constructor: build a complex band initialized by a real-valued grid.
| pGrid | grid to initialize this complex band with |
| isreal | flag if real-valued grid values should be used as the real components of the complex numbers (if false: use as imag components) |
References stira::imagedata::ArrayGrid< T >::GetHeight(), and stira::imagedata::ArrayGrid< T >::GetWidth().
| stira::fouriertools::FFTBand::FFTBand | ( | ArrayGrid< std::complex< double > > * | pGrid | ) |
Constructor: build a complex band initialized by a complex-valued grid.
| pGrid | grid to initialize this complex band with |
References stira::imagedata::ArrayGrid< T >::GetHeight(), and stira::imagedata::ArrayGrid< T >::GetWidth().
| stira::fouriertools::FFTBand::FFTBand | ( | int | width, |
| int | height, | ||
| std::complex< double > | initValue = std::complex< double >( 0.0, 0.0 ) |
||
| ) |
Constructor: build a complex band initialized by zeros.
| width | width of the band to construct |
| height | height of the band to construct |
| initValue | optional value to initialize this band with |
| void stira::fouriertools::FFTBand::ExportAbsImage | ( | std::string | fileName | ) |
export abs of current FFTBand to a PGM file
| fileName | name of PGM to export to |
References stira::imagedata::ArrayGrid< T >::SetValue(), and stira::imagedata::ArrayGrid< T >::SwitchQuadrants().
Referenced by stira::steerable::PyramidMaster< T >::ExtractB(), and stira::steerable::PyramidMaster< T >::ExtractB0().
| double stira::fouriertools::FFTBand::GetBandMaximum | ( | FFTDataType | type | ) |
gets maximum value of real or imaginary components in the band
| type | real or imaginary component |
| double stira::fouriertools::FFTBand::GetBandMinimum | ( | FFTDataType | type | ) |
gets minimum value of real or imaginary components in the band
| type | real or imaginary component |
| complex< double > stira::fouriertools::FFTBand::GetValue | ( | int | x, |
| int | y | ||
| ) | const |
Get a value from the complex band.
| x | x coordinate of the value to get |
| y | y coordinate of the value to get |
Referenced by stira::fouriertools::FFT::ApplyTransferFunction(), stira::fouriertools::FFT::ApplyTransferFunctionFFT(), stira::fouriertools::FFT::ComputePowerSpectrum(), stira::fouriertools::FFT::Convolve(), FFTBand(), Multiply(), PointMirrorBand(), stira::deconvolve::TikhonovMillerDeconvolve::Run(), stira::deconvolve::WienerDeconvolve::RunSingleband(), stira::steerable::PyramidMaster< T >::ViewTransferFunction(), stira::fouriertools::FFT::WriteFFTDataToPPM(), and stira::deconvolve::WienerDeconvolve::~WienerDeconvolve().
| void stira::fouriertools::FFTBand::Multiply | ( | FFTBand * | other | ) |
multiplies this FFTBand point by point with another FFTBand
| other | the other FFTBand |
References GetValue().
Referenced by stira::steerable::PyramidMaster< T >::ExtractB(), stira::steerable::PyramidMaster< T >::ExtractB0(), stira::steerable::PyramidMaster< T >::ReconstructB(), stira::steerable::PyramidMaster< T >::ReconstructB0(), and stira::steerable::PyramidMaster< T >::ReconstructL0().
| void stira::fouriertools::FFTBand::Multiply | ( | ArrayGrid< double > * | grid | ) |
multiplies this FFTBand point by point with an ArrayGrid
| grid | the ArrayGrid |
References stira::imagedata::ArrayGrid< T >::GetValue().
| void stira::fouriertools::FFTBand::Multiply | ( | std::complex< double > | myFactor | ) |
multiplies this FFTBand point by point with a real-valued factor
| myFactor | factor to multiply every value in the grid with |
| void stira::fouriertools::FFTBand::Multiply | ( | double | myFactor | ) |
multiplies this FFTBand point by point with a complex-valued factor
| myFactor | factor to multiply every value in the grid with |
| void stira::fouriertools::FFTBand::SetValue | ( | int | x, |
| int | y, | ||
| std::complex< double > | complexValue | ||
| ) |
Set a value in the complex band using a complex data type from STL.
| x | x coordinate of the value to set |
| y | y coordinate of the value to set |
| complexValue | the value to set |
Referenced by stira::fouriertools::FFT::ApplyTransferFunction(), stira::fouriertools::FFT::ApplyTransferFunctionFFT(), stira::fouriertools::FFT::Convolve(), stira::fouriertools::TransferFunctionGenerator::GenerateOrientedTransferFunction(), stira::fouriertools::TransferFunctionGenerator::HighFrequencyCrossMask(), stira::deconvolve::TikhonovMillerDeconvolve::Run(), stira::deconvolve::WienerDeconvolve::RunSingleband(), and stira::steerable::PyramidMaster< T >::SumFFTBands().
| void stira::fouriertools::FFTBand::SetValue | ( | int | x, |
| int | y, | ||
| double | realValue, | ||
| double | imagValue | ||
| ) |
Set a value in the complex band using two double representing the real and imaginary part of the complex number.
| x | x coordinate of the value to set |
| y | y coordinate of the value to set |
| realValue | real part of the complex number to set |
| imagValue | imaginary part of the complex number to set |
1.8.11