DMRITool
v0.1.1-139-g860d86b4
Diffusion MRI Tool
|
#include "4DImageMathCLP.h"
#include "itkRegionOfInterestImageFilter.h"
#include "itkPermuteAxesImageFilter.h"
#include "itkVectorImageRegionIterator.h"
#include "itkVectorImageRegionIteratorWithIndex.h"
#include "utl.h"
#include "itkFunctors.h"
#include "itkMultiVolumeImageToVectorImageFilter.h"
#include "itkVectorImageToMultiVolumeImageFilter.h"
#include "itkUnaryFunctorVectorImageFilter.h"
#include "itkMultiVariableFunctorVectorImageFilter.h"
#include "itkFunctorFromStringImageFilter.h"
Go to the source code of this file.
Macros | |
#define | __FunctionFromStringOpImage(funcStr) |
#define | __SetImage(ImageType, fileName, imageName, imageItName, axis) |
#define | __SetImageOrScalar(ImageType, fileName, imageName, imageItName, valueName) |
#define | __UnaryScalarFunctor(argNoAxis, opNoAxis, funcName) |
#define | __XYZTMultiVectorFunctor(axisNum, argNoAxis, opNoAxis, funcName) |
#define | __XYZTMultiVectorFunctor_FixedSize(axisNum, argNoAxis, opNoAxis, funcName, inSize) |
#define | __XYZTUnaryVectorFunctor(axisNum, argNoAxis, opNoAxis, funcName) |
#define | __XYZTUnaryVectorFunctorWithArguments(axisNum, argNoAxis, opNoAxis, funcName) |
#define | _SetOperationWithChecking(op, value, numberOfInputsCond) |
Typedefs | |
typedef itk::Image< ScalarType, 4 > | NDImageType |
typedef double | ScalarType |
typedef itk::VectorImage< ScalarType, 3 > | VectorImageType |
Enumerations | |
enum | { OP_NULL =0, OP_ADD, OP_MINUS, OP_MULTIPLY, OP_DIVIDE, OP_MAX, OP_MIN, OP_POW, OP_FUNC, OP_ABS, OP_EXP, OP_LOG, OP_SQUARE, OP_SQRT, OP_NORM, OP_MEAN, OP_MEDIAN, OP_SUM, OP_MAX_AXIS, OP_MIN_AXIS, OP_DOTPRODUCT, OP_COMPOSE, OP_SHRED, OP_CROP } |
Functions | |
template<class ImageType , class ImageOutType , class OpFunctor > | |
void | BinaryOPImage (const itk::SmartPointer< ImageType > &image, itk::SmartPointer< ImageOutType > &outImage, std::string _MaskImageFile, std::string _opImageFile, const OpFunctor &func) |
template<class ImageType , class Image2Type > | |
void | ConvertImage (const itk::SmartPointer< ImageType > &image, itk::SmartPointer< Image2Type > &imageOut) |
template<> | |
void | ConvertImage< NDImageType, VectorImageType > (const itk::SmartPointer< NDImageType > &image, itk::SmartPointer< VectorImageType > &imageOut) |
template<> | |
void | ConvertImage< VectorImageType, NDImageType > (const itk::SmartPointer< VectorImageType > &image, itk::SmartPointer< NDImageType > &imageOut) |
void | GetImageFiles (const std::vector< std::string > &imageVec, std::string &inImage0, std::string &outImage) |
int | GetNumberFromAxis (std::string axis) |
template<class ImageType , class ImageOutType > | |
int | ImageMath (int argc, char const *argv[]) |
template<class IndexType > | |
bool | IsOutsideBox (const IndexType &index, const std::vector< int > &box) |
int | main (int argc, char const *argv[]) |
void | SetOperationWithChecking (int &op, int value) |
Variables | |
std::string | _axis |
int | _axisNumber =-1 |
int | _numberOfThreads = -1 |
int | _Operation = OP_NULL |
std::vector< int > | _realBox |
std::vector< int > | _size |
Created "07-12-2016.
Definition in file 4DImageMath.cxx.
#define __FunctionFromStringOpImage | ( | funcStr | ) |
Definition at line 213 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define __SetImage | ( | ImageType, | |
fileName, | |||
imageName, | |||
imageItName, | |||
axis | |||
) |
Definition at line 165 of file 4DImageMath.cxx.
Referenced by BinaryOPImage().
#define __SetImageOrScalar | ( | ImageType, | |
fileName, | |||
imageName, | |||
imageItName, | |||
valueName | |||
) |
Definition at line 177 of file 4DImageMath.cxx.
Referenced by BinaryOPImage().
#define __UnaryScalarFunctor | ( | argNoAxis, | |
opNoAxis, | |||
funcName | |||
) |
Definition at line 220 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define __XYZTMultiVectorFunctor | ( | axisNum, | |
argNoAxis, | |||
opNoAxis, | |||
funcName | |||
) |
Definition at line 248 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define __XYZTMultiVectorFunctor_FixedSize | ( | axisNum, | |
argNoAxis, | |||
opNoAxis, | |||
funcName, | |||
inSize | |||
) |
Definition at line 257 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define __XYZTUnaryVectorFunctor | ( | axisNum, | |
argNoAxis, | |||
opNoAxis, | |||
funcName | |||
) |
Definition at line 229 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define __XYZTUnaryVectorFunctorWithArguments | ( | axisNum, | |
argNoAxis, | |||
opNoAxis, | |||
funcName | |||
) |
Definition at line 238 of file 4DImageMath.cxx.
Referenced by ImageMath().
#define _SetOperationWithChecking | ( | op, | |
value, | |||
numberOfInputsCond | |||
) |
Definition at line 93 of file 4DImageMath.cxx.
Referenced by ImageMath().
typedef itk::Image<ScalarType, 4> NDImageType |
Definition at line 29 of file 4DImageMath.cxx.
typedef double ScalarType |
Definition at line 28 of file 4DImageMath.cxx.
typedef itk::VectorImage<ScalarType, 3> VectorImageType |
Definition at line 30 of file 4DImageMath.cxx.
anonymous enum |
Definition at line 40 of file 4DImageMath.cxx.
void BinaryOPImage | ( | const itk::SmartPointer< ImageType > & | image, |
itk::SmartPointer< ImageOutType > & | outImage, | ||
std::string | _MaskImageFile, | ||
std::string | _opImageFile, | ||
const OpFunctor & | func | ||
) |
Binary operations. Output image has the same size as the input image.
Definition at line 321 of file 4DImageMath.cxx.
References __SetImage, __SetImageOrScalar, itk::CopyImageInformation(), itk::GetVectorImageVectorSize(), utl::IsLogDebug(), utl::IsNumber(), IsOutsideBox(), itk::PrintVariableLengthVector(), itk::VectorImageRegionIteratorWithIndex< TImage >::SetVector(), utlGlobalException, and utlSAGlobalException.
void ConvertImage | ( | const itk::SmartPointer< ImageType > & | image, |
itk::SmartPointer< Image2Type > & | imageOut | ||
) |
Definition at line 121 of file 4DImageMath.cxx.
Referenced by ImageMath().
void ConvertImage< NDImageType, VectorImageType > | ( | const itk::SmartPointer< NDImageType > & | image, |
itk::SmartPointer< VectorImageType > & | imageOut | ||
) |
Definition at line 128 of file 4DImageMath.cxx.
References itk::MultiVolumeToVectorImage().
void ConvertImage< VectorImageType, NDImageType > | ( | const itk::SmartPointer< VectorImageType > & | image, |
itk::SmartPointer< NDImageType > & | imageOut | ||
) |
Definition at line 135 of file 4DImageMath.cxx.
References itk::VectorToMultiVolumeImage().
void GetImageFiles | ( | const std::vector< std::string > & | imageVec, |
std::string & | inImage0, | ||
std::string & | outImage | ||
) |
Definition at line 102 of file 4DImageMath.cxx.
References utlGlobalException.
Referenced by ImageMath(), and main().
int GetNumberFromAxis | ( | std::string | axis | ) |
Definition at line 109 of file 4DImageMath.cxx.
References utlGlobalException.
Referenced by ImageMath().
int ImageMath | ( | int | argc, |
char const * | argv[] | ||
) |
Definition at line 459 of file 4DImageMath.cxx.
References __FunctionFromStringOpImage, __UnaryScalarFunctor, __XYZTMultiVectorFunctor, __XYZTMultiVectorFunctor_FixedSize, __XYZTUnaryVectorFunctor, __XYZTUnaryVectorFunctorWithArguments, _axis, _axisNumber, _numberOfThreads, _Operation, _SetOperationWithChecking, ABS, ConvertImage(), utl::ConvertNumberToString(), GetImageFiles(), GetNumberFromAxis(), itk::GetVectorImage3DVolumeSize(), itk::GetVectorImageVectorSize(), spams::FISTA::LOG, utl::LogLevel, OP_ADD, OP_CROP, OP_DIVIDE, OP_FUNC, OP_MAX, OP_MIN, OP_MINUS, OP_MULTIPLY, OP_NORM, OP_NULL, OP_POW, utl::PrintVector(), itk::ReadImage(), itk::SaveImage(), utl::Functor::Shred< TVector, TOutput >::SetChunkSize(), utl::Functor::Shred< TVector, TOutput >::SetOffset(), SetOperationWithChecking(), utl::Functor::Shred< TVector, TOutput >::SetSpace(), spams::FISTA::SQUARE, utl::StringToUpperCase(), utlGlobalException, and utlPrintVar.
bool IsOutsideBox | ( | const IndexType & | index, |
const std::vector< int > & | box | ||
) |
Definition at line 34 of file 4DImageMath.cxx.
Referenced by BinaryOPImage().
int main | ( | int | argc, |
char const * | argv[] | ||
) |
4DImage math. It works for both itk::Image<double,4> and itk::VectorImage<double,3>
Definition at line 687 of file 4DImageMath.cxx.
References GetImageFiles(), itk::Is3DImage(), and itk::IsVectorImage().
void SetOperationWithChecking | ( | int & | op, |
int | value | ||
) |
Definition at line 83 of file 4DImageMath.cxx.
References OP_NULL, and utlGlobalException.
Referenced by ImageMath().
std::string _axis |
Definition at line 79 of file 4DImageMath.cxx.
Referenced by ImageMath().
int _axisNumber =-1 |
Definition at line 80 of file 4DImageMath.cxx.
Referenced by ImageMath().
int _numberOfThreads = -1 |
Definition at line 78 of file 4DImageMath.cxx.
Referenced by ImageMath().
int _Operation = OP_NULL |
Definition at line 75 of file 4DImageMath.cxx.
Referenced by ImageMath().
std::vector<int> _realBox |
Definition at line 76 of file 4DImageMath.cxx.
std::vector<int> _size |
Definition at line 77 of file 4DImageMath.cxx.
Referenced by spams::BinaryHeap< T >::BinaryHeap(), spams::List< int >::clear(), spams::List< int >::empty(), spams::BinaryHeap< T >::insert(), spams::List< int >::List(), spams::List< int >::pop_front(), spams::List< int >::push_back(), spams::List< int >::push_front(), and spams::List< int >::size().