Protected Attributes

DGVRadonTransform< type > Class Template Reference

Class designed to contain and encapsulate Discrete Radon Transforms (DRT). The transforms can be operated on Blitz Array or Matrices. More...

#include <DGVRadonTransform.h>

List of all members.

Public Member Functions

Constructors

 DGVRadonTransform ()
 Standard Constructor.
virtual ~DGVRadonTransform ()
 Standard Destructor.
Radon Transforms

void DiscreteRT (Array< type, 2 > &field, Array< type, 2 > &bins)
 The Finite Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.
void iDiscreteRT (Array< type, 2 > &bins, Array< type, 2 > &result, bool norm=true)
 The Inverse Finite Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.
void FastRT (Array< type, 2 > &field, Array< type, 2 > &bins)
 The Fast Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.
void iFastRT (Array< type, 2 > &bins, Array< type, 2 > &result, bool norm=true)
 The Inverse Fast Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.
void extractSlices (Array< complex< type >, 2 > &field, Array< complex< type >, 2 > &slices)
 Extracts all the slice at discrete slopes from field. Uses the Fourier Slice Theorem.
void extractSlices (Array< type, 2 > &field, Array< type, 2 > &slices)
void getSlice (int m, Array< complex< type >, 2 > &field, Array< complex< type >, 1 > &slice)
 Extracts the slice at discrete slope m from field. Uses the Fourier Slice Theorem.
void getSlice (int m, Array< type, 2 > &field, Array< type, 1 > &slice)
void setSlice (int m, Array< complex< type >, 2 > &field, Array< complex< type >, 1 > &slice)
 Assigns a slice at discrete slope m to field. Uses the Fourier Slice Theorem.
void setSlice (int m, Array< type, 2 > &field, Array< type, 1 > &slice)
I/O

void init ()
 Initializes all internal variables.
void setIsum (type sum)
 Sets the $I_{sum}$ calculated in RT's (i.e. the total image sum).
type getIsum ()
 Returns the $I_{sum}$ calculated in RT's (i.e. the total image sum).
void ISumFromBins (Array< type, 2 > &bins)
 Returns the $I_{sum}$ calculated in RT's (i.e. the total image sum). It is calculated from the first row of the FRT Space.
void setInitializer (type value)
type getInitializer ()
 Sets the initializer value for the RT's. MUST BE SET FOR CORRECT RESULTS WHEN USING TYPES OTHER THAN NUMBER TYPES (eg. string).
bool isTypeInteger ()
 Returns if the type of the RTs are integers.

Protected Attributes

type Isum
 The sum of all the Field values.
type initializer

Detailed Description

template<typename type>
class DGVRadonTransform< type >

Class designed to contain and encapsulate Discrete Radon Transforms (DRT). The transforms can be operated on Blitz Array or Matrices.

Currently supports the following DRTs:

Definition at line 44 of file DGVRadonTransform.h.


Constructor & Destructor Documentation

template<typename type >
DGVRadonTransform< type >::DGVRadonTransform (  ) 

Standard Constructor.

Definition at line 152 of file DGVRadonTransform.h.

template<typename type >
DGVRadonTransform< type >::~DGVRadonTransform (  )  [virtual]

Standard Destructor.

Definition at line 158 of file DGVRadonTransform.h.


Member Function Documentation

template<typename type>
void DGVRadonTransform< type >::DiscreteRT ( Array< type, 2 > &  field,
Array< type, 2 > &  bins 
)

The Finite Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.

bins is automatically/internally allocated to the correct size.

Definition at line 164 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::extractSlices ( Array< complex< type >, 2 > &  field,
Array< complex< type >, 2 > &  slices 
)

Extracts all the slice at discrete slopes from field. Uses the Fourier Slice Theorem.

Pick slices and Inverse 1D FFT them

Definition at line 284 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::extractSlices ( Array< type, 2 > &  field,
Array< type, 2 > &  slices 
)

Pick slices and Inverse 1D FFT them

Definition at line 302 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::FastRT ( Array< type, 2 > &  field,
Array< type, 2 > &  bins 
)

The Fast Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.

These fast methods are suited only for numeric types. bins is automatically/internally allocated to the correct size.

Odd rows then assume prime-length

Definition at line 228 of file DGVRadonTransform.h.

template<typename type>
DGVRadonTransform< type >::getInitializer (  )  [inline]

Sets the initializer value for the RT's. MUST BE SET FOR CORRECT RESULTS WHEN USING TYPES OTHER THAN NUMBER TYPES (eg. string).

Returns the initializer value for the RT's. MUST BE SET FOR CORRECT RESULTS WHEN USING TYPES OTHER THAN NUMBER TYPES (eg. string).

Definition at line 138 of file DGVRadonTransform.h.

template<typename type>
DGVRadonTransform< type >::getIsum (  )  [inline]

Returns the $I_{sum}$ calculated in RT's (i.e. the total image sum).

Definition at line 121 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::getSlice ( int  m,
Array< type, 2 > &  field,
Array< type, 1 > &  slice 
)

Definition at line 336 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::getSlice ( int  m,
Array< complex< type >, 2 > &  field,
Array< complex< type >, 1 > &  slice 
)

Extracts the slice at discrete slope m from field. Uses the Fourier Slice Theorem.

Definition at line 317 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::iDiscreteRT ( Array< type, 2 > &  bins,
Array< type, 2 > &  result,
bool  norm = true 
)

The Inverse Finite Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.

bins is automatically/internally allocated to the correct size. If norm is true, then the result is divided by prime. It can be omitted and will normalise by default.

Definition at line 194 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::iFastRT ( Array< type, 2 > &  bins,
Array< type, 2 > &  result,
bool  norm = true 
)

The Inverse Fast Radon Transform of Matus & Flusser (1993). It is assumed that the field size is prime.

These fast methods are suited only for numeric types. bins is automatically/internally allocated to the correct size. If norm is true, then the result is divided by prime. It can be omitted and will normalise by default.

FRT Space has n+1 rows, then assume prime length

Definition at line 257 of file DGVRadonTransform.h.

template<typename type>
DGVRadonTransform< type >::init (  )  [inline]

Initializes all internal variables.

Definition at line 111 of file DGVRadonTransform.h.

template<typename type >
bool DGVRadonTransform< type >::isTypeInteger (  ) 

Returns if the type of the RTs are integers.

Definition at line 401 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::ISumFromBins ( Array< type, 2 > &  bins  ) 

Returns the $I_{sum}$ calculated in RT's (i.e. the total image sum). It is calculated from the first row of the FRT Space.

Definition at line 393 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::setInitializer ( type  value  )  [inline]

Definition at line 132 of file DGVRadonTransform.h.

template<typename type>
DGVRadonTransform< type >::setIsum ( type  sum  )  [inline]

Sets the $I_{sum}$ calculated in RT's (i.e. the total image sum).

Definition at line 116 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::setSlice ( int  m,
Array< complex< type >, 2 > &  field,
Array< complex< type >, 1 > &  slice 
)

Assigns a slice at discrete slope m to field. Uses the Fourier Slice Theorem.

Definition at line 355 of file DGVRadonTransform.h.

template<typename type>
void DGVRadonTransform< type >::setSlice ( int  m,
Array< type, 2 > &  field,
Array< type, 1 > &  slice 
)

Definition at line 374 of file DGVRadonTransform.h.


Member Data Documentation

template<typename type>
type DGVRadonTransform< type >::initializer [protected]

The initialial value to which the RT's are to be conducted

Definition at line 148 of file DGVRadonTransform.h.

template<typename type>
type DGVRadonTransform< type >::Isum [protected]

The sum of all the Field values.

Definition at line 147 of file DGVRadonTransform.h.


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