Openholo  v1.1
Open Source Digital Holographic Library
ophSigCH Class Reference

#include <ophSigCH.h>

Inheritance diagram for ophSigCH:
Collaboration diagram for ophSigCH:

Public Member Functions

 ophSigCH (void)
 Constructor. More...
 
bool setCHparam (vector< Real > &z, int maxIter, double tau, double tolA, int tvIter)
 
bool runCH (int complexHidx)
 
bool saveNumRec (const char *fname)
 
bool readConfig (const char *fname)
 
bool loadCHtemp (const char *real, const char *imag, uint8_t bitpixel)
 
matrix< Complex< Real > > propagationHoloAS (matrix< Complex< Real >> complexH, float depth)
 
 ophSigCH (void)
 Constructor. More...
 
bool setCHparam (vector< Real > &z, int maxIter, double tau, double tolA, int tvIter)
 
bool runCH (int complexHidx)
 
bool saveNumRec (const char *fname)
 
bool readConfig (const char *fname)
 
bool loadCHtemp (const char *real, const char *imag, uint8_t bitpixel)
 
matrix< Complex< Real > > propagationHoloAS (matrix< Complex< Real >> complexH, float depth)
 
- Public Member Functions inherited from ophSig
 ophSig (void)
 Constructor. More...
 
bool load (const char *real, const char *imag)
 Load bmp or bin file. More...
 
bool save (const char *real, const char *imag)
 Save data as bmp or bin file. More...
 
bool save (const char *real)
 
bool loadAsOhc (const char *fname)
 Load data as ohc file. More...
 
bool saveAsOhc (const char *fname)
 Save data as ohc file. More...
 
template<typename T >
void linInterp (vector< T > &X, matrix< Complex< T >> &src, vector< T > &Xq, matrix< Complex< T >> &dst)
 Linear interpolation. More...
 
template<typename T >
vector< T > linspace (T first, T last, int len)
 Generate linearly spaced vector. More...
 
template<typename T >
void absMat (matrix< Complex< T >> &src, matrix< T > &dst)
 Function for extracts Complex absolute value. More...
 
template<typename T >
void absMat (matrix< T > &src, matrix< T > &dst)
 Function for extracts real absolute value. More...
 
template<typename T >
void angleMat (matrix< Complex< T >> &src, matrix< T > &dst)
 Function for extracts Complex phase value. More...
 
template<typename T >
void conjMat (matrix< Complex< T >> &src, matrix< Complex< T >> &dst)
 Function for extracts Complex conjugate value. More...
 
template<typename T >
void expMat (matrix< Complex< T >> &src, matrix< Complex< T >> &dst)
 Function for extracts exponent e(x), where x is complex number. More...
 
template<typename T >
void expMat (matrix< T > &src, matrix< T > &dst)
 Function for extracts exponent e(x), where x is real number. More...
 
template<typename T >
void meanOfMat (matrix< T > &src, T &dst)
 Function for extracts mean of matrix. More...
 
Real maxOfMat (matrix< Real > &src)
 Function for extracts maximum of matrix , where matrix is real number. More...
 
Complex< RealmaxOfMat (matrix< Complex< Real >> &src)
 Function for extracts maximum of matrix , where matrix is complex number. More...
 
Real minOfMat (matrix< Real > &src)
 Function for extracts minimum of matrix , where matrix is real number. More...
 
Complex< RealminOfMat (matrix< Complex< Real >> &src)
 Function for extracts minimum of matrix , where matrix is complex number. More...
 
void fftShift (matrix< Complex< Real >> &src, matrix< Complex< Real >> &dst)
 Shift zero-frequency component to center of spectrum. More...
 
template<typename T >
void fft1 (matrix< Complex< T >> &src, matrix< Complex< T >> &dst, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Function for Fast Fourier transform 1D. More...
 
template<typename T >
void fft2 (matrix< Complex< T >> &src, matrix< Complex< T >> &dst, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Function for Fast Fourier transform 2D. More...
 
bool readConfig (const char *fname)
 Function for Read parameter. More...
 
void Parameter_Set (int nx, int ny, double width, double height, double NA)
 
void wavelength_Set (double wavelength)
 
void focal_length_Set (double red, double green, double blue, double rad)
 
void Data_output (uchar *data, int pos, int bitpixel)
 
void Wavenumber_output (int &wavenumber)
 
bool sigConvertOffaxis (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram. More...
 
bool cvtOffaxis_CPU (Real angleX, Real angleY)
 
void cvtOffaxis_GPU (Real angleX, Real angleY)
 
bool sigConvertHPO (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram. More...
 
bool sigConvertCAC (double red, double green, double blue)
 Function for Chromatic aberration compensation filter. More...
 
bool propagationHolo (float depth)
 Function for propagation hologram (class data) More...
 
OphComplexField propagationHolo (OphComplexField complexH, float depth)
 Function for propagation hologram. More...
 
double sigGetParamAT ()
 Extraction of distance parameter using axis transfomation. More...
 
double sigGetParamSF (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions. More...
 
void setMode (bool is_CPU)
 Function for select device. More...
 
void cField2Buffer (matrix< Complex< Real >> &src, Complex< Real > **dst, int nx, int ny)
 Function for move data from matrix<Complex<Real>> to Complex<Real> More...
 
void ColorField2Buffer (matrix< Complex< Real >> &src, Complex< Real > **dst, int nx, int ny)
 Function for move Color data from matrix<Complex<Real>> to Complex<Real> More...
 
bool getComplexHFromPSDH (const char *fname0, const char *fname90, const char *fname180, const char *fname270)
 Extraction of complex field from 4 phase shifted interference patterns. More...
 
bool getComplexHFrom3ArbStepPSDH (const char *f0, const char *f1, const char *f2, const char *fOI, const char *fRI, int nIter)
 Extraction of complex field from 3 phase shifted interference patterns with arbitrary unknown shifts. More...
 
 ophSig (void)
 Constructor. More...
 
bool load (const char *real, const char *imag)
 Load bmp or bin file. More...
 
bool save (const char *real, const char *imag)
 Save data as bmp or bin file. More...
 
bool save (const char *real)
 
bool loadAsOhc (const char *fname)
 Load data as ohc file. More...
 
bool saveAsOhc (const char *fname)
 Save data as ohc file. More...
 
template<typename T >
void linInterp (vector< T > &X, matrix< Complex< T >> &src, vector< T > &Xq, matrix< Complex< T >> &dst)
 Linear interpolation. More...
 
template<typename T >
vector< T > linspace (T first, T last, int len)
 Generate linearly spaced vector. More...
 
template<typename T >
void absMat (matrix< Complex< T >> &src, matrix< T > &dst)
 Function for extracts Complex absolute value. More...
 
template<typename T >
void absMat (matrix< T > &src, matrix< T > &dst)
 Function for extracts real absolute value. More...
 
template<typename T >
void angleMat (matrix< Complex< T >> &src, matrix< T > &dst)
 Function for extracts Complex phase value. More...
 
template<typename T >
void conjMat (matrix< Complex< T >> &src, matrix< Complex< T >> &dst)
 Function for extracts Complex conjugate value. More...
 
template<typename T >
void expMat (matrix< Complex< T >> &src, matrix< Complex< T >> &dst)
 Function for extracts exponent e(x), where x is complex number. More...
 
template<typename T >
void expMat (matrix< T > &src, matrix< T > &dst)
 Function for extracts exponent e(x), where x is real number. More...
 
template<typename T >
void meanOfMat (matrix< T > &src, T &dst)
 Function for extracts mean of matrix. More...
 
Real maxOfMat (matrix< Real > &src)
 Function for extracts maximum of matrix , where matrix is real number. More...
 
Complex< RealmaxOfMat (matrix< Complex< Real >> &src)
 Function for extracts maximum of matrix , where matrix is complex number. More...
 
Real minOfMat (matrix< Real > &src)
 Function for extracts minimum of matrix , where matrix is real number. More...
 
Complex< RealminOfMat (matrix< Complex< Real >> &src)
 Function for extracts minimum of matrix , where matrix is complex number. More...
 
void fftShift (matrix< Complex< Real >> &src, matrix< Complex< Real >> &dst)
 Shift zero-frequency component to center of spectrum. More...
 
template<typename T >
void fft1 (matrix< Complex< T >> &src, matrix< Complex< T >> &dst, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Function for Fast Fourier transform 1D. More...
 
template<typename T >
void fft2 (matrix< Complex< T >> &src, matrix< Complex< T >> &dst, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Function for Fast Fourier transform 2D. More...
 
bool readConfig (const char *fname)
 Function for Read parameter. More...
 
void Parameter_Set (int nx, int ny, double width, double height, double NA)
 
void wavelength_Set (double wavelength)
 
void focal_length_Set (double red, double green, double blue, double rad)
 
void Data_output (uchar *data, int pos, int bitpixel)
 
void Wavenumber_output (int &wavenumber)
 
bool sigConvertOffaxis (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram. More...
 
bool cvtOffaxis_CPU (Real angleX, Real angleY)
 
void cvtOffaxis_GPU (Real angleX, Real angleY)
 
bool sigConvertHPO (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram. More...
 
bool sigConvertCAC (double red, double green, double blue)
 Function for Chromatic aberration compensation filter. More...
 
bool propagationHolo (float depth)
 Function for propagation hologram (class data) More...
 
OphComplexField propagationHolo (OphComplexField complexH, float depth)
 Function for propagation hologram. More...
 
double sigGetParamAT ()
 Extraction of distance parameter using axis transfomation. More...
 
double sigGetParamSF (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions. More...
 
void setMode (bool is_CPU)
 Function for select device. More...
 
void cField2Buffer (matrix< Complex< Real >> &src, Complex< Real > **dst, int nx, int ny)
 Function for move data from matrix<Complex<Real>> to Complex<Real> More...
 
void ColorField2Buffer (matrix< Complex< Real >> &src, Complex< Real > **dst, int nx, int ny)
 Function for move Color data from matrix<Complex<Real>> to Complex<Real> More...
 
bool getComplexHFromPSDH (const char *fname0, const char *fname90, const char *fname180, const char *fname270)
 Extraction of complex field from 4 phase shifted interference patterns. More...
 
bool getComplexHFrom3ArbStepPSDH (const char *f0, const char *f1, const char *f2, const char *fOI, const char *fRI, int nIter)
 Extraction of complex field from 3 phase shifted interference patterns with arbitrary unknown shifts. More...
 
- Public Member Functions inherited from Openholo
 Openholo (void)
 Constructor. More...
 
virtual bool saveAsImg (const char *fname, uint8_t bitsperpixel, uchar *src, int width, int height)
 Function for creating image files. More...
 
virtual ucharloadAsImg (const char *fname)
 Function for loading image files. More...
 
Complex< Real > ** getComplexField (void)
 Function for getting the complex field. More...
 
OphConfiggetContext (void)
 Function for getting the current context. More...
 
void setPixelNumber (ivec2 n)
 Function for setting the output resolution. More...
 
void setPixelNumber (int width, int height)
 
void setPixelPitch (vec2 p)
 Function for setting the output pixel pitch. More...
 
void setPixelPitch (Real pitchX, Real pitchY)
 
void setWaveLength (Real w, const uint idx=0)
 Function for setting the wave length. More...
 
void setMergeImage (bool bMerge)
 
void setWaveNum (int nNum)
 
 Openholo (void)
 Constructor. More...
 
virtual bool saveAsImg (const char *fname, uint8_t bitsperpixel, uchar *src, int width, int height)
 Function for creating image files. More...
 
virtual ucharloadAsImg (const char *fname)
 Function for loading image files. More...
 
Complex< Real > ** getComplexField (void)
 Function for getting the complex field. More...
 
OphConfiggetContext (void)
 Function for getting the current context. More...
 
void setPixelNumber (ivec2 n)
 Function for setting the output resolution. More...
 
void setPixelNumber (int width, int height)
 
void setPixelPitch (vec2 p)
 Function for setting the output pixel pitch. More...
 
void setPixelPitch (Real pitchX, Real pitchY)
 
void setWaveLength (Real w, const uint idx=0)
 Function for setting the wave length. More...
 
void setMergeImage (bool bMerge)
 
void setWaveNum (int nNum)
 
- Public Member Functions inherited from Base
 Base (void)
 Constructor. More...
 
unsigned long addRef (void)
 If referenced this(Base's child, not abstract class) instance, must call this method. More...
 
unsigned long release (void)
 Call release() when reference is finished. More...
 
 Base (void)
 Constructor. More...
 
unsigned long addRef (void)
 If referenced this(Base's child, not abstract class) instance, must call this method. More...
 
unsigned long release (void)
 Call release() when reference is finished. More...
 

Protected Member Functions

virtual ~ophSigCH (void)=default
 
void tvdenoise (matrix< Real > &input, double lam, int iters, matrix< Real > &output)
 
double tvnorm (matrix< Real > &input)
 
void c2ri (matrix< Complex< Real >> &complexinput, matrix< Real > &realimagoutput)
 
void ri2c (matrix< Real > &realimaginput, matrix< Complex< Real >> &complexoutput)
 
void volume2plane (matrix< Real > &realimagvolumeinput, vector< Real > z, matrix< Real > &realimagplaneoutput)
 
void plane2volume (matrix< Real > &realimagplaneinput, vector< Real > z, matrix< Real > &realimagplaneoutput)
 
void convert3Dto2D (matrix< Complex< Real >> *complex3Dinput, int nz, matrix< Complex< Real >> &complex2Doutput)
 
void convert2Dto3D (matrix< Complex< Real >> &complex2Dinput, int nz, matrix< Complex< Real >> *complex3Doutput)
 
void twist (matrix< Real > &realimagplaneinput, matrix< Real > &realimagvolumeoutput)
 
double matrixEleSquareSum (matrix< Real > &input)
 
virtual ~ophSigCH (void)=default
 
void tvdenoise (matrix< Real > &input, double lam, int iters, matrix< Real > &output)
 
double tvnorm (matrix< Real > &input)
 
void c2ri (matrix< Complex< Real >> &complexinput, matrix< Real > &realimagoutput)
 
void ri2c (matrix< Real > &realimaginput, matrix< Complex< Real >> &complexoutput)
 
void volume2plane (matrix< Real > &realimagvolumeinput, vector< Real > z, matrix< Real > &realimagplaneoutput)
 
void plane2volume (matrix< Real > &realimagplaneinput, vector< Real > z, matrix< Real > &realimagplaneoutput)
 
void convert3Dto2D (matrix< Complex< Real >> *complex3Dinput, int nz, matrix< Complex< Real >> &complex2Doutput)
 
void convert2Dto3D (matrix< Complex< Real >> &complex2Dinput, int nz, matrix< Complex< Real >> *complex3Doutput)
 
void twist (matrix< Real > &realimagplaneinput, matrix< Real > &realimagvolumeoutput)
 
double matrixEleSquareSum (matrix< Real > &input)
 
- Protected Member Functions inherited from ophSig
virtual ~ophSig (void)=default
 
virtual void ophFree (void)
 Pure virtual function for override in child classes. More...
 
bool sigConvertOffaxis_CPU (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram by using CPU. More...
 
bool sigConvertOffaxis_GPU (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram by using GPU. More...
 
bool sigConvertHPO_CPU (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram by using CPU. More...
 
bool sigConvertHPO_GPU (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram by using GPU. More...
 
bool sigConvertCAC_CPU (double red, double green, double blue)
 Function for Chromatic aberration compensation filter by using CPU . More...
 
bool sigConvertCAC_GPU (double red, double green, double blue)
 Function for Chromatic aberration compensation filter by using GPU. More...
 
double sigGetParamAT_CPU ()
 Extraction of distance parameter using axis transfomation by using CPU. More...
 
double sigGetParamAT_GPU ()
 Extraction of distance parameter using axis transfomation by using GPU. More...
 
double sigGetParamSF_CPU (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions by using CPU. More...
 
double sigGetParamSF_GPU (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions by using GPU. More...
 
bool propagationHolo_CPU (float depth)
 Function for propagation hologram by using CPU. More...
 
bool propagationHolo_GPU (float depth)
 Function for propagation hologram by using GPU. More...
 
bool Color_propagationHolo_GPU (float depth)
 
virtual ~ophSig (void)=default
 
virtual void ophFree (void)
 Pure virtual function for override in child classes. More...
 
bool sigConvertOffaxis_CPU (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram by using CPU. More...
 
bool sigConvertOffaxis_GPU (Real angleX, Real angleY)
 Function for Convert complex hologram to off-axis hologram by using GPU. More...
 
bool sigConvertHPO_CPU (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram by using CPU. More...
 
bool sigConvertHPO_GPU (Real depth, Real_t redRate)
 Function for convert complex hologram to horizontal parallax only hologram by using GPU. More...
 
bool sigConvertCAC_CPU (double red, double green, double blue)
 Function for Chromatic aberration compensation filter by using CPU . More...
 
bool sigConvertCAC_GPU (double red, double green, double blue)
 Function for Chromatic aberration compensation filter by using GPU. More...
 
double sigGetParamAT_CPU ()
 Extraction of distance parameter using axis transfomation by using CPU. More...
 
double sigGetParamAT_GPU ()
 Extraction of distance parameter using axis transfomation by using GPU. More...
 
double sigGetParamSF_CPU (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions by using CPU. More...
 
double sigGetParamSF_GPU (float zMax, float zMin, int sampN, float th)
 Extraction of distance parameter using sharpness functions by using GPU. More...
 
bool propagationHolo_CPU (float depth)
 Function for propagation hologram by using CPU. More...
 
bool propagationHolo_GPU (float depth)
 Function for propagation hologram by using GPU. More...
 
bool Color_propagationHolo_GPU (float depth)
 
- Protected Member Functions inherited from Openholo
virtual ~Openholo (void)=0
 Destructor. More...
 
bool checkExtension (const char *fname, const char *ext)
 Functions for extension checking. More...
 
bool loadAsImgUpSideDown (const char *fname, uchar *dst)
 Function for loading image files | Output image data upside down. More...
 
bool getImgSize (int &w, int &h, int &bytesperpixel, const char *fname)
 Function for getting the image size. More...
 
void imgScaleBilinear (uchar *src, uchar *dst, int w, int h, int neww, int newh, int channels=1)
 Function for change image size. More...
 
void ImageRotation (double rotate, uchar *src, uchar *dst, int w, int h, int channels)
 
void convertToFormatGray8 (uchar *src, uchar *dst, int w, int h, int bytesperpixel)
 Function for convert image format to gray8. More...
 
void fft1 (int n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 1-dimension operations inside Openholo. More...
 
void fft2 (ivec2 n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 2-dimension operations inside Openholo. More...
 
void fft3 (ivec3 n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 3-dimension operations inside Openholo. More...
 
void fftExecute (Complex< Real > *out, bool bReverse=false)
 Execution functions to be called after fft1, fft2, and fft3. More...
 
void fftFree (void)
 
void fftwShift (Complex< Real > *src, Complex< Real > *dst, int nx, int ny, int type, bool bNormalized=false)
 Convert data from the spatial domain to the frequency domain using 2D FFT on CPU. More...
 
void fftShift (int nx, int ny, Complex< Real > *input, Complex< Real > *output)
 Swap the top-left quadrant of data with the bottom-right , and the top-right quadrant with the bottom-left. More...
 
void setPixelNumberOHC (const ivec2 pixel_number)
 getter/setter for OHC file read and write More...
 
void setPixelPitchOHC (const vec2 pixel_pitch)
 
void setWavelengthOHC (const Real wavelength, const LenUnit wavelength_unit)
 
void setWaveLengthNumOHC (const uint wavelength_num)
 
void setColorTypeOHC (const ColorType color_type)
 
void setColorArrangeOHC (const ColorArran color_arrange)
 
void setWaveLengthUnitOHC (const LenUnit length_unit)
 
void setFieldEncodingOHC (const FldStore field_store, const FldCodeType field_code_type)
 
void setPhaseEncodingOHC (const BPhaseCode phase_code, const vec2 phase_code_range)
 
void addWaveLengthNComplexFieldDataOHC (const Real wavelength, const OphComplexField &complex_field)
 Function to add ComplexField when adding wavelength data. More...
 
void addWaveLengthOHC (const Real wavelength)
 
void addComplexFieldDataOHC (const OphComplexField &complex_field)
 
void getPixelNumberOHC (ivec2 &pixel_number)
 
void getPixelPitchOHC (vec2 &pixel_pitch)
 
void getWavelengthOHC (vector< Real > &wavelength)
 
void getWaveLengthNumOHC (uint &wavelength_num)
 
void getColorTypeOHC (ColorType &color_type)
 
void getColorArrangeOHC (ColorArran &color_arrange)
 
void getWaveLengthUnitOHC (LenUnit &length_unit)
 
void getComplexFieldDataOHC (Complex< Real > **cmplx, uint wavelen_idx)
 
void getComplexFieldDataOHC (OphComplexField &cmplx, uint wavelen_idx)
 
virtual ~Openholo (void)=0
 Destructor. More...
 
bool checkExtension (const char *fname, const char *ext)
 Functions for extension checking. More...
 
bool loadAsImgUpSideDown (const char *fname, uchar *dst)
 Function for loading image files | Output image data upside down. More...
 
bool getImgSize (int &w, int &h, int &bytesperpixel, const char *fname)
 Function for getting the image size. More...
 
void imgScaleBilinear (uchar *src, uchar *dst, int w, int h, int neww, int newh, int channels=1)
 Function for change image size. More...
 
void ImageRotation (double rotate, uchar *src, uchar *dst, int w, int h, int channels)
 
void convertToFormatGray8 (uchar *src, uchar *dst, int w, int h, int bytesperpixel)
 Function for convert image format to gray8. More...
 
void fft1 (int n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 1-dimension operations inside Openholo. More...
 
void fft2 (ivec2 n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 2-dimension operations inside Openholo. More...
 
void fft3 (ivec3 n, Complex< Real > *in, int sign=OPH_FORWARD, uint flag=OPH_ESTIMATE)
 Functions for performing fftw 3-dimension operations inside Openholo. More...
 
void fftExecute (Complex< Real > *out, bool bReverse=false)
 Execution functions to be called after fft1, fft2, and fft3. More...
 
void fftFree (void)
 
void fftwShift (Complex< Real > *src, Complex< Real > *dst, int nx, int ny, int type, bool bNormalized=false)
 Convert data from the spatial domain to the frequency domain using 2D FFT on CPU. More...
 
void fftShift (int nx, int ny, Complex< Real > *input, Complex< Real > *output)
 Swap the top-left quadrant of data with the bottom-right , and the top-right quadrant with the bottom-left. More...
 
void setPixelNumberOHC (const ivec2 pixel_number)
 getter/setter for OHC file read and write More...
 
void setPixelPitchOHC (const vec2 pixel_pitch)
 
void setWavelengthOHC (const Real wavelength, const LenUnit wavelength_unit)
 
void setWaveLengthNumOHC (const uint wavelength_num)
 
void setColorTypeOHC (const ColorType color_type)
 
void setColorArrangeOHC (const ColorArran color_arrange)
 
void setWaveLengthUnitOHC (const LenUnit length_unit)
 
void setFieldEncodingOHC (const FldStore field_store, const FldCodeType field_code_type)
 
void setPhaseEncodingOHC (const BPhaseCode phase_code, const vec2 phase_code_range)
 
void addWaveLengthNComplexFieldDataOHC (const Real wavelength, const OphComplexField &complex_field)
 Function to add ComplexField when adding wavelength data. More...
 
void addWaveLengthOHC (const Real wavelength)
 
void addComplexFieldDataOHC (const OphComplexField &complex_field)
 
void getPixelNumberOHC (ivec2 &pixel_number)
 
void getPixelPitchOHC (vec2 &pixel_pitch)
 
void getWavelengthOHC (vector< Real > &wavelength)
 
void getWaveLengthNumOHC (uint &wavelength_num)
 
void getColorTypeOHC (ColorType &color_type)
 
void getColorArrangeOHC (ColorArran &color_arrange)
 
void getWaveLengthUnitOHC (LenUnit &length_unit)
 
void getComplexFieldDataOHC (Complex< Real > **cmplx, uint wavelen_idx)
 
void getComplexFieldDataOHC (OphComplexField &cmplx, uint wavelen_idx)
 
- Protected Member Functions inherited from Base
virtual ~Base (void)
 Destructor. More...
 
virtual ~Base (void)
 Destructor. More...
 

Protected Attributes

int Nz
 
int MaxIter
 
double Tau
 
double TolA
 
int TvIter
 
matrix< RealNumRecRealImag
 
vector< RealZ
 
- Protected Attributes inherited from ophSig
bool is_CPU
 
ophSigConfig _cfgSig
 
OphComplexField * ComplexH
 
fftw_plan bwd_plan
 
fftw_plan fwd_plan
 
int _wavelength_num
 
Real_t _radius
 
Real_t_foc
 
- Protected Attributes inherited from Openholo
OphConfig context_
 
Complex< Real > ** complex_H
 
ImgEncoderOhcOHC_encoder
 OHC file format Variables for read and write. More...
 
ImgDecoderOhcOHC_decoder
 
- Protected Attributes inherited from Base
unsigned long refCnt
 

Detailed Description

Author

Definition at line 38 of file ophSigCH.h.

Constructor & Destructor Documentation

◆ ophSigCH() [1/2]

ophSigCH::ophSigCH ( void  )
explicit

Constructor.

Definition at line 3 of file ophSigCH.cpp.

◆ ~ophSigCH() [1/2]

virtual ophSigCH::~ophSigCH ( void  )
protectedvirtualdefault

◆ ophSigCH() [2/2]

ophSigCH::ophSigCH ( void  )
explicit

Constructor.

◆ ~ophSigCH() [2/2]

virtual ophSigCH::~ophSigCH ( void  )
protectedvirtualdefault

Member Function Documentation

◆ c2ri() [1/2]

void ophSigCH::c2ri ( matrix< Complex< Real >> &  complexinput,
matrix< Real > &  realimagoutput 
)
protected

Definition at line 216 of file ophSigCH.cpp.

◆ c2ri() [2/2]

void ophSigCH::c2ri ( matrix< Complex< Real >> &  complexinput,
matrix< Real > &  realimagoutput 
)
protected

◆ convert2Dto3D() [1/2]

void ophSigCH::convert2Dto3D ( matrix< Complex< Real >> &  complex2Dinput,
int  nz,
matrix< Complex< Real >> *  complex3Doutput 
)
protected

Definition at line 317 of file ophSigCH.cpp.

◆ convert2Dto3D() [2/2]

void ophSigCH::convert2Dto3D ( matrix< Complex< Real >> &  complex2Dinput,
int  nz,
matrix< Complex< Real >> *  complex3Doutput 
)
protected

◆ convert3Dto2D() [1/2]

void ophSigCH::convert3Dto2D ( matrix< Complex< Real >> *  complex3Dinput,
int  nz,
matrix< Complex< Real >> &  complex2Doutput 
)
protected

◆ convert3Dto2D() [2/2]

void ophSigCH::convert3Dto2D ( matrix< Complex< Real >> *  complex3Dinput,
int  nz,
matrix< Complex< Real >> &  complex2Doutput 
)
protected

Definition at line 300 of file ophSigCH.cpp.

◆ loadCHtemp() [1/2]

bool ophSigCH::loadCHtemp ( const char *  real,
const char *  imag,
uint8_t  bitpixel 
)

Definition at line 610 of file ophSigCH.cpp.

◆ loadCHtemp() [2/2]

bool ophSigCH::loadCHtemp ( const char *  real,
const char *  imag,
uint8_t  bitpixel 
)

◆ matrixEleSquareSum() [1/2]

double ophSigCH::matrixEleSquareSum ( matrix< Real > &  input)
protected

Definition at line 551 of file ophSigCH.cpp.

◆ matrixEleSquareSum() [2/2]

double ophSigCH::matrixEleSquareSum ( matrix< Real > &  input)
protected

◆ plane2volume() [1/2]

void ophSigCH::plane2volume ( matrix< Real > &  realimagplaneinput,
vector< Real z,
matrix< Real > &  realimagplaneoutput 
)
protected

Definition at line 267 of file ophSigCH.cpp.

◆ plane2volume() [2/2]

void ophSigCH::plane2volume ( matrix< Real > &  realimagplaneinput,
vector< Real z,
matrix< Real > &  realimagplaneoutput 
)
protected

◆ propagationHoloAS() [1/2]

matrix<Complex<Real> > ophSigCH::propagationHoloAS ( matrix< Complex< Real >>  complexH,
float  depth 
)

◆ propagationHoloAS() [2/2]

matrix< Complex< Real > > ophSigCH::propagationHoloAS ( matrix< Complex< Real >>  complexH,
float  depth 
)

Definition at line 817 of file ophSigCH.cpp.

◆ readConfig() [1/2]

bool ophSigCH::readConfig ( const char *  fname)

Definition at line 564 of file ophSigCH.cpp.

◆ readConfig() [2/2]

bool ophSigCH::readConfig ( const char *  fname)

◆ ri2c() [1/2]

void ophSigCH::ri2c ( matrix< Real > &  realimaginput,
matrix< Complex< Real >> &  complexoutput 
)
protected

Definition at line 229 of file ophSigCH.cpp.

◆ ri2c() [2/2]

void ophSigCH::ri2c ( matrix< Real > &  realimaginput,
matrix< Complex< Real >> &  complexoutput 
)
protected

◆ runCH() [1/2]

bool ophSigCH::runCH ( int  complexHidx)

◆ runCH() [2/2]

bool ophSigCH::runCH ( int  complexHidx)

Definition at line 74 of file ophSigCH.cpp.

◆ saveNumRec() [1/2]

bool ophSigCH::saveNumRec ( const char *  fname)

◆ saveNumRec() [2/2]

bool ophSigCH::saveNumRec ( const char *  fname)

Definition at line 12 of file ophSigCH.cpp.

◆ setCHparam() [1/2]

bool ophSigCH::setCHparam ( vector< Real > &  z,
int  maxIter,
double  tau,
double  tolA,
int  tvIter 
)

◆ setCHparam() [2/2]

bool ophSigCH::setCHparam ( vector< Real > &  z,
int  maxIter,
double  tau,
double  tolA,
int  tvIter 
)

Definition at line 63 of file ophSigCH.cpp.

◆ tvdenoise() [1/2]

void ophSigCH::tvdenoise ( matrix< Real > &  input,
double  lam,
int  iters,
matrix< Real > &  output 
)
protected

◆ tvdenoise() [2/2]

void ophSigCH::tvdenoise ( matrix< Real > &  input,
double  lam,
int  iters,
matrix< Real > &  output 
)
protected

Definition at line 93 of file ophSigCH.cpp.

◆ tvnorm() [1/2]

double ophSigCH::tvnorm ( matrix< Real > &  input)
protected

Definition at line 190 of file ophSigCH.cpp.

◆ tvnorm() [2/2]

double ophSigCH::tvnorm ( matrix< Real > &  input)
protected

◆ twist() [1/2]

void ophSigCH::twist ( matrix< Real > &  realimagplaneinput,
matrix< Real > &  realimagvolumeoutput 
)
protected

Definition at line 334 of file ophSigCH.cpp.

◆ twist() [2/2]

void ophSigCH::twist ( matrix< Real > &  realimagplaneinput,
matrix< Real > &  realimagvolumeoutput 
)
protected

◆ volume2plane() [1/2]

void ophSigCH::volume2plane ( matrix< Real > &  realimagvolumeinput,
vector< Real z,
matrix< Real > &  realimagplaneoutput 
)
protected

Definition at line 241 of file ophSigCH.cpp.

◆ volume2plane() [2/2]

void ophSigCH::volume2plane ( matrix< Real > &  realimagvolumeinput,
vector< Real z,
matrix< Real > &  realimagplaneoutput 
)
protected

Member Data Documentation

◆ MaxIter

int ophSigCH::MaxIter
protected

Definition at line 77 of file ophSigCH.h.

◆ NumRecRealImag

matrix< Real > ophSigCH::NumRecRealImag
protected

Definition at line 81 of file ophSigCH.h.

◆ Nz

int ophSigCH::Nz
protected

Definition at line 76 of file ophSigCH.h.

◆ Tau

double ophSigCH::Tau
protected

Definition at line 78 of file ophSigCH.h.

◆ TolA

double ophSigCH::TolA
protected

Definition at line 79 of file ophSigCH.h.

◆ TvIter

int ophSigCH::TvIter
protected

Definition at line 80 of file ophSigCH.h.

◆ Z

vector< Real > ophSigCH::Z
protected

Definition at line 82 of file ophSigCH.h.


The documentation for this class was generated from the following files: