ITK  4.4.0
Insight Segmentation and Registration Toolkit
Classes | Public Types | Static Public Member Functions | Private Member Functions | List of all members
itk::OpenCVImageBridge Class Reference

#include <itkOpenCVImageBridge.h>

Detailed Description

This class provides static methods to convert between OpenCV images and itk::Image.

This class provides methods for the following conversions: IplImage -> itk::Image cv::Mat -> itk::Image itk::Image -> IplImage itk::Image -> cv::Mat

Each method is templated over the type of itk::Image used. The conversions copy the data and convert between types if necessary.

Definition at line 48 of file itkOpenCVImageBridge.h.

Classes

struct  HandleRGBPixel
 
struct  HandleRGBPixel< RGBPixel< TValue >, VDimension >
 

Public Types

typedef OpenCVImageBridge Self
 

Static Public Member Functions

template<class TOutputImageType >
static TOutputImageType::Pointer CVMatToITKImage (const cv::Mat &in)
 
template<class TOutputImageType >
static TOutputImageType::Pointer IplImageToITKImage (const IplImage *in)
 
template<class TInputImageType >
static cv::Mat ITKImageToCVMat (const TInputImageType *in, bool force3Channels=false)
 
template<class TInputImageType >
static IplImage * ITKImageToIplImage (const TInputImageType *in, bool force3Channels=false)
 

Private Member Functions

 OpenCVImageBridge (const Self &)
 
void operator= (const Self &)
 

Static Private Member Functions

template<class TOutputImageType , class TPixel >
static void ITKConvertIplImageBuffer (const IplImage *in, TOutputImageType *out, int iDepth)
 

Member Typedef Documentation

ITK stype typedefs

Definition at line 53 of file itkOpenCVImageBridge.h.

Constructor & Destructor Documentation

itk::OpenCVImageBridge::OpenCVImageBridge ( const Self )
private

Member Function Documentation

template<class TOutputImageType >
static TOutputImageType::Pointer itk::OpenCVImageBridge::CVMatToITKImage ( const cv::Mat &  in)
static

cv::Mat -> itk::Image

template<class TOutputImageType >
static TOutputImageType::Pointer itk::OpenCVImageBridge::IplImageToITKImage ( const IplImage *  in)
static

IplImage* -> itk::Image

template<class TOutputImageType , class TPixel >
static void itk::OpenCVImageBridge::ITKConvertIplImageBuffer ( const IplImage *  in,
TOutputImageType *  out,
int  iDepth 
)
inlinestaticprivate

Steps involved in this method are: 1) Handle converting between colorspaces 2) Allocate the output image 3) Create a copy of the current IplImage's buffer without any padding (slow but necessary) 4) Copy the buffer and convert the pixels if necessary

Definition at line 82 of file itkOpenCVImageBridge.h.

References itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::Convert(), and itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertVectorImage().

template<class TInputImageType >
static cv::Mat itk::OpenCVImageBridge::ITKImageToCVMat ( const TInputImageType *  in,
bool  force3Channels = false 
)
static

itk::Image -> cv::Mat

template<class TInputImageType >
static IplImage* itk::OpenCVImageBridge::ITKImageToIplImage ( const TInputImageType *  in,
bool  force3Channels = false 
)
static

itk::Image -> IplImage*

void itk::OpenCVImageBridge::operator= ( const Self )
private

The documentation for this class was generated from the following file: