[论文阅读笔记22]Identity-Quantity Harmonic Multi-Object Tracking

news2025/6/17 20:31:29

这是一篇优化匹配策略的文章, 通过密度估计的辅助, 估计一个边界框内有多少目标, 从而恢复遮挡的轨迹. 发表在IEEE TIP 2022.

论文地址: https://ieeexplore.ieee.org/abstract/document/9725267/


0. Abstract

通常的MOT算法在匹配阶段时, 都是通过线性指派问题求解, 即会计算一个代价矩阵, 例如代价矩阵的行表示轨迹, 列表示检测, 元素代表轨迹与检测之间的相似度. 往往是通过匈牙利算法等求解出代价矩阵的最佳匹配. 但是这都基于一个前提, 即对于代价矩阵 C ∈ R m × n C\in\mathbb{R}^{m\times n} CRm×n的匹配结果 A ∈ { 0 , 1 } m × n A\in\{0, 1\}^{m\times n} A{0,1}m×n, 满足
∑ i = 1 n A [ k , i ] = 1 , ∀ k = 1 , . . . , m ∑ i = 1 m A [ i , k ] = 1 , ∀ k = 1 , . . . , n \sum_{i = 1}^nA[k, i] = 1, \forall k=1, ..., m\\ \sum_{i = 1}^mA[i, k] = 1, \forall k=1, ..., n i=1nA[k,i]=1,k=1,...,mi=1mA[i,k]=1,k=1,...,n
换成白话就是检测与轨迹需要一一对应, 但这种情况对遮挡就不太友好, 因为一个检测框里面实际上可能有多个目标, 这样就会忽略被遮挡的目标. 为了解决这个问题, 作者将这种限制进行了松弛, 将MOT问题转换成了MIQP(Maximizing An Identity-Quantity Posterior)问题, 其实就是最大化后验概率.

1. Introduction

为了解决这个问题, 作者将普通MOT方法的ID识别部分与新提出的数量估计部分进行结合, 也就是对每一个检测, 都计算一个身份与数量的响应(identification and quantity response). 这就带来了两个问题:

  1. 如何计算一个detection box中的目标数量? 作者是通过VGG19密度估计网络实现的.
  2. 如果ID识别部分和数量估计部分发生冲突怎么办? 例如, ID识别部分说有两个轨迹以较大的概率与当前的检测匹配, 而数量估计部分说只有一个, 应该怎么处理? 作者实际上是通过简单的数学变换将二者结合了.

2. Method

2.0 问题表示

对于一共 T T T帧的检测集合 X = { X 1 , . . . , X T } \mathcal{X}=\{\mathcal{X}_1,...,\mathcal{X}_T\} X={X1,...,XT}, 目标的ID集合 Y = { Y 1 , . . . , Y T } \mathcal{Y}=\{\mathcal{Y}_1,...,\mathcal{Y}_T\} Y={Y1,...,YT}, 传统的MOT问题是求解如下最优化问题:

Y t ∗ = arg ⁡ max ⁡ Y t P ( Y t ∣ X t , Y 1 : t − 1 ) \mathcal{Y}_t^*=\arg\max_{\mathcal{Y}_t} P(\mathcal{Y}_t|\mathcal{X}_t,\mathcal{Y}_{1:t-1}) Yt=argYtmaxP(YtXt,Y1:t1)

而现在, 我们不仅要估计检测对应的目标ID, 还要估计检测对应的目标数量, 因此问题就转换成估计后验概率, 共同估计计数和ID:

max ⁡ Y t , C t P ( Y t , C t ∣ X t , Y 1 : t − 1 ) \max_{\mathcal{Y}_t, \mathcal{C}_t} P(\mathcal{Y}_t, \mathcal{C}_t|\mathcal{X}_t,\mathcal{Y}_{1:t-1}) Yt,CtmaxP(Yt,CtXt,Y1:t1)

其中 C \mathcal{C} C表示检测框中目标的计数集合.

2.1 整体流程

在这里插入图片描述
首先通过检测与轨迹的外观和运动特征构建相似度矩阵, 对相似度矩阵求解出每个轨迹属于某个检测的概率, 这一步和大多数MOT算法一样, 只是少了最后计算匹配那步.

随后利用密度估计网络计算bbox中的目标个数, 之后将二者结合计算出bbox中有几个目标, 随后更新轨迹即可.

下面逐一介绍.

2.1.1 ID识别模块

这部分比较常规, 构造相似度矩阵 S S S, 定义第 u u u个轨迹和第 v v v个检测的相似度为:

在这里插入图片描述
外观特征是通过外观提取网络提取的, 运动特征实际上就是Kalman预测的边界框和检测框的IoU. 得到 S S S后, 第 i i i个检测与第 n n n个轨迹匹配的概率就可以通过下式得出:

在这里插入图片描述

2.2.2 目标数量模块

对于密度估计网络, 输出的结果代表目标的个数, 即一个区域内包含目标的个数就是输出map的像素对应值的和. 为此, 我们可以通过求和估计每个检测框内的目标个数, 但是如果我们简单地分别计算每一个检测框中的数量, 我们会重复计算检测框交叉的那部分, 这样一来整个目标的总数就不对了, 如下图所示:

在这里插入图片描述
为此, 我们将像素点均摊到它属于的边界框中, 这样就不会重复计算, 如下式:

在这里插入图片描述
其中:

ξ ( ) \xi() ξ()表示检测框对应的像素区域. δ \delta δ是指示函数. 于是, 对于第 i i i个检测, 我们通过对其中的像素求和计算出个数:

在这里插入图片描述

2.2.3 身份-数量平衡

前面说过, 这两个部分得到的结果可能是互相矛盾的. 为此要将二者结合起来. 例如, 对于第 i i i个检测与第 n n n个轨迹的匹配, 如果匹配概率很低, 那不论第i个检测对应的框中包含多少个目标, 第 i i i个检测与第 n n n个轨迹都不太可能匹配; 反之, 如果匹配概率很高, 但第i个检测对应的框中就没有目标, 那也不行. 如果框中包含两个轨迹, 理想的情况是这两个轨迹属于这个框的概率各为0.5, 因此 c t i , n = 0.5 ∗ 2 = 1. c_t^{i,n}=0.5*2=1. cti,n=0.52=1.

于是定义: i i i个检测与第 n n n个轨迹匹配的可能性最终为:
在这里插入图片描述
所以 c t i , n c_t^{i,n} cti,n接近1的时候, 代表二者很可能匹配; 为0的时候代表二者不可能匹配.

在训练阶段, 就和真值进行比较就可以了, 采用回归形式的loss function:

在这里插入图片描述

在推理阶段, 如果 c t i , n c_t^{i,n} cti,n大于一定的阈值 α \alpha α, 我们就认为匹配, 因此一个detection bbox匹配轨迹ID的集合定义为:

在这里插入图片描述
那么无非分为以下几种情况:

  1. Z t i \mathcal{Z}_t^i Zti为空集, 这说明要么出现了新目标, 要么该检测为FP. 我们通过置信度筛选就可以了.
  2. Z t i \mathcal{Z}_t^i Zti中只有一个元素, 那么直接更新对应的轨迹
  3. Z t i \mathcal{Z}_t^i Zti中有多个元素, 分别更新对应的轨迹就可以了.

整个算法流程如下:

在这里插入图片描述

3. 评价

该工作的Implementation Details部分没什么可说的, 比较常规.

该工作最大的亮点在于解决一个detection bbox包含多个目标的问题, 采取了一种比较直接的方式, 即直接采用密度估计网络估计bbox中的目标数量, 和概率进行结合. 除此之外, 论文Multiplex Labeling Graph for Near-Online Tracking in Crowded Scenes(IEEE IoTJ 2022, 解读见[论文阅读笔记15]GNN在多目标跟踪中的应用)也是解决这个问题, 但它是通过图结构, 让一个node可以表示多个object实现的, 且那个工作是near-Online, 而本工作是Online的.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/411870.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

最近骗子有点多

就这几天,也就是这几天,我听到身边有两个人的家里人因为某某事情被骗。第一个是我旁边的同事,说是家里的老人被骗了好十几万,说是有一个高收益的旅行团,交钱了就免费旅游,旅游也是真去了,而且每…

一文弄懂访问者模式

关于设计模式,我们得结合生活中的案例来学习;最近我在网上也看了不少文章,今天想跟大家分享一下关于访问者模式的一些知识,先来看一个简单的案例吧。 相信大家都去过医院,看完病,医生都会给我们开一个处方…

数据结构:算法的时间复杂度和空间复杂度

Hello各位老铁们!我们又见面了,大家最近有没有坚持学习和敲代码呢?在这里小编就要督促一下大家了,我们每一天都敲一两道题,这样子久而久之的坚持下去你就会发现你已经在不知不觉的过程中变成了一个大佬。敲代码使我们快…

unity蒙板测试例子——传送门

返回目录 Unity蒙板测试例子——传送门一、例子介绍 大家好,我是阿赵。 蒙板测试(Stencil Test)是渲染管线的合并输出环节里面的一种测试,和透明度测试或者深度测试一样,它实际上也是控制颜色值是否应该显示出来的一种…

natapp + nginx 实现内网穿透

环境是我本地的win10 第一步:下载nginx压缩包并解压(这个自行百度吧) 第二步: 修改nginx的配置文件: 在最下方添加: #testserver {listen 8081;#你要映射的端口server_name localhost; #使用本地IPlocation / {proxy_pass…

面试官:如何搭建Prometheus和Grafana对业务指标进行监控?

Prometheus和Grafana都是非常流行的开源监控工具,可以协同使用来实现对各种应用程序、系统、网络和服务器等的监视和分析。 下面对Prometheus和Grafana进行简要介绍: Prometheus Prometheus是一款开源、云原生的系统和服务监控工具,它采用p…

戴尔惠普联想笔记本性价比(戴尔和联想笔记本性价比)

联想。 联想做笔记本时间长,售后、质量都不错,追求稳定,性价比合理,长久使用考虑,不会有太大笔记本毛病。 联想1984就开始进入笔记本电脑行业,由中科院投资,后来收购了IBM之后,笔记…

第13届蓝桥杯省赛真题剖析-2022年4月17日Scratch编程初中级组

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第122讲。 第13届蓝桥杯省赛举办了两次,这是2022年4月17日举行的第一次省赛,比赛仍然采取线上形…

Air32F103CBT6|CCT6|KEIL-uVsion5|本地编译|STClink|(6)、Air32F103编译下载

目录 一、环境搭建 准备工作 安装支持包 二、新建工程 添加外设库支持 测试代码 三、下载烧录 一、环境搭建 准备工作 安装MDK5,具体方法请百度,安装后需要激活才能编译大文件 下载安装AIR32F103的SDK:luatos-soc-air32f103: Air32f…

FL Studio2023中文版本水果编曲工具

编曲、剪辑、录音、混音,23余年的技术积淀和实力研发,FL Studio 已经从电音领域破圈,成功蜕变为全球瞩目的全能DAW,把电脑变成全功能音乐工作室,接下来我们会为您一一展示FL Studio 21也叫做水果音乐编曲软件&#xff…

Chat GPT太强,多种玩法曝光

1、模拟面试、考试,备考等,以面试为例,让它扮演一个角色 先让它扮演互联网行业的商业分析师 2、写各种发言稿、文章、报告,给它你的明确要求和目标,以发言稿为例,输入继续,可以持续优化 3、…

报名截至在即 | “泰迪杯”挑战赛最后一场赛前指导直播!

为推广我国高校数据挖掘实践教学,培养学生数据挖掘的应用和创新能力,增加校企交流合作和信息共享,提升我国高校的教学质量和企业的竞争能力,第十一届“泰迪杯”数据挖掘挑战赛(以下简称挑战赛)已于2023年3月…

白银实时行情操作中的一些错误及其解决办法(下)

小编根据大师,网络上的高手以及自己的经验整理出的一些交易中典型的错误,投资者可以参考参考,有则改之无则加勉~续上文…… 问题三:长线获利的交易不容易坚持同时陷入盘整或亏损的交易(特别是大仓持有的品种&#xff…

银行数字化转型导师坚鹏:ChatGPT解密与银行应用案例

ChatGPT解密与银行应用案例 ——开启人类AI新纪元 打造数字化转型新利器 课程背景: 很多企业和员工存在以下问题: 不清楚ChatGPT对我们有什么影响? 不知道ChatGPT的发展现状及作用? 不知道ChatGPT的银行业应用案例?…

dy对接接口获取数据

1.需求方: 1.已知账户,获取该账户下每天的发视频数据,同时获取一个视频连续30天的点赞数,分享数,评论数。 2.需求方确定在标题中附带来源和作者相关信息,从标题中提取该部分信息,作为原创和作者绩效考核。…

项目人力资源管理

相关概念 组织结构图:用图形表示项目汇报关系。最常用的有层次结构图、矩阵图、文本格式的角色描述等3种。 任务分配矩阵(或称责任分配矩阵)(RAM):用来表示需要完成的工作由哪个团队成员负责的矩阵,或需要完成的工作与哪个团队成员有关的矩阵。 一、规划人力资源管理(编…

【Mybatis源码分析】类型处理器(TypeHandler)及其注册

TypeHandler和TypeHandlerRegistryTypeHandlerTypeHandler 源码分析TypeHandler注册,TypeHandlerRegistry源码分析TypeHandler拓展案例总结TypeHandler 大伙都知道Mybatis是对JDBC的封装,那Mybatis是如何处理JDBC类型和Java类型之间的转换的呢&#xff…

图文在线翻译-文本翻译

随着国际交流不断增加,越来越多的企业需要将产品介绍、宣传文案等相关信息翻译成多种语言,以扩大海外市场。但传统的翻译过程通常比较繁琐,耗费时间和人力成本也相对较高。为此,我们推出了一款批量图文翻译软件,帮助企…

【设计模式之美 设计原则与思想:规范与重构】35 | 实战一(下):手把手带你将ID生成器代码从“能用”重构为“好用”

上一节课中,我们结合 ID 生成器代码讲解了如何发现代码质量问题。虽然 ID 生成器的需求非常简单,代码行数也不多,但看似非常简单的代码,实际上还是有很多优化的空间。综合评价一下的话,小王的代码也只能算是“能用”、…

Apache配置与应用和优化

--------构建虚拟 Web 主机--------虚拟Web主机指的是在同一台服务器中运行多个Web站点,其中每一个站点实际上并不独立占用整个服务器,因此被称为“虚拟”Web 主机。通过虚拟 Web 主机服务可以充分利用服务器的硬件资源,从而大大降低网站构建…