open_iA 2021.08
A tool for the visual analysis and processing of volumetric datasets, with a focus on industrial computed tomography.
Functions
iAToolsITK.cpp File Reference
#include "iAToolsITK.h"
#include "iAMathUtility.h"
#include "iATypedCallHelper.h"
#include <itkExtractImageFilter.h>
#include <itkStatisticsImageFilter.h>

Functions

template<class T >
void alloc_image_tmpl (iAITKIO::ImagePointer otherImg, iAITKIO::ImagePointer &result)
 
template<class T >
void alloc_image_tmpl2 (int const size[iAITKIO::m_DIM], double const spacing[iAITKIO::m_DIM], iAITKIO::ImagePointer &result)
 
iAITKIO::ImagePointer allocateImage (iAITKIO::ImagePointer img)
 
iAITKIO::ImagePointer allocateImage (int const size[iAITKIO::m_DIM], double const spacing[iAITKIO::m_DIM], itk::ImageIOBase::IOComponentType type)
 
iAITKIO::ImagePointer extractImage (iAITKIO::ImagePointer inImg, size_t const indexArr[iAITKIO::m_DIM], size_t const sizeArr[iAITKIO::m_DIM])
 extract part of an image as a new file More...
 
void getStatistics (iAITKIO::ImagePointer img, double *min, double *max, double *mean, double *stddev, double *variance, double *sum)
 
template<typename T >
void internalExtractImage (iAITKIO::ImagePointer inImg, size_t const indexArr[iAITKIO::m_DIM], size_t const sizeArr[iAITKIO::m_DIM], iAITKIO::ImagePointer &outImg)
 
template<typename T >
void internalGetStatistics (iAITKIO::ImagePointer img, double *min, double *max, double *mean, double *stddev, double *vari, double *sum)
 
template<class T >
void itkPixel (double &result, iAITKIO::ImagePointer img, iAITKIO::ImageBaseType::IndexType idx)
 
double itkPixel (iAITKIO::ImagePointer img, iAITKIO::ImageBaseType::IndexType idx)
 
template<class TImage >
void itkPixel2 (double &result, TImage *image, typename TImage::IndexType idx)
 
itk::ImageIOBase::IOPixelType itkPixelType (iAITKIO::ImagePointer image)
 
itk::ImageIOBase::IOComponentType itkScalarPixelType (iAITKIO::ImagePointer image)
 
template<class T >
void setITKPixel (double value, iAITKIO::ImagePointer img, iAITKIO::ImageBaseType::IndexType idx)
 
void setITKPixel (iAITKIO::ImagePointer img, iAITKIO::ImageBaseType::IndexType idx, double value)
 
template<class TImage >
void setITKPixel2 (double value, TImage *image, typename TImage::IndexType idx)
 
void storeImage (iAITKIO::ImagePtr image, QString const &filename, bool useCompression)
 

Function Documentation

◆ alloc_image_tmpl()

template<class T >
void alloc_image_tmpl ( iAITKIO::ImagePointer  otherImg,
iAITKIO::ImagePointer result 
)

◆ alloc_image_tmpl2()

template<class T >
void alloc_image_tmpl2 ( int const  size[iAITKIO::m_DIM],
double const  spacing[iAITKIO::m_DIM],
iAITKIO::ImagePointer result 
)

◆ allocateImage() [1/2]

◆ allocateImage() [2/2]

iAITKIO::ImagePointer allocateImage ( int const  size[iAITKIO::m_DIM],
double const  spacing[iAITKIO::m_DIM],
itk::ImageIOBase::IOComponentType  type 
)

◆ extractImage()

iAITKIO::ImagePointer extractImage ( iAITKIO::ImagePointer  inImg,
size_t const  indexArr[iAITKIO::m_DIM],
size_t const  sizeArr[iAITKIO::m_DIM] 
)

extract part of an image as a new file

◆ getStatistics()

void getStatistics ( iAITKIO::ImagePointer  img,
double *  min,
double *  max,
double *  mean,
double *  stddev,
double *  variance,
double *  sum 
)

◆ internalExtractImage()

template<typename T >
void internalExtractImage ( iAITKIO::ImagePointer  inImg,
size_t const  indexArr[iAITKIO::m_DIM],
size_t const  sizeArr[iAITKIO::m_DIM],
iAITKIO::ImagePointer outImg 
)

◆ internalGetStatistics()

template<typename T >
void internalGetStatistics ( iAITKIO::ImagePointer  img,
double *  min,
double *  max,
double *  mean,
double *  stddev,
double *  vari,
double *  sum 
)

◆ itkPixel() [1/2]

template<class T >
void itkPixel ( double &  result,
iAITKIO::ImagePointer  img,
iAITKIO::ImageBaseType::IndexType  idx 
)

◆ itkPixel() [2/2]

double itkPixel ( iAITKIO::ImagePointer  img,
iAITKIO::ImageBaseType::IndexType  idx 
)

Generic access to pixels of any ITK image as double. Slow! If you need to access more than a few pixels, convert the whole image first (maybe using templates) and then access directly!

◆ itkPixel2()

template<class TImage >
void itkPixel2 ( double &  result,
TImage *  image,
typename TImage::IndexType  idx 
)

◆ itkPixelType()

itk::ImageIOBase::IOPixelType itkPixelType ( iAITKIO::ImagePointer  image)

◆ itkScalarPixelType()

itk::ImageIOBase::IOComponentType itkScalarPixelType ( iAITKIO::ImagePointer  image)

◆ setITKPixel() [1/2]

template<class T >
void setITKPixel ( double  value,
iAITKIO::ImagePointer  img,
iAITKIO::ImageBaseType::IndexType  idx 
)

◆ setITKPixel() [2/2]

void setITKPixel ( iAITKIO::ImagePointer  img,
iAITKIO::ImageBaseType::IndexType  idx,
double  value 
)

◆ setITKPixel2()

template<class TImage >
void setITKPixel2 ( double  value,
TImage *  image,
typename TImage::IndexType  idx 
)

◆ storeImage()

void storeImage ( iAITKIO::ImagePtr  image,
QString const &  filename,
bool  useCompression 
)