ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
itk::OpenCVVideoCapture< TVideoStream > Class Template Reference

#include <itkOpenCVVideoCapture.h>

+ Inheritance diagram for itk::OpenCVVideoCapture< TVideoStream >:
+ Collaboration diagram for itk::OpenCVVideoCapture< TVideoStream >:

Detailed Description

template<class TVideoStream>
class itk::OpenCVVideoCapture< TVideoStream >

This class implements OpenCV's VideoCapture API and takes an itk VideoStream as input.

This implementation of cv::VideoCapture provides the additional method open( itk::VideoStream* ) to "open" video data from an ITK pipeline. The traditional open methods will throw exceptions, so it can only be used to access the output of an ITK video pipeline from an OpenCV capture context.

Definition at line 41 of file itkOpenCVVideoCapture.h.

Public Types

typedef VideoStreamType::FrameType FrameType
 
typedef FrameType::PixelType PixelType
 
typedef OpenCVVideoCapture
< VideoStreamType
Self
 
typedef TVideoStream VideoStreamType
 

Public Member Functions

virtual double get (int propId)
 
virtual const char * GetNameOfClass () const
 
virtual bool grab ()
 
virtual bool isOpened () const
 
virtual bool open (const std::string &)
 
virtual bool open (int)
 
virtual bool open (VideoStreamType *videoStream)
 
 OpenCVVideoCapture ()
 
 OpenCVVideoCapture (VideoStreamType *videoStream)
 
virtual Selfoperator>> (cv::Mat &image)
 
virtual bool read (cv::Mat &image)
 
virtual void release ()
 
virtual bool retrieve (cv::Mat &image, int channel=0)
 
virtual bool set (int propId, double value)
 
virtual ~OpenCVVideoCapture ()
 

Static Public Attributes

static const unsigned int Dimensions = FrameType::ImageDimension
 

Protected Attributes

int m_FourCC
 
double m_FpS
 
VideoStreamTypem_VideoStream
 

Member Typedef Documentation

template<class TVideoStream >
typedef VideoStreamType::FrameType itk::OpenCVVideoCapture< TVideoStream >::FrameType

Definition at line 50 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
typedef FrameType::PixelType itk::OpenCVVideoCapture< TVideoStream >::PixelType

Definition at line 51 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
typedef OpenCVVideoCapture<VideoStreamType> itk::OpenCVVideoCapture< TVideoStream >::Self

Definition at line 49 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
typedef TVideoStream itk::OpenCVVideoCapture< TVideoStream >::VideoStreamType

-CONSTRUCTORS AND DESTRUCTOR--------------------------------------—— ITK stype typedefs

Definition at line 48 of file itkOpenCVVideoCapture.h.

Constructor & Destructor Documentation

template<class TVideoStream >
itk::OpenCVVideoCapture< TVideoStream >::OpenCVVideoCapture ( )

Constructor that initializes internal VideoStream to null

template<class TVideoStream >
itk::OpenCVVideoCapture< TVideoStream >::OpenCVVideoCapture ( VideoStreamType videoStream)

Constructor that takes a VideoStream as input

template<class TVideoStream >
virtual itk::OpenCVVideoCapture< TVideoStream >::~OpenCVVideoCapture ( )
inlinevirtual

Destructor that does nothing. The VideoStream will be freed by the source that generated it.

Definition at line 62 of file itkOpenCVVideoCapture.h.

Member Function Documentation

template<class TVideoStream >
virtual double itk::OpenCVVideoCapture< TVideoStream >::get ( int  propId)
virtual

Get a property

template<class TVideoStream >
virtual const char* itk::OpenCVVideoCapture< TVideoStream >::GetNameOfClass ( ) const
virtual

ITK's type info

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::grab ( )
virtual

-FRAME ACCESS-----------------------------------------------------—— Grab the next frame from the VideoStream

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::isOpened ( ) const
inlinevirtual

Check if the VideoStream is null

Definition at line 91 of file itkOpenCVVideoCapture.h.

References itk::OpenCVVideoCapture< TVideoStream >::m_VideoStream.

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::open ( const std::string &  )
inlinevirtual

-OPEN CLOSE FUNCTIONALITY-----------------------------------------—— overload reading from file and camera just to throw exceptions

Definition at line 72 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::open ( int  )
inlinevirtual

Definition at line 79 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::open ( VideoStreamType videoStream)
virtual

Add an open method that takes a TemporalDataObject. This checks to make sure that it can be cast to a VideoStream

template<class TVideoStream >
virtual Self& itk::OpenCVVideoCapture< TVideoStream >::operator>> ( cv::Mat &  image)
virtual

Stream the next frame into the provided image. Equivalent to grab() + retrieve(image, 0)

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::read ( cv::Mat &  image)
virtual

non-operator version of >>'s functionality

template<class TVideoStream >
virtual void itk::OpenCVVideoCapture< TVideoStream >::release ( )
virtual

Just set the internal pointer to null. Let the upstream filters take care of actually freeing the memory

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::retrieve ( cv::Mat &  image,
int  channel = 0 
)
virtual

Access the current frame of the VideoStream

template<class TVideoStream >
virtual bool itk::OpenCVVideoCapture< TVideoStream >::set ( int  propId,
double  value 
)
virtual

-PROPERTIES-------------------------------------------------------—— Set a property

Member Data Documentation

template<class TVideoStream >
const unsigned int itk::OpenCVVideoCapture< TVideoStream >::Dimensions = FrameType::ImageDimension
static

Definition at line 52 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
int itk::OpenCVVideoCapture< TVideoStream >::m_FourCC
protected

Definition at line 130 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
double itk::OpenCVVideoCapture< TVideoStream >::m_FpS
protected

Property members

Definition at line 129 of file itkOpenCVVideoCapture.h.

template<class TVideoStream >
VideoStreamType* itk::OpenCVVideoCapture< TVideoStream >::m_VideoStream
protected

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