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

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

#include <opencv2/tracking/tracking_by_matching.hpp>

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

公共类型

使用 Descriptor = std::shared_ptr<IImageDescriptor>
 
使用 Distance = std::shared_ptr<IDescriptorDistance>
 

公共成员函数

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

详细描述

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

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

成员类型定义文档

◆ Descriptor

◆ Distance

构造函数和析构函数文档

◆ ~ITrackerByMatching()

virtual cv::detail::tracking::tbm::ITrackerByMatching::~ITrackerByMatching ( )
内联虚函数

跟踪器的析构函数。

成员函数文档

◆ 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)
纯虚函数

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

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

◆ dropForgottenTrack()

virtual void cv::detail::tracking::tbm::ITrackerByMatching::dropForgottenTrack ( size_t track_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 track_id) const
纯虚函数

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

参数
track_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 )
纯虚函数

处理给定帧。

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

◆ setDescriptorFast()

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

快速描述符设置器。

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

◆ setDescriptorStrong()

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

强描述符设置器。

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

◆ setDistanceFast()

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

快速距离设置器。

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

◆ setDistanceStrong()

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

强距离设置器。

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

◆ setParams()

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

管道参数设置器。

参数
[in]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, track}。

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