NANA
函数
geometry warp
geometry warp 的协作图:

函数

template<typename _Tp >
void NANA::ComputerGeometry::warpAffinePoint (const Matrix &M, const PointXY_< _Tp > &src, PointXY_< _Tp > &dst)
 对当前点集进行放射变换 更多...
 
template<typename _Tp >
void NANA::ComputerGeometry::warpPerspectivePoint2D (const Matrix &M, const PointXY_< _Tp > &src, PointXY_< _Tp > &dst)
 实现点集的透视变换矩阵 透视变换矩阵大小: \(3 \times 3\) 更多...
 

详细描述

函数说明

◆ warpAffinePoint()

template<typename _Tp >
void NANA::ComputerGeometry::warpAffinePoint ( const Matrix M,
const PointXY_< _Tp > &  src,
PointXY_< _Tp > &  dst 
)

对当前点集进行放射变换

仿射变换矩阵大小: \(2 \times 3\)

\[\begin{bmatrix} x'_i \\ y'_i\\1 \end{bmatrix} = \texttt{map_matrix} \cdot \begin{bmatrix} x_i \\ y_i \\ 1 \end{bmatrix}\]

where

\[dst(i)=(x'_i,y'_i), src(i)=(x_i, y_i), i=0,1,2\]

参数
[in]constPointXY_<_Tp> & src 原点
[out]PointXY_<_Tp>& dst 目标点

在文件 warp.hpp40 行定义.

◆ warpPerspectivePoint2D()

template<typename _Tp >
void NANA::ComputerGeometry::warpPerspectivePoint2D ( const Matrix M,
const PointXY_< _Tp > &  src,
PointXY_< _Tp > &  dst 
)

实现点集的透视变换矩阵 透视变换矩阵大小: \(3 \times 3\)

\[(x, y) \rightarrow (x'/w, y'/w)\]

where

\[(x', y', w') = \texttt{mat} \cdot \begin{bmatrix} x & y & 1 \end{bmatrix}\]

and w = \left\begin{matrix} w^{'}\quad if \quad(w' \ne 0)\ {\infty} \quad{otherwise} \end{matrix}\right.

注解
实现二维点集的透视变换

在文件 warp.hpp65 行定义.