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

用於計算稀疏光流和使用魯棒區域性光流 (RLOF) 演算法進行特徵跟蹤的類。 更多...

#include <opencv2/optflow/rlofflow.hpp>

cv::optflow::SparseRLOFOpticalFlow 的協作圖

公共成員函式

virtual float getForwardBackward () const =0
 用於正向後向置信度檢查的閾值。
 
virtual Ptr< RLOFOpticalFlowParametergetRLOFOpticalFlowParameter () const =0
 RLOF 演算法的配置。
 
virtual void setForwardBackward (float val)=0
 用於正向後向置信度檢查的閾值。
 
virtual void setRLOFOpticalFlowParameter (Ptr< RLOFOpticalFlowParameter > val)=0
 RLOF 演算法的配置。
 
- 從 cv::SparseOpticalFlow 繼承的公共成員函式
virtual void calc (InputArray prevImg, InputArray nextImg, InputArray prevPts, InputOutputArray nextPts, OutputArray status, OutputArray err=cv::noArray())=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
 

靜態公共成員函式

static Ptr< SparseRLOFOpticalFlowcreate (Ptr< RLOFOpticalFlowParameter > rlofParam=Ptr< RLOFOpticalFlowParameter >(), float forwardBackwardThreshold=1.f)
 建立 SparseRLOFOpticalFlow 的例項。
 
- 從 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
 

詳細描述

用於計算稀疏光流和使用魯棒區域性光流 (RLOF) 演算法進行特徵跟蹤的類。

RLOF 是一種快速區域性光流方法,在 [241] [242] [243][244] 中描述,類似於 [37] 提出的金字塔迭代 Lucas-Kanade 方法。 更多詳細資訊和實驗可以在以下論文 [245] 中找到。 該實現源自 optflow::calcOpticalFlowPyrLK()。

有關 RLOF 配置,請參閱 optflow::RLOFOpticalFlowParameter 瞭解更多詳細資訊。 引數已在 [241][242][243][244] 中描述。

注意
僅在用 SSE4.1 編譯時才提供 SIMD 並行化。
另請參見
optflow::calcOpticalFlowSparseRLOF(), optflow::RLOFOpticalFlowParameter

成員函式文件

◆ create()

static Ptr< SparseRLOFOpticalFlow > cv::optflow::SparseRLOFOpticalFlow::create ( Ptr< RLOFOpticalFlowParameter > rlofParam = PtrRLOFOpticalFlowParameter >(),
float forwardBackwardThreshold = 1.f )
static
Python
cv.optflow.SparseRLOFOpticalFlow.create([, rlofParam[, forwardBackwardThreshold]]) -> retval
cv.optflow.SparseRLOFOpticalFlow_create([, rlofParam[, forwardBackwardThreshold]]) -> retval

建立 SparseRLOFOpticalFlow 的例項。

引數
rlofParam請參閱 setRLOFOpticalFlowParameter
forwardBackwardThreshold請參閱 setForwardBackward

◆ getForwardBackward()

virtual float cv::optflow::SparseRLOFOpticalFlow::getForwardBackward ( ) const
純虛擬函式
Python
cv.optflow.SparseRLOFOpticalFlow.getForwardBackward() -> retval

用於正向後向置信度檢查的閾值。

另請參見
setForwardBackward

◆ getRLOFOpticalFlowParameter()

virtual Ptr< RLOFOpticalFlowParameter > cv::optflow::SparseRLOFOpticalFlow::getRLOFOpticalFlowParameter ( ) const
純虛擬函式
Python
cv.optflow.SparseRLOFOpticalFlow.getRLOFOpticalFlowParameter() -> retval

RLOF 演算法的配置。

另請參見
setRLOFOpticalFlowParameter

◆ setForwardBackward()

virtual void cv::optflow::SparseRLOFOpticalFlow::setForwardBackward ( float val)
純虛擬函式
Python
cv.optflow.SparseRLOFOpticalFlow.setForwardBackward(val) ->

用於正向後向置信度檢查的閾值。

對於每個特徵點,都會計算一個運動向量 \( d_{I0,I1}(\mathbf{x}) \) 。 如果正向後向誤差

\[ EP_{FB} = || d_{I0,I1} + d_{I1,I0} || \]

大於此函式給出的閾值,則狀態將不會被以下向量場插值使用。 \( d_{I1,I0} \) 表示後向流。 請注意,僅當閾值 > 0 時才會應用正向後向測試。 這可能會導致運動估計的執行時間加倍。

另請參見
setForwardBackward

◆ setRLOFOpticalFlowParameter()

virtual void cv::optflow::SparseRLOFOpticalFlow::setRLOFOpticalFlowParameter ( Ptr< RLOFOpticalFlowParameter > val)
純虛擬函式
Python
cv.optflow.SparseRLOFOpticalFlow.setRLOFOpticalFlowParameter(val) ->

RLOF 演算法的配置。

另請參見
optflow::RLOFOpticalFlowParameter, getRLOFOpticalFlowParameter

該類的文件由以下檔案生成