Defines | Typedefs | Functions

libfilters/ofLinearFilter.h File Reference

#include "ofSeparableConvolution.h"
#include <i3d/image3d.h>

Defines

#define ENUMERATED_BASES   48

Typedefs

typedef const int BASE [6][3]

Functions

template<class VOXEL >
void ApplyGauss (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL Sigma, const float Width=3.0)
template<class VOXEL >
void ApplyGauss (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL SigmaX, const VOXEL SigmaY, const VOXEL SigmaZ, const float WidthX=3.0, const float WidthY=3.0, const float WidthZ=3.0)
template<class VOXEL >
void ApplyGaussZeroBorder (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL Sigma, const float Width=3.0)
template<class VOXEL >
void ApplyGaussZeroBorder (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL SigmaX, const VOXEL SigmaY, const VOXEL SigmaZ, const float WidthX=3.0, const float WidthY=3.0, const float WidthZ=3.0)
template<class VOXEL >
void ApplyIIRGauss (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL Sigma)
template<class VOXEL >
void ApplyIIRGauss (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL SigmaX, const VOXEL SigmaY, const VOXEL SigmaZ)
template<class VOXEL >
void ApplyIIRGauss2 (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL Sigma)
template<class VOXEL >
void ApplyIIRGauss2 (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL SigmaX, const VOXEL SigmaY, const VOXEL SigmaZ)
template<class VOXEL >
void ApplyIIRGauss3 (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL Sigma)
template<class VOXEL >
void ApplyIIRGauss3 (i3d::Image3d< VOXEL > const &In, i3d::Image3d< VOXEL > &Out, const VOXEL SigmaX, const VOXEL SigmaY, const VOXEL SigmaZ)
double DegToRad (double a)
double RadToDeg (double a)
template<class VOXEL >
int ApplyIIRGaussInteger1D (i3d::Image3d< VOXEL > const &Input, i3d::Image3d< VOXEL > &Out, const int dx, const int dy, const int dz, const VOXEL Sigma)
template<class VOXEL >
int ApplyIIRGaussInteger1DGB (i3d::Image3d< VOXEL > const &InRe, i3d::Image3d< VOXEL > const &InIm, i3d::Image3d< VOXEL > &OutRe, i3d::Image3d< VOXEL > &OutIm, const int dx, const int dy, const int dz, const double Sigma, const double Frequency)
int ComputeLampertParams (const double phi, const double psi, const double sigmaX, const double sigmaY, const double sigmaZ, double &v12, double &v13, double &v23, double &d1, double &d2, double &d3)
int ComputeLampertParams (const double phi, const double sigmaX, const double sigmaY, double &v12, double &d1, double &d2)
template<class VOXEL >
void ApplyIIRGaussShearA (i3d::Image3d< VOXEL > const &Input, i3d::Image3d< VOXEL > &Out, const VOXEL v12, const signed short ySlope, const VOXEL Sigma)
template<class VOXEL >
void ApplyIIRGaussShearB (i3d::Image3d< VOXEL > const &Input, i3d::Image3d< VOXEL > &Out, const VOXEL v13, const VOXEL v23, const signed short zSlope, const VOXEL Sigma)
template<class VOXEL >
int ApplyANIGaussL (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ=0.0)
template<class VOXEL >
int ApplyANIGaussU (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ=0.0)
template<class VOXEL >
int ApplyANIGaussU2 (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ=0.0)
void EnumerateBases (int MaxTwos, int bases[][6][3], int &HowMany)
void EnumerateBases91 (int MaxTwos, int bases[][6][3], int &HowMany)
int GetIDOfBase (int const (&vecs)[6][3])
int GetIDOfEquivalentBase (int const (&vecs)[6][3], int newIndex[6])
int GetBaseFromID (const int ID, int vecs[6][3])
int GetIDOfBase (int const (&vecs)[6][3], const BASE bases[], const int basesNo)
int GetIDOfEquivalentBase (int const (&vecs)[6][3], const BASE bases[], const int basesNo, int newIndex[6])
int GetBaseFromID (const int ID, const BASE bases[], const int basesNo, int vecs[6][3])
void PrintBases (const BASE bases[], const int basesNo)
int GetParamsANIGaussU (const double xyPhi, const double sigmaX, const double sigmaY, int vecs[3][2], double sigs[3])
int GetParamsANIGaussU (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, int vecs[6][3], double sigs[6])
int GetParamsANIGaussUb (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, const int vecs[6][3], double sigs[6])
int GetParamsANIGaussUb (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, const int baseID, double sigs[6])
int GetParamsANIGaussUb (const double xyPhi, const double sigmaX, const double sigmaY, const int vecs[3][2], double sigs[3])
int GetParamsANIGaussU2 (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, int vecs[6][3], double sigs[6])
int GetParamsANIGaussUBS (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, int vecs[6][3], double sigs[6])
void EnumerateBasesBS (int bases[][6][3], int &HowMany)
template<class VOXEL >
void ChangeToBestOrder (const i3d::Image3d< VOXEL > &srcIm, const i3d::Image3d< VOXEL > &refIm, int vecs[6][3], double sigs[6], int newIndex[6])
template<class VOXEL >
void ChangeToBestOrderForGaussian (const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, int vecs[6][3], double sigs[6], int newIndex[6])
template<class VOXEL >
void ApplyBaseConvolutions (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const int vecs[3][2], const double sigs[3])
template<class VOXEL >
void ApplyBaseConvolutions (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const int vecs[6][3], const double sigs[6])
template<class VOXEL >
void ApplyBaseConvolutions2 (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const int vecs[6][3], const double sigs[6])
template<class VOXEL >
void ApplyBaseConvolutions (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const int baseID, const double sigs[6])
template<class VOXEL , typename FLOAT >
int FullGaussFiltering (i3d::Image3d< VOXEL > const &in, i3d::Image3d< VOXEL > &out, const FLOAT Phi, const FLOAT Psi, const FLOAT xSigma, const FLOAT ySigma, const FLOAT zSigma, const int xL=0, const int yL=0, const int zL=0)
template<class VOXEL >
int GetGaussianImpulseResponse (i3d::Image3d< VOXEL > &res, const VOXEL impulse, const double xyPhi, const double xzPsi, const double sigmaX, const double sigmaY, const double sigmaZ, const int xL=51, const int yL=51, const int zL=51)
template<class VOXEL >
void Apply1DDerivativeFilter (i3d::Image3d< VOXEL > &In, i3d::Image3d< VOXEL > &Out, int axe, VOXEL spacing)
template<class VOXEL >
double NormalizedSquareError (i3d::Image3d< VOXEL > const &test, i3d::Image3d< VOXEL > const &ref)
template<class VOXEL >
int ExportFilterToMaple (const char *FileName, struct Separable3DFilter< VOXEL > const &Filter, const char *FilterTitle=NULL, const char Append=0)
template<class VOXEL >
int ExportFilterToMaple (const char *FileName, struct Separable3DFilter< VOXEL > const &Filter, const char AxesSelection, const char *FilterTitle=NULL, const char Append=0)
template<class VOXEL >
int ExportFilterToMaple3D (const char *FileName, struct Separable3DFilter< VOXEL > const &Filter, const char *FilterTitle=NULL, const char Append=0)