|
| template<typename T > |
| void | applyTo (T &) const |
| | Apply homography to a vector/array/list (type T) of points or lines. More...
|
| |
| void | buildFrom4Points (const std::vector< Point2d_< FPT >> &, const std::vector< Point2d_< FPT >> &, int method=1) |
| | Build Homography from 2 sets of 4 points. More...
|
| |
| void | copyTo (cv::Mat &, int type=CV_64F) const |
| | Copy matrix to Opencv cv::Mat. More...
|
| |
| void | init () |
| |
| Hmatrix_ & | inverse () |
| | Inverse matrix. More...
|
| |
| void | normalize () const |
| | Homography normalisation (const because flag _hasChanged declared as mutable) More...
|
| |
| bool | operator!= (const Hmatrix_ &h) const |
| | Comparison operator. Does normalization if required. More...
|
| |
| Hmatrix_ & | operator= (const Hmatrix_< M, FPT > &other) |
| | Assignment operator. More...
|
| |
| Hmatrix_ & | operator= (const cv::Mat &) |
| | Get homography from Opencv cv::Mat. More...
|
| |
| bool | operator== (const Hmatrix_ &h) const |
| | Comparison operator. Does normalization if required. More...
|
| |
|
| | Hmatrix_ () |
| | Default constructor, initialize to unit transformation. More...
|
| |
| template<typename T > |
| | Hmatrix_ (T val) |
| | Constructor, set homography to a rotation matrix of angle val. More...
|
| |
| template<typename T1 , typename T2 > |
| | Hmatrix_ (T1 tx, T2 ty) |
| | Constructor, set homography to a translation matrix ( see Hmatrix_( T ) ) More...
|
| |
| template<typename T > |
| | Hmatrix_ (const std::vector< std::vector< T >> &in) |
| | Constructor, used to fill with a vector of vector matrix. More...
|
| |
| template<typename T > |
| | Hmatrix_ (const std::array< std::array< T, 3 >, 3 > &in) |
| | Constructor, used to fill with a std::array. More...
|
| |
| | Hmatrix_ (const Hmatrix_< M, FPT > &other) |
| | Copy-constructor. More...
|
| |
| | Hmatrix_ (const cv::Mat &mat) |
| | Constructor used to initialise with a cv::Mat, call the assignment operator. More...
|
| |
|
| template<typename T > |
| Hmatrix_ & | addTranslation (T tx, T ty) |
| | Adds a translation tx,ty to the matrix. More...
|
| |
| template<typename T1 , typename T2 > |
| Hmatrix_ & | setTranslation (T1 tx, T2 ty) |
| | Sets the matrix as a translation tx,ty. More...
|
| |
| template<typename T > |
| Hmatrix_ & | addRotation (T theta) |
| | Adds a rotation with an angle theta (radians) to the matrix. More...
|
| |
| template<typename T > |
| Hmatrix_ & | setRotation (T theta) |
| | Sets the matrix as a rotation with an angle theta (radians) More...
|
| |
| template<typename T > |
| Hmatrix_ & | addScale (T k) |
| | Adds the same scale factor to the matrix. More...
|
| |
| template<typename T1 , typename T2 > |
| Hmatrix_ & | addScale (T1 kx, T2 ky) |
| | Adds a scale factor to the matrix. More...
|
| |
| template<typename T > |
| Hmatrix_ & | setScale (T k) |
| | Sets the matrix as a scaling transformation (same on two axis) More...
|
| |
| template<typename T1 , typename T2 > |
| Hmatrix_ & | setScale (T1 kx, T2 ky) |
| | Sets the matrix as a scaling transformation. More...
|
| |
| HOMOG2D_INUMTYPE | determ () const |
| | Return determinant of matrix. More...
|
| |
| matrix_t< FPT > & | getRaw () |
| |
| const matrix_t< FPT > & | getRaw () const |
| |
| Matrix_ & | inverse () |
| | Inverse matrix. More...
|
| |
| bool | isNormalized () const |
| |
| | Matrix_ () |
| | Constructor. More...
|
| |
| template<typename FPT2 > |
| | Matrix_ (const Matrix_< FPT2 > &other) |
| | Copy-Constructor. More...
|
| |
| template<typename T > |
| void | set (size_t r, size_t c, T v) |
| |
| Matrix_ & | transpose () |
| | Transpose and return matrix. More...
|
| |
| const FPT & | value (size_t r, size_t c) const |
| |
| FPT & | value (size_t r, size_t c) |
| |
| std::pair< int, int > | dsize () const |
| | Get data size expressed as number of bits for, respectively, mantissa and exponent. More...
|
| |
| Dtype | dtype () const |
| | Get numerical data type as a Dtype value, can be stringified with h2d::getString(Dtype) More...
|
| |
| template<typename T > |
| constexpr bool | isInside (const Common< T > &) const |
| | This function is a fallback for all sub-classes that do not provide such a method. More...
|
| |
| size_t | size () const |
| |
|
| template<typename T1 , typename T2 > |
| class | LPBase |
| |
| template<typename T , typename U > |
| Line2d_< T > | operator* (const Homogr_< U > &, const Line2d_< T > &) |
| |
| template<typename T , typename U > |
| Point2d_< T > | operator* (const Homogr_< U > &, const Point2d_< T > &) |
| |
| template<typename T , typename U , typename V > |
| base::LPBase< typename detail::HelperPL< T >::OtherType, V > | operator* (const Hmatrix_< typ::IsEpipmat, U > &h, const base::LPBase< T, V > &in) |
| |
| Hmatrix_ | operator* (const Hmatrix_ &h1, const Hmatrix_ &h2) |
| | Matrix multiplication, call the base class product. More...
|
| |
| std::ostream & | operator<< (std::ostream &f, const Hmatrix_ &h) |
| |
template<typename M, typename FPT>
class h2d::Hmatrix_< M, FPT >
A 2D homography, defining a planar transformation.
To define an affine or rigid transformation, you can use:
To add an affine or rigid transformation to the current one, you can use:
To return to unit transformation, use init()
Implemented as a 3x3 matrix
Templated by Floating-Point Type (FPT) and by type M (typ::IsEpipmat or typ::IsHomogr)