VOT2016数据集groundtruth每行有八个数据的原因

在使用vot数据集时一个令人疑惑的地方是,一般来说groundtruth由四个值(cx,cy,w,h)(矩形中心坐标加矩形长宽)或者(x,y,w,h)(左上角点坐标和长宽)四个数据进行表示即可,但是在vot数据集中每一个groundtruth确有8个数值。例如:vot2016 bag下的groundtruth.txt的第一行为
334.02,128.36,438.19,188.78,396.39,260.83,292.23,200.41
有八个数据的原因是因为groundtruth是由矩形框的四个角点表示的,也就是说每个角点由顺序上相邻的两个数字表示,上例中对应以下四个角点
(334.02,128.36),(438.19,188.78),(396.39,260.83),(292.23,200.41)
此时,四个角点确定的bounding box并不是与坐标轴平行的,是有一定旋转角度的矩形框。查阅相关资料得知存在两种矩形框的表示方法:轴对齐的(axially aligned bounding box)或是任意方向的(oriented bounding box),详情可以参考这篇博客。

在vot2016结果的论文里有解释,这样做是为了寻找同时使得boundingbox中属于目标的像素数最大和boundingbox中不属于目标的像素数最小,具体内容参看论文。
所以如果需要使用轴对齐的bounding box,就需要对数据进行转化,github项目pysot(位于/pysot-master/utils/bbox.py)提供的代码如下:
VOT2016数据集groundtruth每行有八个数据的原因_第1张图片
bounding box长和宽乘以了系数s,至于为什么这样处理,还没有搞清楚,稍后补充。

你可能感兴趣的:(目标跟踪)