DMRITool
v0.1.1-139-g860d86b4
Diffusion MRI Tool
|
#include <itkSamplingScheme3D.h>
this class describes sampling in a 3D space (Q space or R space).
The sampling can be single shell sampling or multiple shell sampling, which is determined by m_IndicesInShells.
Definition at line 43 of file itkSamplingScheme3D.h.
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef utl_shared_ptr< Index2DVectorType > | Index2DVectorPointer |
typedef std::vector< IndexVectorType > | Index2DVectorType |
typedef std::vector< int > | IndexVectorType |
typedef utl_shared_ptr< MatrixType > | MatrixPointer |
typedef utl::NDArray< double, 2 > | MatrixType |
typedef SmartPointer< Self > | Pointer |
typedef VectorContainer< IdentifierType, Point< TPixelType, 3 > > | PointsContainer |
typedef PointsContainer::ConstIterator | PointsContainerConstIterator |
typedef PointsContainer::ConstPointer | PointsContainerConstPointer |
typedef PointsContainer::Iterator | PointsContainerIterator |
typedef PointsContainer::Pointer | PointsContainerPointer |
typedef Point< TPixelType, 3 > | PointType |
typedef SamplingScheme3D | Self |
typedef utl_shared_ptr< STDVectorType > | STDVectorPointer |
typedef std::vector< double > | STDVectorType |
typedef VectorContainer< IdentifierType, Point< TPixelType, 3 > > | Superclass |
typedef TPixelType | ValueType |
Public Member Functions | |
void | AppendOrientation (const double x, const double y, const double z, const int shell=-1) |
void | AppendOrientation (const PointType &point, const int shell=-1) |
void | AppendOrientationAndRadiusValue (const double x, const double y, const double z, const double radius, const int shell=-1) |
double | CalculateElectrostaticEnergy (const double order=2.0, const bool isNormalize=true, const bool countHalf=true) const |
double | CalculateElectrostaticEnergyInShell (const unsigned int shellIndex, const double order=2.0, const bool isNormalize=true, const bool countHalf=true) const |
MatrixPointer | CalculateElectrostaticEnergyMatrix (const double order=2.0) const |
MatrixPointer | CalculateInnerProductMatrix (const bool isAbsolute=true) const |
double | CalculateMaxDot (const unsigned int index, const bool isSymmetric=true) const |
double | CalculateMaxDotInShell (const unsigned int sampleIndex, const unsigned int shellIndex, const bool isSymmetric=true) const |
double | CalculateMinDistance (const unsigned int index, const bool isSymmetric=true) const |
STDVectorType | CalculateMinDistance (const bool isSymmetric=true) const |
double | CalculateMinDistanceInShell (const unsigned int sampleIndex, const unsigned int shellIndex, const bool isSymmetric=true) const |
STDVectorType | CalculateMinDistanceInShell (const unsigned int shellIndex, const bool isSymmetric=true) const |
double | CalculatePackingDensity (const bool isSymmetric=true) const |
double | CalculatePackingDensityInShell (const unsigned int shellIndex, const bool isSymmetric=true) const |
double | CalculateSphericalCodeEntropy (const bool isSymmetric=true) const |
double | CalculateSphericalCodeEntropyInShell (const unsigned int shellIndex, const bool isSymmetric=true) const |
double | CalculateVoronoiEntropy (const int tess=7, const bool isSymmetric=true) |
double | CalculateVoronoiEntropyInShell (const unsigned int shellIndex, const int tess=7, const bool isSymmetric=true) |
void | Clear () |
virtual void | CorrectRadiusValues () |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
void | GenerateFromRandomPoints (const std::vector< int > &numberOfPoints) |
virtual double | GetDeltaBig () |
virtual double | GetDeltaSmall () |
virtual Index2DVectorPointer | GetIndicesInShells () |
virtual const char * | GetNameOfClass () const |
unsigned int | GetNumberOfSamples () const |
IndexVectorType | GetNumberOfSamplesAtEachShell () const |
unsigned int | GetNumberOfSamplesInShell (const unsigned int shellIndex) const |
unsigned int | GetNumberOfShells () const |
void | GetNumbers (int &numberUniqueSamples, int &numberAntipodalSamples, int &numberRepeatedSamples) const |
PointType | GetOrientation (unsigned int index) |
MatrixPointer | GetOrientationsCartesian (const bool alwarysReCalculate=false) |
MatrixPointer | GetOrientationsCartesianInShell (const unsigned int shellIndex) const |
MatrixPointer | GetOrientationsSpherical (const bool alwarysReCalculate=false) |
MatrixPointer | GetOrientationsSphericalInShell (const unsigned int shellIndex) |
virtual double | GetRadiusThresholdSingleShell () |
double | GetRadiusValue (unsigned int index) |
virtual STDVectorPointer | GetRadiusVector () |
STDVectorPointer | GetRadiusVectorInShell (unsigned int shellIndex) |
virtual double | GetTau () |
std::vector< STDVectorType > | GroupRadiusValues () |
void | NormalizeDirections () |
void | ReadOrientationFile (const std::string &gradFile, const int NoSymmetricDuple=DIRECTION_NODUPLICATE, const int flipx=DIRECTION_NOFLIP, const int flipy=DIRECTION_NOFLIP, const int flipz=DIRECTION_NOFLIP, const bool need_normalize=true) |
void | ReadOrientationFileList (const std::vector< std::string > &gradFileVec, const int NoSymmetricDuple=DIRECTION_NODUPLICATE, const int flipx=DIRECTION_NOFLIP, const int flipy=DIRECTION_NOFLIP, const int flipz=DIRECTION_NOFLIP, const bool need_normalize=true) |
void | RemoveSamplesNotIndexed () |
virtual void | SetDeltaBig (double _arg) |
virtual void | SetDeltaSmall (double _arg) |
virtual void | SetIndicesInShells (Index2DVectorPointer _arg) |
void | SetOrientationsCartesian (const MatrixPointer mat) |
void | SetOrientationsSpherical (const MatrixPointer mat) |
virtual void | SetRadiusThresholdSingleShell (double _arg) |
void | SetRadiusVector (const STDVectorPointer radiusVec) |
virtual void | SetTau (double _arg) |
Static Public Member Functions | |
static double | CalculateMinDistanceUpperBound (const unsigned int numberOfPoints, const bool isSphericalDistance=true) |
static double | CalculateVoronoiEntropy (const MatrixType &grad, const MatrixType &gradTess, const bool isSymmetric=true) |
static Pointer | New () |
Protected Member Functions | |
LightObject::Pointer | InternalClone () const ITK_OVERRIDE |
void | PrintSelf (std::ostream &os, Indent indent) const ITK_OVERRIDE |
SamplingScheme3D () | |
virtual | ~SamplingScheme3D () |
Protected Attributes | |
double | m_DeltaBig |
double | m_DeltaSmall |
Index2DVectorPointer | m_IndicesInShells |
MatrixPointer | m_OrientationsCartesian |
MatrixPointer | m_OrientationsSpherical |
double | m_RadiusThresholdSingleShell |
STDVectorPointer | m_RadiusVector |
double | m_Tau |
Private Member Functions | |
PointType & | CreateElementAt (IdentifierType) |
void | InsertElement (IdentifierType, PointType) |
void | operator= (const Self &) |
SamplingScheme3D (const Self &) | |
void | SetElement (IdentifierType, PointType) |
typedef SmartPointer< const Self > itk::SamplingScheme3D< TPixelType >::ConstPointer |
Definition at line 52 of file itkSamplingScheme3D.h.
typedef utl_shared_ptr<Index2DVectorType> itk::SamplingScheme3D< TPixelType >::Index2DVectorPointer |
Definition at line 78 of file itkSamplingScheme3D.h.
typedef std::vector<IndexVectorType > itk::SamplingScheme3D< TPixelType >::Index2DVectorType |
Definition at line 77 of file itkSamplingScheme3D.h.
typedef std::vector<int> itk::SamplingScheme3D< TPixelType >::IndexVectorType |
Definition at line 76 of file itkSamplingScheme3D.h.
typedef utl_shared_ptr<MatrixType > itk::SamplingScheme3D< TPixelType >::MatrixPointer |
Definition at line 73 of file itkSamplingScheme3D.h.
typedef utl::NDArray<double,2> itk::SamplingScheme3D< TPixelType >::MatrixType |
Definition at line 72 of file itkSamplingScheme3D.h.
typedef SmartPointer< Self > itk::SamplingScheme3D< TPixelType >::Pointer |
Definition at line 51 of file itkSamplingScheme3D.h.
typedef VectorContainer<IdentifierType, Point< TPixelType, 3 > > itk::SamplingScheme3D< TPixelType >::PointsContainer |
Definition at line 58 of file itkSamplingScheme3D.h.
typedef PointsContainer::ConstIterator itk::SamplingScheme3D< TPixelType >::PointsContainerConstIterator |
Create types that are iterators for each of the container types.
Definition at line 69 of file itkSamplingScheme3D.h.
typedef PointsContainer::ConstPointer itk::SamplingScheme3D< TPixelType >::PointsContainerConstPointer |
Definition at line 66 of file itkSamplingScheme3D.h.
typedef PointsContainer::Iterator itk::SamplingScheme3D< TPixelType >::PointsContainerIterator |
Definition at line 70 of file itkSamplingScheme3D.h.
typedef PointsContainer::Pointer itk::SamplingScheme3D< TPixelType >::PointsContainerPointer |
Create types that are pointers to each of the container types.
Definition at line 65 of file itkSamplingScheme3D.h.
typedef Point<TPixelType, 3> itk::SamplingScheme3D< TPixelType >::PointType |
Definition at line 61 of file itkSamplingScheme3D.h.
typedef SamplingScheme3D itk::SamplingScheme3D< TPixelType >::Self |
Standard class typedefs.
Definition at line 49 of file itkSamplingScheme3D.h.
typedef utl_shared_ptr<STDVectorType > itk::SamplingScheme3D< TPixelType >::STDVectorPointer |
Definition at line 75 of file itkSamplingScheme3D.h.
typedef std::vector<double> itk::SamplingScheme3D< TPixelType >::STDVectorType |
Definition at line 74 of file itkSamplingScheme3D.h.
typedef VectorContainer<IdentifierType, Point< TPixelType, 3 > > itk::SamplingScheme3D< TPixelType >::Superclass |
Definition at line 50 of file itkSamplingScheme3D.h.
typedef TPixelType itk::SamplingScheme3D< TPixelType >::ValueType |
Definition at line 62 of file itkSamplingScheme3D.h.
|
protected |
Definition at line 31 of file itkSamplingScheme3D.hxx.
References ONE_OVER_4_PI_2, and itk::SamplingScheme3D< TPixelType >::SetRadiusVector().
|
inlineprotectedvirtual |
Definition at line 225 of file itkSamplingScheme3D.h.
References ITK_OVERRIDE.
|
private |
void itk::SamplingScheme3D< TPixelType >::AppendOrientation | ( | const double | x, |
const double | y, | ||
const double | z, | ||
const int | shell = -1 |
||
) |
push_back a new orientation
Definition at line 463 of file itkSamplingScheme3D.hxx.
Referenced by itk::SamplingScheme3D< TPixelType >::GenerateFromRandomPoints().
void itk::SamplingScheme3D< TPixelType >::AppendOrientation | ( | const PointType & | point, |
const int | shell = -1 |
||
) |
push_back a new orientation
Definition at line 473 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::AppendOrientationAndRadiusValue(), utlException, and utlSAException.
void itk::SamplingScheme3D< TPixelType >::AppendOrientationAndRadiusValue | ( | const double | x, |
const double | y, | ||
const double | z, | ||
const double | radius, | ||
const int | shell = -1 |
||
) |
push_back a new orientation and a radius value
Definition at line 504 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateInnerProductMatrix().
Referenced by itk::SamplingScheme3D< TPixelType >::AppendOrientation().
double itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergy | ( | const double | order = 2.0 , |
const bool | isNormalize = true , |
||
const bool | countHalf = true |
||
) | const |
calculate electrostatic energy
Definition at line 878 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyInShell(), and utlWarning.
Referenced by itk::SamplingScheme3D< TPixelType >::GetNumbers(), and processOrientation().
double itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyInShell | ( | const unsigned int | shellIndex, |
const double | order = 2.0 , |
||
const bool | isNormalize = true , |
||
const bool | countHalf = true |
||
) | const |
Definition at line 912 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceUpperBound(), and utlWarning.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergy().
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyMatrix | ( | const double | order = 2.0 | ) | const |
return electrostatic energy matrix, the diagonal elements are maximal double value
Definition at line 546 of file itkSamplingScheme3D.hxx.
References spams::abs(), itk::SamplingScheme3D< TPixelType >::CalculatePackingDensity(), utl::max(), and utlWarning.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateInnerProductMatrix().
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::CalculateInnerProductMatrix | ( | const bool | isAbsolute = true | ) | const |
return dot products between samples.
Definition at line 516 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyMatrix().
Referenced by itk::SamplingScheme3D< TPixelType >::AppendOrientationAndRadiusValue().
double itk::SamplingScheme3D< TPixelType >::CalculateMaxDot | ( | const unsigned int | index, |
const bool | isSymmetric = true |
||
) | const |
Definition at line 716 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMaxDotInShell(), M_EPS, and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropyInShell().
double itk::SamplingScheme3D< TPixelType >::CalculateMaxDotInShell | ( | const unsigned int | sampleIndex, |
const unsigned int | shellIndex, | ||
const bool | isSymmetric = true |
||
) | const |
Definition at line 749 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMinDistance(), M_EPS, and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateMaxDot().
double itk::SamplingScheme3D< TPixelType >::CalculateMinDistance | ( | const unsigned int | index, |
const bool | isSymmetric = true |
||
) | const |
calculate the minimum distance for the point with a given index.
Definition at line 783 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell(), M_EPS, and M_PI.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateMaxDotInShell(), itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell(), and processOrientation().
SamplingScheme3D< TPixelType >::STDVectorType itk::SamplingScheme3D< TPixelType >::CalculateMinDistance | ( | const bool | isSymmetric = true | ) | const |
calculate the minimum distance for all points.
Definition at line 815 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell().
double itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell | ( | const unsigned int | sampleIndex, |
const unsigned int | shellIndex, | ||
const bool | isSymmetric = true |
||
) | const |
Definition at line 799 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMinDistance(), M_EPS, and M_PI.
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateMinDistance().
SamplingScheme3D< TPixelType >::STDVectorType itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell | ( | const unsigned int | shellIndex, |
const bool | isSymmetric = true |
||
) | const |
calculate the minimum distance for all points in a single shell.
Definition at line 829 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetNumbers().
|
static |
calculate an upper bound of the minimal distance for a given number of points. If isSphericalDistance is true, return spherical distance instead of Euclidean distance. http://mathworld.wolfram.com/SphericalCode.html
Definition at line 948 of file itkSamplingScheme3D.hxx.
References M_PI, and itk::SamplingScheme3D< TPixelType >::PrintSelf().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyInShell().
double itk::SamplingScheme3D< TPixelType >::CalculatePackingDensity | ( | const bool | isSymmetric = true | ) | const |
Packing density: https://en.wikipedia.org/wiki/Packing_density https://en.wikipedia.org/wiki/Spherical_cap
Definition at line 578 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculatePackingDensityInShell().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergyMatrix(), and processOrientation().
double itk::SamplingScheme3D< TPixelType >::CalculatePackingDensityInShell | ( | const unsigned int | shellIndex, |
const bool | isSymmetric = true |
||
) | const |
Definition at line 597 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropy().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculatePackingDensity().
double itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropy | ( | const bool | isSymmetric = true | ) | const |
Calculate entropy based on spherical cap. https://en.wikipedia.org/wiki/Spherical_cap
Definition at line 614 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropyInShell(), and utl::Entropy().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculatePackingDensityInShell().
double itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropyInShell | ( | const unsigned int | shellIndex, |
const bool | isSymmetric = true |
||
) | const |
Definition at line 637 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropy(), and utl::Entropy().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropy().
|
static |
Definition at line 656 of file itkSamplingScheme3D.hxx.
References utl::Entropy().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateSphericalCodeEntropyInShell().
double itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropy | ( | const int | tess = 7 , |
const bool | isSymmetric = true |
||
) |
Definition at line 694 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropyInShell(), CARTESIAN_TO_CARTESIAN, DIRECTION_NODUPLICATE, utl::GradientTable< T >::GetGrad(), and utl::GradientTable< T >::Initialize().
double itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropyInShell | ( | const unsigned int | shellIndex, |
const int | tess = 7 , |
||
const bool | isSymmetric = true |
||
) |
Definition at line 705 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateMaxDot(), CARTESIAN_TO_CARTESIAN, DIRECTION_NODUPLICATE, utl::GradientTable< T >::GetGrad(), and utl::GradientTable< T >::Initialize().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateVoronoiEntropy().
void itk::SamplingScheme3D< TPixelType >::Clear | ( | ) |
Definition at line 264 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::RemoveSamplesNotIndexed().
Referenced by itk::SamplingScheme3D< TPixelType >::InternalClone().
|
virtual |
Reimplemented in itk::SamplingSchemeQSpace< TPixelType >.
Definition at line 369 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::ReadOrientationFile(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::GroupRadiusValues().
virtual::itk::LightObject::Pointer itk::SamplingScheme3D< TPixelType >::CreateAnother | ( | void | ) | const |
|
private |
void itk::SamplingScheme3D< TPixelType >::GenerateFromRandomPoints | ( | const std::vector< int > & | numberOfPoints | ) |
generate sampling scheme from random points in sphere
Definition at line 440 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::AppendOrientation(), and utl::RandomPointInSphere().
Referenced by itk::SamplingScheme3D< TPixelType >::ReadOrientationFileList().
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Standard part of every itk Object.
Reimplemented in itk::SamplingSchemeQSpace< TPixelType >.
|
inline |
Definition at line 109 of file itkSamplingScheme3D.h.
Referenced by processOrientation().
|
inline |
Definition at line 125 of file itkSamplingScheme3D.h.
References DIRECTION_NODUPLICATE, and DIRECTION_NOFLIP.
|
inline |
Definition at line 113 of file itkSamplingScheme3D.h.
|
inline |
Definition at line 120 of file itkSamplingScheme3D.h.
void itk::SamplingScheme3D< TPixelType >::GetNumbers | ( | int & | numberUniqueSamples, |
int & | numberAntipodalSamples, | ||
int & | numberRepeatedSamples | ||
) | const |
Definition at line 845 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CalculateElectrostaticEnergy().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceInShell(), and processOrientation().
|
inline |
Definition at line 167 of file itkSamplingScheme3D.h.
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesian | ( | const bool | alwarysReCalculate = false | ) |
Orientations as matrix, return a pointer
Definition at line 78 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetOrientationsSpherical(), utl::SphericalToCartesian(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::GetRadiusVectorInShell().
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesianInShell | ( | const unsigned int | shellIndex | ) | const |
Definition at line 185 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::NormalizeDirections(), utlException, and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::SetOrientationsSpherical().
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::GetOrientationsSpherical | ( | const bool | alwarysReCalculate = false | ) |
Definition at line 111 of file itkSamplingScheme3D.hxx.
References utl::CartesianToSpherical(), itk::SamplingScheme3D< TPixelType >::SetOrientationsCartesian(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesian().
SamplingScheme3D< TPixelType >::MatrixPointer itk::SamplingScheme3D< TPixelType >::GetOrientationsSphericalInShell | ( | const unsigned int | shellIndex | ) |
Definition at line 159 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::SetOrientationsSpherical(), utlException, and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::SetOrientationsCartesian().
|
virtual |
|
inline |
Definition at line 171 of file itkSamplingScheme3D.h.
|
virtual |
SamplingScheme3D< TPixelType >::STDVectorPointer itk::SamplingScheme3D< TPixelType >::GetRadiusVectorInShell | ( | unsigned int | shellIndex | ) |
Definition at line 60 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesian().
Referenced by itk::SamplingScheme3D< TPixelType >::SetRadiusVector().
|
virtual |
std::vector< typename SamplingScheme3D< TPixelType >::STDVectorType > itk::SamplingScheme3D< TPixelType >::GroupRadiusValues | ( | ) |
Definition at line 306 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::CorrectRadiusValues(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::RemoveSamplesNotIndexed().
|
private |
|
protected |
Definition at line 234 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::Clear().
Referenced by itk::SamplingScheme3D< TPixelType >::NormalizeDirections().
|
static |
Method for creation through the object factory.
void itk::SamplingScheme3D< TPixelType >::NormalizeDirections | ( | ) |
Definition at line 204 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::InternalClone().
Referenced by itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesianInShell().
|
private |
|
protected |
Definition at line 961 of file itkSamplingScheme3D.hxx.
References utl::PrintUtlMatrix(), PrintVar3, and utl::PrintVector().
Referenced by itk::SamplingScheme3D< TPixelType >::CalculateMinDistanceUpperBound().
void itk::SamplingScheme3D< TPixelType >::ReadOrientationFile | ( | const std::string & | gradFile, |
const int | NoSymmetricDuple = DIRECTION_NODUPLICATE , |
||
const int | flipx = DIRECTION_NOFLIP , |
||
const int | flipy = DIRECTION_NOFLIP , |
||
const int | flipz = DIRECTION_NOFLIP , |
||
const bool | need_normalize = true |
||
) |
Nx3 gradient file, each row is a point in S^2, catesian format
Definition at line 391 of file itkSamplingScheme3D.hxx.
References CARTESIAN_TO_CARTESIAN, and itk::SamplingScheme3D< TPixelType >::ReadOrientationFileList().
Referenced by itk::SamplingScheme3D< TPixelType >::CorrectRadiusValues().
void itk::SamplingScheme3D< TPixelType >::ReadOrientationFileList | ( | const std::vector< std::string > & | gradFileVec, |
const int | NoSymmetricDuple = DIRECTION_NODUPLICATE , |
||
const int | flipx = DIRECTION_NOFLIP , |
||
const int | flipy = DIRECTION_NOFLIP , |
||
const int | flipz = DIRECTION_NOFLIP , |
||
const bool | need_normalize = true |
||
) |
Read a list of gradient files. Each file contains gradients for a single shell.
Definition at line 409 of file itkSamplingScheme3D.hxx.
References CARTESIAN_TO_CARTESIAN, itk::SamplingScheme3D< TPixelType >::GenerateFromRandomPoints(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::ReadOrientationFile().
void itk::SamplingScheme3D< TPixelType >::RemoveSamplesNotIndexed | ( | ) |
remove samples not in m_IndicesInShells
Definition at line 277 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GroupRadiusValues(), and utlGlobalException.
Referenced by itk::SamplingScheme3D< TPixelType >::Clear().
|
virtual |
|
virtual |
|
private |
|
virtual |
void itk::SamplingScheme3D< TPixelType >::SetOrientationsCartesian | ( | const MatrixPointer | mat | ) |
Definition at line 148 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetOrientationsSphericalInShell().
Referenced by itk::SamplingScheme3D< TPixelType >::GetOrientationsSpherical().
void itk::SamplingScheme3D< TPixelType >::SetOrientationsSpherical | ( | const MatrixPointer | mat | ) |
Definition at line 173 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetOrientationsCartesianInShell(), and utl::SphericalToCartesian().
Referenced by itk::SamplingScheme3D< TPixelType >::GetOrientationsSphericalInShell().
|
virtual |
void itk::SamplingScheme3D< TPixelType >::SetRadiusVector | ( | const STDVectorPointer | radiusVec | ) |
Definition at line 46 of file itkSamplingScheme3D.hxx.
References itk::SamplingScheme3D< TPixelType >::GetRadiusVectorInShell().
Referenced by itk::SamplingScheme3D< TPixelType >::SamplingScheme3D().
|
virtual |
|
protected |
big delta
Definition at line 238 of file itkSamplingScheme3D.h.
|
protected |
small delta
Definition at line 235 of file itkSamplingScheme3D.h.
|
protected |
2D vector, each element is a vector containing the indices for orientations in each shell. If m_IndicesInShells is empty, single shell sampling is used.
Definition at line 249 of file itkSamplingScheme3D.h.
|
protected |
Orientation matrix
Definition at line 258 of file itkSamplingScheme3D.h.
|
protected |
Definition at line 259 of file itkSamplingScheme3D.h.
|
protected |
threshould to separate radius values into different shells. If it is positive, radius values whose distance is smallter the threshold will be considered in the same shell, and they will be replaced as their mean b value.
Definition at line 255 of file itkSamplingScheme3D.h.
|
protected |
radius values
Definition at line 241 of file itkSamplingScheme3D.h.
|
protected |
tau value
Definition at line 232 of file itkSamplingScheme3D.h.