OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::MinProblemSolver 類參考abstract

所有求解器的基本介面。 更多...

#include <opencv2/core/optim.hpp>

cv::MinProblemSolver 的協作圖

類  函式
 表示正在最佳化的函式。 更多...
 

公共成員函式

virtual Ptr< FunctiongetFunction () const =0
 最佳化函式的 Getter。
 
virtual TermCriteria getTermCriteria () const =0
 獲取此演算法先前設定的終止條件。
 
virtual double minimize (InputOutputArray x)=0
 實際執行演算法並執行最小化。
 
virtual void setFunction (const Ptr< Function > &f)=0
 最佳化函式的 Setter。
 
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
純虛擬函式

最佳化函式的 Getter。

最佳化的函式由 Function 介面表示,該介面需要導數來實現 calc(double*) 和 getDim() 方法來評估函式。

返回
指向實現 Function 介面的物件的智慧指標 - 它表示正在最佳化的函式。 如果到目前為止沒有給出函式,則它可以為空。

◆ getTermCriteria()

virtual TermCriteria cv::MinProblemSolver::getTermCriteria ( ) const
純虛擬函式

獲取此演算法先前設定的終止條件。

返回
當前使用的終端條件的深層副本。

◆ minimize()

virtual double cv::MinProblemSolver::minimize ( InputOutputArray x)
純虛擬函式

實際執行演算法並執行最小化。

唯一的輸入引數確定起始單純形的質心(粗略地說,它告訴從哪裡開始),所有其他引數(終止條件、初始步長、要最小化的函式)都應該在呼叫此方法之前透過 setter 設定,否則將使用預設值(並非總是明智的)。

引數
x初始點,它將成為初始單純形的質心。 演算法終止後,它將被設定為演算法停止的點,即可能的最小值點。
返回
在該點找到的函式值。

◆ setFunction()

virtual void cv::MinProblemSolver::setFunction ( const Ptr< Function > & ◆ hashtableResize())
純虛擬函式

最佳化函式的 Setter。

它應該在呼叫* minimize() 之前至少呼叫一次,因為預設值不可用。

引數
◆ hashtableResize()要最佳化的新函式。

◆ setTermCriteria()

virtual void cv::MinProblemSolver::setTermCriteria ( const TermCriteria & 終止條件)
純虛擬函式

設定求解器的終止標準。

此方法不必在首次呼叫 minimize() 之前呼叫,因為預設值是合理的。

Algorithm 在完成的函式評估次數超過 termcrit.maxCount 時,當單純形的頂點處的函式值在 termcrit.epsilon 範圍內時,或者單純形變得太小以至於可以包含在具有 termcrit.epsilon 邊的框中時停止,以先發生者為準。

引數
終止條件要使用的終止條件,表示為 cv::TermCriteria 結構。

此類的文件是從以下檔案生成的