Class to convert blocks of data from one type to another. More...
#include <itkConvertPixelBuffer.h>
Public Types | |
typedef OutputConvertTraits::ComponentType | OutputComponentType |
Static Public Member Functions | |
static void | Convert (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertVectorImage (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
Static Protected Member Functions | |
static void | ConvertGrayToGray (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertGrayToRGB (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertMultiComponentToRGB (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBAToRGB (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBToGray (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBToRGB (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertComplexToComplex (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertGrayToComplex (InputPixelType *inputData, OutputPixelType *OutputData, vcl_size_t size) |
static void | ConvertGrayToRGBA (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertMultiComponentToComplex (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertMultiComponentToGray (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertMultiComponentToRGBA (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBAToGray (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBAToRGBA (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertRGBToRGBA (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertTensor6ToTensor6 (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
static void | ConvertTensor9ToTensor6 (InputPixelType *inputData, OutputPixelType *outputData, vcl_size_t size) |
Class to convert blocks of data from one type to another.
ConvertPixelBuffer has a static method Convert(). It is used by itkImageFileReader to convert from an unknown type at run-time to the compile-time template pixel type in itkImageFileReader. To work with complex pixel types like RGB and RGBA a traits class is used. OutputConvertTraits() is the traits class. The default one used is DefaultConvertPixelTraits.
Definition at line 41 of file itkConvertPixelBuffer.h.
typedef OutputConvertTraits::ComponentType itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::OutputComponentType |
Determine the output data type.
Definition at line 46 of file itkConvertPixelBuffer.h.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::Convert | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static] |
General method converts from one type to another.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertComplexToComplex | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToComplex | ( | InputPixelType * | inputData, | |
OutputPixelType * | OutputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToGray | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convert to Gray output. Input values are cast to output values.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToRGB | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convert to RGB output. Each RGB output component is set the the input Gray value.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToRGBA | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convert to RGBA output.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToComplex | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToGray | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToRGB | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Conversion depends upon the number of components in the input. If the number of input components is 2, the output components are each set to the first input component attenuated by the second input component. This assumes that a two input pixel represents intensity and alpha. If the number of input components is not 2, the first three output components a are set to the first three input components. The remaining input components are ignored.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToRGBA | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToGray | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Weights convert from linear RGB to CIE luminance assuming a modern monitor. Values are attentuated by the Alpha channel. See Charles Poynton's Colour FAQ http://www.inforamp.net/~poynton/notes/colour_and_gamma/ColorFAQ.html
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToRGB | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Input values are attenuated by the Alpha channel.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToRGBA | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToGray | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Weights convert from linear RGB to CIE luminance assuming a modern monitor. See Charles Poynton's Colour FAQ
http://www.inforamp.net/~poynton/notes/colour_and_gamma/ColorFAQ.html
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToRGB | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Input values are cast component by component to output values.
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToRGBA | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertTensor6ToTensor6 | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convert tensor output. Each input is made into a 6 component symmetric pixel
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertTensor9ToTensor6 | ( | InputPixelType * | inputData, | |
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static, protected] |
Convertions related to complex
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertVectorImage | ( | InputPixelType * | inputData, | |
int | inputNumberOfComponents, | |||
OutputPixelType * | outputData, | |||
vcl_size_t | size | |||
) | [static] |