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

所有求解器的基本接口。更多…

#include <opencv2/core/optim.hpp>

cv::MinProblemSolver 的协作图

类 Function
 表示正在优化的函数。更多…
 

公有成员函数

virtual Ptr< FunctiongetFunction () const =0
 获取被优化的函数。
 
virtual TermCriteria getTermCriteria () const =0
 获取此算法先前设置的终止条件。
 
virtual double minimize (InputOutputArray x)=0
 实际运行算法并执行最小化。
 
virtual void setFunction (const Ptr< Function > &f)=0
 设置被优化的函数。
 
virtual void setTermCriteria (const TermCriteria &termcrit)=0
 设置求解器的终止条件。
 
- 从 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
 

详细描述

所有求解器的基本接口。

成员函数文档

◆ getFunction()

virtual Ptr< Function > cv::MinProblemSolver::getFunction ( ) const
纯虚函数

获取被优化的函数。

被优化的函数由 Function 接口表示,该接口需要实现 calc(double*) 和 getDim() 方法来计算函数的导数。

返回值
指向实现 Function 接口的对象的智能指针——它表示正在优化的函数。如果到目前为止没有提供任何函数,则它可能为空。

◆ getTermCriteria()

virtual TermCriteria cv::MinProblemSolver::getTermCriteria ( ) const
纯虚函数

获取此算法先前设置的终止条件。

返回值
当前使用的终止条件的深拷贝。

◆ minimize()

virtual double cv::MinProblemSolver::minimize ( InputOutputArray x)
纯虚函数

实际运行算法并执行最小化。

唯一的输入参数确定起始单纯形的中心(大致上,它说明了从哪里开始),所有其他参数(终止条件、初始步长、要最小化的函数)都应该在此方法调用之前通过设置器设置,否则将使用默认值(并非总是合理的)。

参数
x初始点,它将成为初始单纯形的中心。算法终止后,它将设置为算法停止的点,即可能的最小值点。
返回值
在找到的点上函数的值。

◆ setFunction()

virtual void cv::MinProblemSolver::setFunction ( const Ptr< Function > & f)
纯虚函数

设置被优化的函数。

在调用 minimize() 之前,至少应该调用一次此方法,因为默认值不可用。

参数
f新的待优化函数。

◆ setTermCriteria()

virtual void cv::MinProblemSolver::setTermCriteria ( const TermCriteria & termcrit)
纯虚函数

设置求解器的终止条件。

在第一次调用 minimize() 之前,无需调用此方法,因为默认值是合理的。

当完成的函数评估次数超过 termcrit.maxCount,或者单纯形顶点的函数值在 termcrit.epsilon 范围内,或者单纯形变得如此之小以至于可以被一个边长为 termcrit.epsilon 的盒子包围时,算法 停止,以先发生者为准。

参数
termcrit使用的终止条件,表示为 cv::TermCriteria 结构。

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