虽然很短为方便还是放个目录吧
本人初入目标跟踪及图像相关内容,纯小白一只,以下内容如有错误还请指教!
简介
如题,由于目前在做基于传统方法的长时跟踪,仅仅使用ALR(Average Overlap Ratio)或OLR(Overlap Ratio)以及VOT toolkit中的跟踪失败次数进行统计和评估已经不满足需求。
short-term与long-term的区别
如果有同样在做这些的应该知道,长时跟踪相对于短时跟踪最大的区别并不是跟踪时间的长短,其在跟踪序列上最大的区别体现为是否会出现目标被完全遮挡或完全脱离图像,数帧后返回;在tracker上最大的区别体现为是否具有在某些条件下再检测功能(并不一定必须要目标检测严格定义上的检测模块,只需具备一定功能即可,这里tracker分为4类,分别是ST0、ST1、LT0、LT1,不详细说了,有想了解的看一下VOT2018的结果,论文里有讲)
具体的三个评估指标的公式解读与个人理解
这篇文章主要是为了说一下对于长时跟踪的评估指标,因为需要有丢失再检测能力,所以用Overlap显然不能满足要求了,这无法表现出和short-term的区别,所以在“Lukezic, A., Zajc, L.C., Voj´ır, T., Matas, J., Kristan, M.: Now you see me: evaluating performance in long-term visual tracking. CoRR abs/1804.07056 (2018),”这篇文章中定义了3个新的长时跟踪检测指标,分别就是Pr、Re、F-Score。
下面大致说一下我对这个的理解,因为涉及到LaTeX的公式渲染问题,放图片了。
评估指标的简易C++实现
evaluation.hpp节选
//用于评估跟踪算法的类,内包含Roi,Pr,Re,F-score的计算
//同时我认为分类阈值$\tau_{\theta}$不应书写在该评估类,在tracker需要用到分类阈值和分类网络计算的结果对比来决定是否二次查找
class Evaluation {
private:
double OLRofPr;//追踪精度Pr计算尚未完成时的累加OLR
double OLRofRe;//回归率Re计算尚未完成时的累加OLR
unsigned int frameOfPr;//追踪精度Pr计算尚未完成时符合条件的累计帧数,论文中的Np
unsigned int frameOfRe;//回归率Re计算尚未完成时符合条件的累计帧数,论文中的Ng
public:
explicit Evaluation(void);//初始化类
bool initEval(void);//初始化类
float countOLR(int trackXmin, int trackYmin, int trackXmax, int trackYmax,
int giveXmin, int giveYmin, int giveXmax, int giveYmax