OpenCV  4.10.0
开源计算机视觉库
正在加载...
正在搜索...
无匹配项
| 公共成员函数 | 所有成员列表
cv::MinProblemSolver 类参考抽象类

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

#include <opencv2/core/optim.hpp>

cv::MinProblemSolver 的协作图

class  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 边缘的盒子包围时,Algorithm 停止,无论哪种情况先发生。

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

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