OpenCV  3.0.0-rc1
Open Source Computer Vision
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | List of all members
cv::reg::Map Class Referenceabstract

Base class for modelling a Map between two images. More...

#include "map.hpp"

Inheritance diagram for cv::reg::Map:
cv::reg::MapAffine cv::reg::MapProjec cv::reg::MapShift

Public Member Functions

virtual ~Map (void)
 
virtual void compose (const Map &map)=0
 
virtual cv::Ptr< MapinverseMap (void) const =0
 
virtual void inverseWarp (const cv::Mat &img1, cv::Mat &img2) const =0
 
virtual void scale (double factor)=0
 
virtual void warp (const cv::Mat &img1, cv::Mat &img2) const
 

Detailed Description

Base class for modelling a Map between two images.

The class is only used to define the common interface for any possible map.

Constructor & Destructor Documentation

virtual cv::reg::Map::~Map ( void  )
virtual

Virtual destructor

Member Function Documentation

virtual void cv::reg::Map::compose ( const Map map)
pure virtual

Changes the map composing the current transformation with the one provided in the call. The order is first the current transformation, then the input argument.

Parameters
[in]mapTransformation to compose with.

Implemented in cv::reg::MapAffine, cv::reg::MapProjec, and cv::reg::MapShift.

virtual cv::Ptr<Map> cv::reg::Map::inverseMap ( void  ) const
pure virtual

Calculates the inverse map

Returns
Inverse map

Implemented in cv::reg::MapAffine, cv::reg::MapProjec, and cv::reg::MapShift.

virtual void cv::reg::Map::inverseWarp ( const cv::Mat img1,
cv::Mat img2 
) const
pure virtual

Warps image to a new coordinate frame. The calculation is img2(x)=img1(T(x)), so in fact this is the inverse warping as we are taking the value of img1 with the forward transformation of the points.

Parameters
[in]img1Original image
[out]img2Warped image

Implemented in cv::reg::MapAffine, cv::reg::MapProjec, and cv::reg::MapShift.

virtual void cv::reg::Map::scale ( double  factor)
pure virtual

Scales the map by a given factor as if the coordinates system is expanded/compressed by that factor.

Parameters
[in]factorExpansion if bigger than one, compression if smaller than one

Implemented in cv::reg::MapAffine, cv::reg::MapProjec, and cv::reg::MapShift.

virtual void cv::reg::Map::warp ( const cv::Mat img1,
cv::Mat img2 
) const
virtual

Warps image to a new coordinate frame. The calculation is img2(x)=img1(T^{-1}(x)), as we have to apply the inverse transformation to the points to move them to were the values of img2 are.

Parameters
[in]img1Original image
[out]img2Warped image

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