Classes of the ODIN data processing framework (odindata library)


Classes

class  ComplexData< N_rank >
class  OdinData
class  Converter
struct  correlationResult
struct  fmriResult
struct  FileMapHandle
class  Data< T, N_rank >
class  FileIO
class  FileFormat
struct  FileReadOpts
struct  FileWriteOpts
struct  Filter
class  FilterChain
struct  fitpar
class  ModelFunction
class  FunctionFit
struct  ExponentialFunction
struct  ExponentialFunctionWithOffset
struct  GaussianFunction
struct  SinusFunction
struct  LinearFunction
class  Gridding< T, N_rank >
class  CoordTransformation< T, N_rank >
class  Image
class  ImageSet
class  Integrand
class  FunctionIntegral
struct  statisticResult
class  Step< T >
class  StepFactory< T >
struct  regressResult

Enumerations

enum  autoscaleOption
enum  dataDim

Functions

template<typename T>
correlationResult correlation (const Array< T, 1 > &x, const Array< T, 1 > &y)
template<typename T>
correlationResult kendall (const Array< T, 1 > &x, const Array< T, 1 > &y)
fmriResult fmri_eval (const Data< float, 1 > &timecourse, const Data< float, 1 > &designvec)
template<int N_rank>
Array< float, N_rank > polyniomial_fit (const Array< float, N_rank > &value_map, const Array< float, N_rank > &reliability_map, unsigned int polynom_order, float kernel_size, bool only_zero_reliability=false)
Data< float, 1 > solve_linear (const Data< float, 2 > &A, const Data< float, 1 > &b, float sv_truncation=0.0)
ComplexData< 1 > solve_linear (const ComplexData< 2 > &A, const ComplexData< 1 > &b, float sv_truncation=0.0)
bool pseudo_inverse (ComplexData< 2 > &A, float sv_truncation=0.0)
Data< float, 1 > eigenvalues (const Data< float, 2 > &A)
template<int N_rank>
Array< STD_complex, N_rank > smooth (const Array< STD_complex, N_rank > &source, float smoothing_kernel)
template<int N_rank>
Array< float, N_rank > smooth (const Array< float, N_rank > &source, float smoothing_kernel, bool use_abs=false)
template<typename T, int N_rank>
statisticResult statistics (const Array< T, N_rank > &ensemble, const Array< T, N_rank > *mask=0)
template<typename T, int N_rank>
median (const Array< T, N_rank > &ensemble)
template<typename T, int N_rank>
weightmean (const Array< T, N_rank > &ensemble, const Array< float, N_rank > &weight)
float wrap_from_to (const float from, const float to)
float interpolate (float xs, float xe, float ys, float ye, float xnow)
unsigned long calc_max_pts (Array< float, 1 > a, float limit)
unsigned long GetNextMaxAreaSize (Array< float, 1 > a, float limit)
void correct_lin_phase (Array< float, 1 > &x, Array< float, 1 > &ph, Array< float, 1 > &amp, float limit, unsigned int sig_pts=2)
template<int N_rank>
Array< float, N_rank > truncate_float (Array< float, N_rank > a)
template<int N_rank>
void wrapPhase (Array< float, N_rank > ph)
template<int N_rank>
void unwrapPhase1d (Data< float, N_rank > ph)
template<typename type>
regressResult regress1d (const Array< type, 1 > &x, const Array< type, 1 > &y, const Array< type, 1 > &y_err=Array< type, 1 >())
template<typename T>
Array< T, 1 > matrix_product (const Array< T, 2 > &matrix, const Array< T, 1 > &vector)
template<typename T>
Array< T, 1 > vector_product (const Array< T, 1 > &u, const Array< T, 1 > &v)
template<typename T, int N_rank>
bool operator== (const TinyVector< T, N_rank > &t1, const TinyVector< T, N_rank > &t2)
template<typename T, int N_rank>
bool operator!= (const TinyVector< T, N_rank > &t1, const TinyVector< T, N_rank > &t2)
template<typename T, int N_rank>
bool same_shape (const Array< T, N_rank > &a1, const Array< T, N_rank > &a2)
template<typename T>
bool check_range (T &val, T min, T max)
template<typename T, int N_length>
STD_string tostr (const TinyVector< T, N_length > &tv)
template<class T>
STD_vector< T > list2vector (const STD_list< T > &src)
Array< float, N_rank > Gridding::init (const TinyVector< int, N_rank > &dst_shape, const TinyVector< float, N_rank > &dst_extent, const Array< TinyVector< float, N_rank >, 1 > &src_coords, const JDXfilter &kernel, float kernel_diameter)
Array< T, N_rank > Gridding::operator() (const Array< T, 1 > &src, unsigned int offset=0) const
 CoordTransformation::CoordTransformation (const TinyVector< int, N_rank > &shape, const TinyMatrix< float, N_rank, N_rank > &rotation, const TinyVector< float, N_rank > &offset, float kernel_size=1.5)
void CoordTransformation::operator() (Array< T, N_rank > &A) const

Variables

static Array< T, N_rank > Data::defaultArray

Detailed Description

ODIN data processing framework (odindata library) Input/Output of medical image data (odindata library)

Enumeration Type Documentation

enum autoscaleOption

Scaling strategy when converting data to integer types:

Definition at line 46 of file converter.h.

enum dataDim

The 4 dimensions of data arrays used in FileIO and Filter components, these dimensions are

Definition at line 45 of file fileio.h.


Function Documentation

unsigned long calc_max_pts ( Array< float, 1 >  a,
float  limit 
)

calculates number of points, which are neighboured to the maximum of 'a' without points in between that are less than 'limit' (function for correct_lin_phase)

template<typename T>
bool check_range ( T &  val,
min,
max 
)

Limits value 'val' to range (min,max)

Definition at line 253 of file utils.h.

template<typename T, int N_rank>
CoordTransformation< T, N_rank >::CoordTransformation ( const TinyVector< int, N_rank > &  shape,
const TinyMatrix< float, N_rank, N_rank > &  rotation,
const TinyVector< float, N_rank > &  offset,
float  kernel_size = 1.5 
) [inherited]

Initializes a transformation of an array with shape 'shape' to new coordinates using a gridding algorithm. New coordinates (...z',y',x') are obtained by multiplying (...z,y,x) with 'rotation' and adding 'offset'. Origin is the center of the data set. 'kernel_size' is the width of the regridding kernel in units of pixels.

Definition at line 225 of file gridding.h.

void correct_lin_phase ( Array< float, 1 > &  x,
Array< float, 1 > &  ph,
Array< float, 1 > &  amp,
float  limit,
unsigned int  sig_pts = 2 
)

prepares phase 'ph' and its index 'x' for linear regression. 'ph' is linearly where the amplitude 'amp' is less than 'limit'

template<typename T>
correlationResult correlation ( const Array< T, 1 > &  x,
const Array< T, 1 > &  y 
)

Linear correlation between vectors 'x' and 'y'

Definition at line 61 of file correlation.h.

Data<float,1> eigenvalues ( const Data< float, 2 > &  A  ) 

Computes the eigenvalues of symmetric matrix A using LAPACK (or with GSL if LAPACK is not available).

fmriResult fmri_eval ( const Data< float, 1 > &  timecourse,
const Data< float, 1 > &  designvec 
)

Returns an fMRI analysis of 'timecourse' using 'designvec'

Definition at line 160 of file correlation.h.

unsigned long GetNextMaxAreaSize ( Array< float, 1 >  a,
float  limit 
)

returns the number of points from the beginning of 'a' to the next value that is less than 'limit' (function for correct_lin_phase)

template<typename T, int N_rank>
Array< float, N_rank > Gridding< T, N_rank >::init ( const TinyVector< int, N_rank > &  dst_shape,
const TinyVector< float, N_rank > &  dst_extent,
const Array< TinyVector< float, N_rank >, 1 > &  src_coords,
const JDXfilter kernel,
float  kernel_diameter 
) [inherited]

Initializes a gridding object to perform a gridding operation with the following parameters:

Definition at line 80 of file gridding.h.

float interpolate ( float  xs,
float  xe,
float  ys,
float  ye,
float  xnow 
)

calculates linear interpolate of 'xnow' between the points (xs,ys) and (xe,ye) (function for correct_lin_phase)

template<typename T>
correlationResult kendall ( const Array< T, 1 > &  x,
const Array< T, 1 > &  y 
)

Kendall's rank-correlation between vectors 'x' and 'y' re-implemented from NRC, section 14.6

Definition at line 96 of file correlation.h.

template<class T>
STD_vector<T> list2vector ( const STD_list< T > &  src  ) 

Converts a list into a vector

Definition at line 284 of file utils.h.

template<typename T>
Array<T,1> matrix_product ( const Array< T, 2 > &  matrix,
const Array< T, 1 > &  vector 
)

matrix-vector product

Definition at line 170 of file utils.h.

template<typename T, int N_rank>
T median ( const Array< T, N_rank > &  ensemble  ) 

Returns the median of 'ensemble'.

Definition at line 146 of file statistics.h.

template<typename T, int N_rank>
bool operator!= ( const TinyVector< T, N_rank > &  t1,
const TinyVector< T, N_rank > &  t2 
)

Unequal-comparison operator for TinyVectors

Definition at line 231 of file utils.h.

template<typename T, int N_rank>
void CoordTransformation< T, N_rank >::operator() ( Array< T, N_rank > &  A  )  const [inherited]

Transforms 'A' to new coordinates

Definition at line 255 of file gridding.h.

template<typename T, int N_rank>
Array< T, N_rank > Gridding< T, N_rank >::operator() ( const Array< T, 1 > &  src,
unsigned int  offset = 0 
) const [inherited]

Put input array 'src' on the grid. Gridding will start at index 'offset' of the 'src_coords' specified in the init() function. Returns gridded array.

Definition at line 166 of file gridding.h.

template<typename T, int N_rank>
bool operator== ( const TinyVector< T, N_rank > &  t1,
const TinyVector< T, N_rank > &  t2 
)

Equal-comparison operator for TinyVectors

Definition at line 221 of file utils.h.

template<int N_rank>
Array<float,N_rank> polyniomial_fit ( const Array< float, N_rank > &  value_map,
const Array< float, N_rank > &  reliability_map,
unsigned int  polynom_order,
float  kernel_size,
bool  only_zero_reliability = false 
)

Fits an N_rank-dimensional polynomial of order 'polynom_order' to each point of the array using the values of its neighbours regarding their reliability (i.e. their relative weight for the fit). Parameters are:

This function returns the fitted array

Definition at line 322 of file fitting.h.

bool pseudo_inverse ( ComplexData< 2 > &  A,
float  sv_truncation = 0.0 
)

Calculates the pseudo inverse of a complex matrix with a singular value decomposition. The input matrix will be tranposed and it will store the values of the pseudo inverse matrix. All singular values less than sv_truncation * max_singular_value will be set to zero. The algorithm uses the singular value decomposition from LAPACK.

template<typename type>
regressResult regress1d ( const Array< type, 1 > &  x,
const Array< type, 1 > &  y,
const Array< type, 1 > &  y_err = Array<type,1>() 
)

1d linear regression giving back a member of regressResult

Definition at line 128 of file utils.h.

template<typename T, int N_rank>
bool same_shape ( const Array< T, N_rank > &  a1,
const Array< T, N_rank > &  a2 
)

Compares array shapes, returns true if equal

Definition at line 241 of file utils.h.

template<int N_rank>
Array<float,N_rank> smooth ( const Array< float, N_rank > &  source,
float  smoothing_kernel,
bool  use_abs = false 
)

Smoothes the float array 'source' by convoluting it with a gaussian function with a FWHM of 'smoothing_kernel' pixels; Returns the smoothed array. If 'use_abs' is true, the magnitude is taken after smoothing, otherwise the real part.

Definition at line 70 of file smooth.h.

template<int N_rank>
Array<STD_complex,N_rank> smooth ( const Array< STD_complex, N_rank > &  source,
float  smoothing_kernel 
)

Smoothes the complex array 'source' by convoluting it with a gaussian function with a FWHM of 'smoothing_kernel' pixels; Returns the smoothed array

Definition at line 35 of file smooth.h.

ComplexData<1> solve_linear ( const ComplexData< 2 > &  A,
const ComplexData< 1 > &  b,
float  sv_truncation = 0.0 
)

Solves the complex linear system A x = b and returns x. All singular values less than sv_truncation * max_singular_value will be set to zero. The algorithm uses the singular value decomposition from LAPACK (or from GSL if LAPACK is not available).

Data<float,1> solve_linear ( const Data< float, 2 > &  A,
const Data< float, 1 > &  b,
float  sv_truncation = 0.0 
)

Solves the linear system A x = b and returns x. All singular values less than sv_truncation * max_singular_value will be set to zero. The algorithm uses the singular value decomposition from LAPACK (or from GSL if LAPACK is not available).

template<typename T, int N_rank>
statisticResult statistics ( const Array< T, N_rank > &  ensemble,
const Array< T, N_rank > *  mask = 0 
)

Returns a statistical description of 'ensemble'. If mask is non-zero, only values with mask!=0 are considered.

Definition at line 79 of file statistics.h.

template<typename T, int N_length>
STD_string tostr ( const TinyVector< T, N_length > &  tv  ) 

Converts tiny vector to string (for debugging tracing)

Definition at line 266 of file utils.h.

template<int N_rank>
Array<float,N_rank> truncate_float ( Array< float, N_rank >  a  ) 

returns integer next to zero of float arrays

Definition at line 65 of file utils.h.

template<int N_rank>
void unwrapPhase1d ( Data< float, N_rank >  ph  ) 

unwraps phase of a float array in last dimension

Definition at line 84 of file utils.h.

template<typename T>
Array<T,1> vector_product ( const Array< T, 1 > &  u,
const Array< T, 1 > &  v 
)

cross (vector) product (always in 3 dimensions)

Definition at line 201 of file utils.h.

template<typename T, int N_rank>
T weightmean ( const Array< T, N_rank > &  ensemble,
const Array< float, N_rank > &  weight 
)

Returns the weighted mean of 'ensemble' using 'weight' for the weighting.

Definition at line 168 of file statistics.h.

float wrap_from_to ( const float  from,
const float  to 
)

calculates the multiples of 2PI, which have to be added to 'from' that 'to - from' is minimal (function for correct_lin_phase)

template<int N_rank>
void wrapPhase ( Array< float, N_rank >  ph  ) 

wraps phase of a float array (in rad !!!)

Definition at line 75 of file utils.h.


Generated on Sat Jun 14 12:31:23 2008 by  doxygen 1.5.1