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

此采样器基于粒子滤波。更多…

#include <opencv2/tracking/tracking_internals.hpp>

cv::detail::tracking::TrackerSamplerPF 的协作图

结构体 Params
 此结构体包含采样算法过程中所有可变参数。以下是公开的结构体及其成员,并简要解释了其与上述算法工作原理的讨论。更多…
 

公有成员函数

 TrackerSamplerPF (const Mat &chosenRect, const TrackerSamplerPF::Params &parameters=TrackerSamplerPF::Params())
 构造函数。
 
- 继承自 cv::detail::tracking::TrackerContribSamplerAlgorithm 的公有成员函数
虚函数 ~TrackerContribSamplerAlgorithm ()
 析构函数。
 
String getClassName () const
 获取特定 TrackerContribSamplerAlgorithm 的名称。
 
虚函数 bool sampling (const Mat &image, const Rect &boundingBox, std::vector< Mat > &sample) CV_OVERRIDE
 从图像中的位置开始计算区域。
 
- 继承自 cv::detail::tracking::TrackerSamplerAlgorithm 的公有成员函数
虚函数 ~TrackerSamplerAlgorithm ()
 

保护成员函数

bool samplingImpl (const Mat &image, Rect boundingBox, std::vector< Mat > &sample) CV_OVERRIDE
 
- 继承自 cv::detail::tracking::TrackerContribSamplerAlgorithm 的保护成员函数

其他继承成员

- 继承自 cv::detail::tracking::TrackerContribSamplerAlgorithm 的静态公有成员函数
静态 Ptr< TrackerContribSamplerAlgorithmcreate (const String &trackerSamplerType)
 通过跟踪采样器类型创建 TrackerContribSamplerAlgorithm
 
- 继承自 cv::detail::tracking::TrackerContribSamplerAlgorithm 的保护属性
String className
 

详细描述

此采样器基于粒子滤波。

原则上,可以将其视为执行某种优化(实际上,此跟踪器使用opencv的optim模块),其中跟踪器试图在给定帧中找到最“相似”于初始矩形(通过构造函数给出的矩形)的矩形。

执行的优化是随机的,有点类似于遗传算法,在接收到每个新图像(通过 TrackerSamplerPF::sampling() 提交)时,我们从boundingBox包围的区域开始,然后生成几个“扰动”的框,选择最类似于原始框的那些框。此选择轮重复几次。最后,我们希望只剩下最有希望的框,并将这些框组合起来生成图像的子矩形,将其作为单个元素放入数组sample中。

需要注意的是,“相似性”的定义是基于比较两个矩形的直方图。实验表明,如果目标被假定为强烈改变其尺寸,则跟踪器并不非常成功。

构造函数和析构函数文档

◆ TrackerSamplerPF()

cv::detail::tracking::TrackerSamplerPF::TrackerSamplerPF ( const Mat & chosenRect,
const TrackerSamplerPF::Params & parameters = TrackerSamplerPF::Params() )

构造函数。

参数
chosenRect初始矩形,应该包含我们要跟踪的目标。
parameters

成员函数文档

◆ samplingImpl()

bool cv::detail::tracking::TrackerSamplerPF::samplingImpl ( const Mat & image,
Rect boundingBox,
std::vector< Mat > & sample )
protectedvirtual

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