ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
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 58 of file itkOpenCVImageBridge.h.

Classes

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

Public Types

using Self = OpenCVImageBridge
 

Static Public Member Functions

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

Static Private Member Functions

template<typename InputPixelType, typename OutputPixelType>
static void checkMatchingTypes (unsigned int outChannels)
 
template<typename TOutputImageType, typename TPixel>
static void ITKConvertImageBuffer (const char *in, TOutputImageType *out, unsigned int inChannels, int imgWidth, int imgHeight, int widthStep)
 
template<typename TOutputImageType, typename TPixel>
static void ITKConvertIplImageBuffer (const IplImage *in, TOutputImageType *out, unsigned int iDepth)
 
template<typename TOutputImageType, typename TPixel>
static void ITKConvertMatImageBuffer (const cv::Mat &in, TOutputImageType *out)
 

Member Typedef Documentation

◆ Self

Member Function Documentation

◆ checkMatchingTypes()

template<typename InputPixelType, typename OutputPixelType>
static void itk::OpenCVImageBridge::checkMatchingTypes ( unsigned int outChannels)
inlinestaticprivate

Definition at line 206 of file itkOpenCVImageBridge.h.

Referenced by ITKConvertIplImageBuffer(), and ITKConvertMatImageBuffer().

◆ CVMatToITKImage()

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

cv::Mat -> itk::Image

◆ IplImageToITKImage()

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

IplImage* -> itk::Image

◆ ITKConvertImageBuffer()

template<typename TOutputImageType, typename TPixel>
static void itk::OpenCVImageBridge::ITKConvertImageBuffer ( const char * in,
TOutputImageType * out,
unsigned int inChannels,
int imgWidth,
int imgHeight,
int widthStep )
inlinestaticprivate

◆ ITKConvertIplImageBuffer()

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

Steps involved in this method are: 1) Handle converting between color spaces 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 94 of file itkOpenCVImageBridge.h.

References checkMatchingTypes(), itk::FixedArray< ValueType, 1 >::Dimension, and ITKConvertImageBuffer().

◆ ITKConvertMatImageBuffer()

template<typename TOutputImageType, typename TPixel>
static void itk::OpenCVImageBridge::ITKConvertMatImageBuffer ( const cv::Mat & in,
TOutputImageType * out )
inlinestaticprivate

◆ ITKImageToCVMat()

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

itk::Image -> cv::Mat

◆ ITKImageToIplImage()

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

itk::Image -> IplImage*


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