OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::detail::tracking::tbm::ITrackerByMatching 类参考抽象的

基于匹配的跟踪算法接口。 更多...

#include <opencv2/tracking/tracking_by_matching.hpp>

cv::detail::tracking::tbm::ITrackerByMatching 的协作图

公共类型

using Descriptor = std::shared_ptr<IImageDescriptor>
 
using Distance = std::shared_ptr<IDescriptorDistance>
 

公有成员函数

virtual ~ITrackerByMatching ()
 跟踪器的析构函数。
 
virtual size_t count () const =0
 返回计数的人数。
 
virtual const DescriptordescriptorFast () const =0
 快速描述符获取器。
 
virtual const DescriptordescriptorStrong () const =0
 强描述符获取器。
 
virtual const DistancedistanceFast () const =0
 快速距离获取器。
 
virtual const DistancedistanceStrong () const =0
 强距离获取器。
 
virtual cv::Mat drawActiveTracks (const cv::Mat &frame)=0
 在给定帧上绘制活动轨迹。
 
virtual void dropForgottenTrack (size_t track_id)=0
 dropForgottenTrack 检查轨迹是否在很久以前丢失并将其从内存中移除。
 
virtual void dropForgottenTracks ()=0
 dropForgottenTracks 从内存中移除很久以前丢失的轨迹。
 
virtual std::unordered_map< size_t, std::vector< cv::Point > > getActiveTracks () const =0
 获取要绘制的活动轨迹。
 
virtual bool isTrackForgotten (size_t id) const =0
 isTrackForgotten 如果轨迹被遗忘,则返回 true。
 
virtual bool isTrackValid (size_t track_id) const =0
 isTrackValid 检查轨迹是否有效(持续时间 > 阈值)。
 
virtual const TrackerParamsparams () const =0
 管道参数获取器。
 
virtual void process (const cv::Mat &frame, const TrackedObjects &detections, uint64_t timestamp)=0
 处理给定帧。
 
virtual void setDescriptorFast (const Descriptor &val)=0
 快速描述符设置器。
 
virtual void setDescriptorStrong (const Descriptor &val)=0
 强描述符设置器。
 
virtual void setDistanceFast (const Distance &val)=0
 快速距离设置器。
 
virtual void setDistanceStrong (const Distance &val)=0
 强距离设置器。
 
virtual void setParams (const TrackerParams &params)=0
 管道参数设置器。
 
virtual TrackedObjects trackedDetections () const =0
 获取已跟踪的检测。
 
virtual const std::unordered_map< size_t, Track > & tracks () const =0
 tracks 返回所有轨迹,包括已遗忘的(很久以前丢失的)。
 

详细描述

基于匹配的跟踪算法接口。

此类是基于匹配的跟踪系统的实现。它使用两种不同的外观度量来计算边界框之间的亲和度:一种快速描述符和一种强描述符。每次都解决分配问题。在本例中,分配问题是如何在现有轨迹和最近检测到的对象之间建立对应关系。第一步是计算轨迹和检测之间的亲和矩阵。亲和度等于 appearance_affinity * motion_affinity * shape_affinity。其中 appearance 为 1 - distance(tracklet_fast_dscr, detection_fast_dscr)。第二步是使用 Kuhn-Munkres 算法解决分配问题。如果轨迹和检测之间以低置信度(亲和度)建立了对应关系,则使用强描述符来确定轨迹和检测之间是否存在对应关系。

成员 Typedef 文档

◆ Descriptor

◆ Distance

构造函数 & 析构函数文档

◆ ~ITrackerByMatching()

virtual cv::detail::tracking::tbm::ITrackerByMatching::~ITrackerByMatching ( )
inlinevirtual

跟踪器的析构函数。

成员函数文档

◆ count()

virtual size_t cv::detail::tracking::tbm::ITrackerByMatching::count ( ) const
纯虚函数

返回计数的人数。

返回
计数的人数。

◆ descriptorFast()

virtual const Descriptor & cv::detail::tracking::tbm::ITrackerByMatching::descriptorFast ( ) const
纯虚函数

快速描述符获取器。

返回
管道中使用的快速描述符。

◆ descriptorStrong()

virtual const Descriptor & cv::detail::tracking::tbm::ITrackerByMatching::descriptorStrong ( ) const
纯虚函数

强描述符获取器。

返回
管道中使用的强描述符。

◆ distanceFast()

virtual const Distance & cv::detail::tracking::tbm::ITrackerByMatching::distanceFast ( ) const
纯虚函数

快速距离获取器。

返回
管道中使用的快速距离。

◆ distanceStrong()

virtual const Distance & cv::detail::tracking::tbm::ITrackerByMatching::distanceStrong ( ) const
纯虚函数

强距离获取器。

返回
管道中使用的强距离。

◆ drawActiveTracks()

virtual cv::Mat cv::detail::tracking::tbm::ITrackerByMatching::drawActiveTracks ( const cv::Mat & frame)
纯虚函数

在给定帧上绘制活动轨迹。

参数
[输入]frame彩色图像 (CV_8UC3)。
返回
带有绘制的活动轨迹的彩色图像。

◆ dropForgottenTrack()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::dropForgottenTrack ( size_t 轨迹ID)
纯虚函数

dropForgottenTrack 检查轨迹是否在很久以前丢失并将其从内存中移除。

◆ dropForgottenTracks()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::dropForgottenTracks ( )
纯虚函数

dropForgottenTracks 从内存中移除很久以前丢失的轨迹。

◆ getActiveTracks()

virtual std::unordered_map< size_t, std::vector< cv::Point > > cv::detail::tracking::tbm::ITrackerByMatching::getActiveTracks ( ) const
纯虚函数

获取要绘制的活动轨迹。

返回
活动轨迹。

◆ isTrackForgotten()

virtual bool cv::detail::tracking::tbm::ITrackerByMatching::isTrackForgotten ( size_t id) const
纯虚函数

isTrackForgotten 如果轨迹被遗忘,则返回 true。

参数
id轨迹 ID。
返回
如果轨迹被遗忘,则为 true。

◆ isTrackValid()

virtual bool cv::detail::tracking::tbm::ITrackerByMatching::isTrackValid ( size_t 轨迹ID) const
纯虚函数

isTrackValid 检查轨迹是否有效(持续时间 > 阈值)。

参数
轨迹ID被检查轨迹的索引。
返回
如果轨迹持续时间超过某个预定义值,则为 True。

◆ params()

virtual const TrackerParams & cv::detail::tracking::tbm::ITrackerByMatching::params ( ) const
纯虚函数

管道参数获取器。

返回
管道参数。

◆ process()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::process ( const cv::Mat & frame,
const TrackedObjects & 检测,
uint64_t timestamp )
纯虚函数

处理给定帧。

参数
[输入]frame彩色图像 (CV_8UC3)。
[输入]检测帧上检测到的对象。
[输入]timestamp时间戳必须为正值,并以毫秒为单位

◆ setDescriptorFast()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::setDescriptorFast ( const Descriptor & val)
纯虚函数

快速描述符设置器。

参数
[输入]val管道中使用的快速描述符。

◆ setDescriptorStrong()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::setDescriptorStrong ( const Descriptor & val)
纯虚函数

强描述符设置器。

参数
[输入]val管道中使用的强描述符。

◆ setDistanceFast()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::setDistanceFast ( const Distance & val)
纯虚函数

快速距离设置器。

参数
[输入]val管道中使用的快速距离。

◆ setDistanceStrong()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::setDistanceStrong ( const Distance & val)
纯虚函数

强距离设置器。

参数
[输入]val管道中使用的强距离。

◆ setParams()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::setParams ( const TrackerParams & params)
纯虚函数

管道参数设置器。

参数
[输入]params管道参数。

◆ trackedDetections()

virtual TrackedObjects cv::detail::tracking::tbm::ITrackerByMatching::trackedDetections ( ) const
纯虚函数

获取已跟踪的检测。

返回
已跟踪的检测。

◆ tracks()

virtual const std::unordered_map< size_t, Track > & cv::detail::tracking::tbm::ITrackerByMatching::tracks ( ) const
纯虚函数

tracks 返回所有轨迹,包括已遗忘的(很久以前丢失的)。

返回
轨迹集合 {ID, 轨迹}。

本类的文档生成自以下文件