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

该类的文档由以下文件生成