在Matlab下使用指标评估代码对多目标跟踪结果进行评测

本文介绍了多目标跟踪评估的具体步骤,包括下载评估代码、设置路径并编译、运行demo获取结果等。文中还提供了评估结果示例及如何解读各项指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多目标跟踪方面,已经读了不少论文,跑过部分开源代码,最近开始也着手实践,首先将指标评估这方面功夫做了下,虽然已有开源代码和作者对代码使用方法的介绍,但还是顺便记录下步骤方便日后工作。


步骤1:下载指标评估代码


首先在MOTChallenge上可以浏览并且下载历年的训练和测试图像序列,根据需要下载,每年的总文件大小5g左右。主要是包括了图像本身,每一种图像序列就有成百上千帧图像,不同大小的都有,所以整个文件是比较庞大的。如果只需要使用到gt和det,可以在网站上点击get detections and labels only,这里就大概10M不到。

然后在https://bitbucket.org/amilan/motchallenge-devkit/上download代码,大概7M。


下载下来的评估代码里有compile.m、evaluateDetection.m、evaluateTracking.m等文件,seqmaps里存放着包含不同年份train、test或all文件名的txt。



下载下来的数据文件就分为不同类型的测试训练图像序列,train的每类分别含有det(存放public detections)、img(存放图像序列)、gt(存放标注),test的每类则去掉了gt。下面以MOT16的train为例:





步骤2:编译+设置路径


首先用matlab进入到指标评估代码路径下,运行compile.m。

其次,作者已经写好了15年16年和17年Det的demo,只需要修改demo里你的benchmark文件存放路径和你已经生成的对应txt文件存放路径,就可以运行起来。下面以MOT16为例:



设置benchmarkGtDir变量为MOT16的训练文件路径(代码会自动在该文件路径下寻找gt.txt),evaluateTracking函数的第一个变量是使用到的图像序列名(包含在seqmaps文件下,不需要修改),第二个变量是你的算法生成的对应跟踪结果存放路径,剩下的两个变量也不用修改。

benchmarkGtDir变量(路径)下包含的文件有:


第二个变量(路径)下包含的文件有:


步骤3:运行demo


只要路径正确,没有缺漏文件,直接运行刚刚步骤2修改的demo就可以得到结果,下面是我的运行结果(使用没有调过参数的MOT17的IOU17算法生成,出自“High-Speed Tracking-by-Detection Without Using Image Information”,详见多目标跟踪竞赛结果摘要:Multiple Object Tracking Challenge 2017 Results):


可以看到这个结果里包含了17个指标参数,参考MOTChallenge提供的主要指标,可以根据以下这张表来选取需要的参数:



如果还没准备好跟踪结果文件,又想试一试多目标跟踪评估代码的,也可以直接使用代码里附带的一组results,就在代码目录下的res文件夹中,根据年份选择。虽然不知道来源何处,但和IOU17的结果也差不多:),如下:



到此为止,根据benchmark对多目标跟踪结果进行评测告一段落~

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值