OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::ximgproc::ContourFitting 类参考

用于ContourFitting算法的类。ContourFitting匹配两个轮廓\( z_a \)和\( z_b \)以最小化距离。更多…

#include <opencv2/ximgproc/fourier_descriptors.hpp>

cv::ximgproc::ContourFitting 的协作图

公共成员函数

 ContourFitting (int ctr=1024, int fd=16)
 使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]
 
void estimateTransformation (InputArray src, InputArray dst, OutputArray alphaPhiST, double &dist, bool fdContour=false)
 使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]
 
void estimateTransformation (InputArray src, InputArray dst, OutputArray alphaPhiST, double *dist=0, bool fdContour=false)
 使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]
 
int getCtrSize ()
 
int getFDSize ()
 
void setCtrSize (int n)
 设置在 estimateTransformation 中使用的傅里叶描述符的数量
 
void setFDSize (int n)
 当 estimateTransformation 使用 vector<Point> 时设置傅里叶描述符的数量
 
- 从 cv::Algorithm 继承的公共成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
virtual bool empty () const
 如果Algorithm为空(例如,在开始时或读取失败后),则返回 true。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 从文件存储中读取算法参数。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 将算法参数存储在文件存储中。
 
void write (FileStorage &fs, const String &name) const
 

其他继承的成员

- 从 cv::Algorithm 继承的静态公共成员函数
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 从文件中加载算法。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 从字符串加载算法。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 从文件节点读取算法。
 
- 从 cv::Algorithm 继承的受保护成员函数
void writeFormat (FileStorage &fs) const
 

详细描述

用于ContourFitting算法的类。ContourFitting匹配两个轮廓\( z_a \)和\( z_b \)以最小化距离。

\[ d(z_a,z_b)=\sum (a_n - s b_n e^{j(n \alpha +\phi )})^2 \]

其中\( a_n \)和\( b_n \)是\( z_a \)和\( z_b \)的傅里叶描述符,s 是缩放因子,\( \phi \)是角度旋转,\( \alpha \)是起始点因子调整

构造函数和析构函数文档

◆ ContourFitting()

cv::ximgproc::ContourFitting::ContourFitting ( int ctr = 1024,
int fd = 16 )
inline

使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]

参数
ctr傅里叶描述符的数量,等于重采样后轮廓点的数量。
fd定义第二个形状(目标)的轮廓。

成员函数文档

◆ estimateTransformation() [1/2]

void cv::ximgproc::ContourFitting::estimateTransformation ( InputArray 源图像,
InputArray 目标图像,
输出数组 alphaPhiST,
双精度浮点数 & 距离,
布尔值 fdContour = false )
Python
cv.ximgproc.ContourFitting.estimateTransformation(src, dst[, alphaPhiST[, fdContour]]) -> alphaPhiST, dist

使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]

参数
源图像定义第一个形状的轮廓。
目标图像定义第二个形状(目标)的轮廓。
alphaPhiST: \( \alpha \)=alphaPhiST(0,0), \( \phi \)=alphaPhiST(0,1) (弧度), s=alphaPhiST(0,2), Tx=alphaPhiST(0,3), Ty=alphaPhiST(0,4) 旋转中心
距离匹配后src和dst之间的距离。
fdContour为false时,src和dst是轮廓;为true时,src和dst是傅里叶描述符。

◆ estimateTransformation() [2/2]

void cv::ximgproc::ContourFitting::estimateTransformation ( InputArray 源图像,
InputArray 目标图像,
输出数组 alphaPhiST,
双精度浮点数指针 dist = 0,
布尔值 fdContour = false )
Python
cv.ximgproc.ContourFitting.estimateTransformation(src, dst[, alphaPhiST[, fdContour]]) -> alphaPhiST, dist

使用傅里叶描述符拟合两条闭合曲线。更多详细信息请参见[220][25]

参数
源图像定义第一个形状的轮廓。
目标图像定义第二个形状(目标)的轮廓。
alphaPhiST: \( \alpha \)=alphaPhiST(0,0), \( \phi \)=alphaPhiST(0,1) (弧度), s=alphaPhiST(0,2), Tx=alphaPhiST(0,3), Ty=alphaPhiST(0,4) 旋转中心
距离匹配后src和dst之间的距离。
fdContour为false时,src和dst是轮廓;为true时,src和dst是傅里叶描述符。

◆ getCtrSize()

int cv::ximgproc::ContourFitting::getCtrSize ( )
inline
Python
cv.ximgproc.ContourFitting.getCtrSize() -> 返回值
返回
傅里叶描述符的数量

◆ getFDSize()

int cv::ximgproc::ContourFitting::getFDSize ( )
inline
Python
cv.ximgproc.ContourFitting.getFDSize() -> 返回值
返回
用于最佳曲线匹配的傅里叶描述符数量

◆ setCtrSize()

void cv::ximgproc::ContourFitting::setCtrSize ( int n)
Python
cv.ximgproc.ContourFitting.setCtrSize(n) ->

设置在 estimateTransformation 中使用的傅里叶描述符的数量

参数
n傅里叶描述符的数量,等于重采样后轮廓点的数量。

◆ setFDSize()

void cv::ximgproc::ContourFitting::setFDSize ( int n)
Python
cv.ximgproc.ContourFitting.setFDSize(n) ->

当 estimateTransformation 使用 vector<Point> 时设置傅里叶描述符的数量

参数
n用于最佳曲线匹配的傅里叶描述符数量。

此类的文档是从以下文件生成的: