OmniConversion< ConverterT, AngleT, ImageT, PointT > Class Template Reference

#include <OmniConversion.hh>

Inheritance diagram for OmniConversion< ConverterT, AngleT, ImageT, PointT >:

Inheritance graph
[legend]
Collaboration diagram for OmniConversion< ConverterT, AngleT, ImageT, PointT >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class ConverterT, class AngleT, class ImageT, class PointT>
class OmniConversion< ConverterT, AngleT, ImageT, PointT >

With templates there's no need to define an abstract class that defines the interface to the Strategy.
Parameters:
ConverterT Conversion concrete class. For example OmniFastLookupTable or OmniGCardConverter
AngleT Base unit used for angle. It can be for example "int" or "double".
ImageT Usually IplImage, the OpenCV standard.
PointT Usually CvPoint, the OpenCV standard.

Definition at line 49 of file OmniConversion.hh.

Public Member Functions

 OmniConversion (ConverterT *conv)
 Constructor.
virtual ~OmniConversion ()
template<class OtherAngleT>
ImageT * omni2pano (ImageT *omni_frame, OmniAngle< OtherAngleT > &IN_interval)
 Conversion between omni frame and panoramic one using an user-defined angle type.
template<class FromAngleT, class ToAngleT>
void angle_type_conversion (OmniAngle< FromAngleT > &omniangle_from, OmniAngle< ToAngleT > &omniangle_to)
 Usually used to convert from an OmniAngle<double> to an OmniAngle<int>.
void pano2omni_xy (PointT *pano_point, AngleT theta_start, PointT *OUT_omni_point)
 Converts a panoimage xy coord to a omniimage xy coord.
bool is_initialized ()
 Specify whether the class is initialized or not.
AngleT get_omni_center_x ()
AngleT get_omni_center_y ()
AngleT get_min_radius ()
AngleT get_max_radius ()

Private Attributes

ConverterT * _conv


Constructor & Destructor Documentation

template<class ConverterT, class AngleT, class ImageT, class PointT>
OmniConversion< ConverterT, AngleT, ImageT, PointT >::OmniConversion ( ConverterT *  conv  ) 

Parameters:
conv Concrete conversion class
See also:
OmniFastLookupTable, OmniGCardConverter

Definition at line 113 of file OmniConversion.hh.

template<class ConverterT, class AngleT, class ImageT, class PointT>
OmniConversion< ConverterT, AngleT, ImageT, PointT >::~OmniConversion (  )  [virtual]

Definition at line 119 of file OmniConversion.hh.

References NULL.


Member Function Documentation

template<class ConverterT, class AngleT, class ImageT, class PointT>
template<class FromAngleT, class ToAngleT>
void OmniConversion< ConverterT, AngleT, ImageT, PointT >::angle_type_conversion ( OmniAngle< FromAngleT > &  omniangle_from,
OmniAngle< ToAngleT > &  omniangle_to 
)

Anyway it's let to the user to define the kind on conversion.

Parameters:
omniangle_from Source angle type
omniangle_to Destination angle type

Definition at line 139 of file OmniConversion.hh.

Referenced by CvFaceTrack< ConverterT, AngleT >::cvTrackNextFrame(), and OmniMotionDetecting< ConverterT, AngleT >::fast_update_mhi().

Here is the caller graph for this function:

template<class ConverterT, class AngleT, class ImageT, class PointT>
AngleT OmniConversion< ConverterT, AngleT, ImageT, PointT >::get_max_radius (  ) 

Definition at line 166 of file OmniConversion.hh.

template<class ConverterT, class AngleT, class ImageT, class PointT>
AngleT OmniConversion< ConverterT, AngleT, ImageT, PointT >::get_min_radius (  ) 

Definition at line 172 of file OmniConversion.hh.

template<class ConverterT, class AngleT, class ImageT, class PointT>
AngleT OmniConversion< ConverterT, AngleT, ImageT, PointT >::get_omni_center_x (  ) 

Definition at line 154 of file OmniConversion.hh.

Referenced by CvFaceTrack< ConverterT, AngleT >::cvTrackNextFrame(), and OmniMotionDetecting< ConverterT, AngleT >::fast_update_mhi().

Here is the caller graph for this function:

template<class ConverterT, class AngleT, class ImageT, class PointT>
AngleT OmniConversion< ConverterT, AngleT, ImageT, PointT >::get_omni_center_y (  ) 

Definition at line 160 of file OmniConversion.hh.

Referenced by CvFaceTrack< ConverterT, AngleT >::cvTrackNextFrame(), and OmniMotionDetecting< ConverterT, AngleT >::fast_update_mhi().

Here is the caller graph for this function:

template<class ConverterT, class AngleT, class ImageT, class PointT>
bool OmniConversion< ConverterT, AngleT, ImageT, PointT >::is_initialized (  ) 

Definition at line 178 of file OmniConversion.hh.

template<class ConverterT, class AngleT, class ImageT, class PointT>
template<class OtherAngleT>
ImageT * OmniConversion< ConverterT, AngleT, ImageT, PointT >::omni2pano ( ImageT *  omni_frame,
OmniAngle< OtherAngleT > &  IN_interval 
)

Parameters:
omni_frame IplImage representing an omnidirectional image.
IN_interval Angle interval you want to convert to panoramic.

Definition at line 127 of file OmniConversion.hh.

References NULL.

Referenced by CvFaceTrack< ConverterT, AngleT >::cvTrackNextFrame().

Here is the caller graph for this function:

template<class ConverterT, class AngleT, class ImageT, class PointT>
void OmniConversion< ConverterT, AngleT, ImageT, PointT >::pano2omni_xy ( PointT *  pano_point,
AngleT  theta_start,
PointT *  OUT_omni_point 
)

This function is useful if you want to pass from a omni2pano's image point with a start_angle theta back to the point of the original omni image.

Parameters:
pano_point The point in the panoramic image we want to convert.
theta_start The angle of the point.
OUT_omni_point The resulting point.
Note:
Often this function does not return the *exact* point.
Bug:
Should be revised and tested more.

Definition at line 146 of file OmniConversion.hh.


Member Data Documentation

template<class ConverterT, class AngleT, class ImageT, class PointT>
ConverterT* OmniConversion< ConverterT, AngleT, ImageT, PointT >::_conv [private]

Definition at line 102 of file OmniConversion.hh.


The documentation for this class was generated from the following file:
Generated on Tue Dec 26 10:37:40 2006 for Omnimeeting by  doxygen 1.4.7