TermCriteria结构的使用(详细)
TermCriteria是许多opencv算法都在使用的迭代求解的结构
struct cv::TermCriteria(
Public:
//成员变量
enum
{
COUNT=1, //计算元素或者迭代次数最小值
MAX_ITER=COUNT, //最大迭代次数
EPS=2 //当满足该精确度时,迭代算法停止
};
//构造函数
TermCriteria::TermCriteria()
TermCriteria::TermCriteria(int type, int maxCount, double epsilon)
TermCriteria::TermCriteria(const CvTermCriteria& criteria)
//参数:
//type – 终止条件类型:
//maxCount – 计算的迭代数或者最大元素数
//epsilon – 当达到要求的精确度或参数的变化范围时,迭代算法停止
//type可选:
//TermCriteria::COUNT //达到最大迭代次数 =TermCriteria::MAX_ITER
//TermCriteria::EPS //达到精度
//TermCriteria::COUNT + TermCriteria::EPS //以上两种同时作为判定条件
);
举例子:
TermCriteria criteria = TermCriteria(TermCriteria::EPS + TermCriteria::COUNT, 10, 0.1);
//COUNT=MAX_ITER
通过初始化的criteria后,就可以作为变量提供给opencv需要迭代的算法中作为其中一个参数。