热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

MOTwithahierachicalsinglebranchnetwork

MOT论文阅读-单分支分层网络3、网络结构3.1、分层的单个分支网络3.2、改进的分层在线实例匹配损失4、实验部分4.1、实验设置4.2、实验结果与分析按照原论文中章节序号来制定本


MOT论文阅读-单分支分层网络

  • 3、网络结构
    • 3.1、分层的单个分支网络
    • 3.2、改进的分层在线实例匹配损失
  • 4、实验部分
    • 4.1、实验设置
    • 4.2、实验结果与分析



按照原论文中章节序号来制定本文的序号。


3、网络结构

网络结构
在这项工作中,我们提出了一个在线多目标跟踪框架,该框架具有一个分层的单分支网络,如图1所示。将视频帧输入分级单支路网络,可以得到所有目标检测结果和相应的重识别特征。然后,我们使用DeepSort框架获得目标轨迹。在本节中,我们首先在3.1节中介绍一种新的分层单支路网络的概述。然后,我们在3.2节描述了改进的分层在线实例匹配(iHOIM)损失函数,它明确地阐明了检测和重识别之间的关系。


3.1、分层的单个分支网络

如图2所示,该层次单一分支网络是基于Faster R-CNN与ResNet-50骨干组成的stem网络共享功能的学习,一个区域建议网络(RPN)生成对象的提议,对象位置的运动模型预测,和一个头部网络(R-CNN)用来做盒子回归。在网络的末端,在头部网络的顶部额外增加一个l2归一化的线性层来提取对象重id特征。
在训练过程中,我们将运动模型从分级单支路网络中移除。按照[15]中的配置,我们使用随机梯度下降(SGD)结合RPN损失(包括提案分类和回归损失)、RCNN盒回归损失和提议的iHOIM损失共同训练整个网络。
在推理过程中,我们首先将输入视频帧I输入到分级单支路网络中,一系列感兴趣区域Rt可以在RPN层获得,同时,应用运动模型预测物体位置Mt在现有轨迹Tt的基础上。其次,将Rt和Mt盒融合为对象区域建议Pt,它将被输入到头部网络,在网络的最后两层最后得到对应于输入视频帧Ft的目标检测结果Bt和reID特征。


3.2、改进的分层在线实例匹配损失

目前,单级网络通常都是基于提取的共享特征图,使用两个分离的分支来完成检测和ReID。这两种分支都没有研究两个子任务之间的竞争,这必然会影响跟踪性能。为了解决这一问题,Chen等人提出了HOIM loss,即将人检测和再识别的层次结构明确地整合到OIM [12] loss中。HOIM loss构建了三个不同的队列来存储有标记的人、无标记的人和背景嵌入。然而,它并不适用于MOT场景。
为了在MOT数据集上进行更有效的训练,我们提出了一种改进的分层在线实例匹配丢失算法。假设训练数据中有N个不同的恒等式,iHOIM构造了一个大小为Nxd的查找表来记忆标记的person embeddings和一个大小为Bxd的圆形queen来存储多个背景embeddings。查表和循环队列共同构成投影矩阵w2r (N+B) d。给定嵌入x 2rd的建议,我们可以通过计算一个线性投影得到x与存储的嵌入项之间的余弦距离,如下所示:
公式1
那么x属于任意个人或背景的概率就可以通过softmax函数计算出来,
公式2
式中,τ为控制概率分布柔软度的温度因子。然后,根据总概率的规律,建立描述目标检测和重识别之间相互关系的层次结构,如图3所示。(这个图我还没看懂)
图3
那么,x代表背景的概率(记为φ)也可以用同样的方式表示,
公式4
结合这两种概率,我们将目标检测损失表述为二进制交叉熵损失,其中y是一个二进制标号,如果x是人,y等于1,否则等于0。
对于第二层,我们遵循文献[12]来制定用于Re-ID的OIM损失。给定一个嵌入x, x是一个人并且属于身份k(表示为id = k)的概率可以通过softmax函数产生:
公式
然后,实例重识别的目标是最大化期望的对数似然:
在这里插入图片描述
最后,我们提出的iHOIM损失是两级损失的线性组合:
在这里插入图片描述
其中λ为LOIM的损失量。基于检测置信度p(λ)动态加权两个任务的重要性。该模型在检测得分较高时侧重于识别被检测的人,或侧重于检测任务。通过移除HOIM[15]丢失中未标记人的循环队列,我们的iHOIM丢失更加简单,占用的内存也更少。它不仅能够识别不同的人,还能从杂乱的背景中对人进行分类。因此,该方法具有更强的鲁棒性和更高的检测精度。
在训练期间,查找表以一个η的动量更新:
在这里插入图片描述
而圆形的模组则用新的来代替旧的嵌入物,以保持固定的尺寸。


4、实验部分


4.1、实验设置

本论文实验是在mot16和mot20上做的,用motchallenge基准上评价指标来评估方法,在推理和跟踪过程中,我们引入了DeepSORT[2]框架,基于提取的检测结果和相应的嵌入来跟踪多个目标。我们选择卡尔曼滤波作为运动模型,根据现有的轨迹预测目标位置,这些轨迹将被输入到层次网络中,并作为区域建议用于后续的目标检测。


4.2、实验结果与分析

测试集评价:表1中的实验结果表明,与其他先进的两阶段方法相比,我们提出的方法获得了最先进的性能。即使在非常拥挤的场景中,如mot20数据集,我们的方法仍然表现出色。结果表明,所提出的层次结构有效地统一了目标检测和重新识别两个任务。我们在mot16 / mot20上分别以1.6%/2.6%的MOTA击败了之前的最佳跟踪器,这归功于我们的分级网络的有效性。此外,我们的单阶段MOT框架具有较低的计算复杂度,比所列的两阶段MOT方法快5倍左右。IDSw和FP较高的原因是我们的模型只注重提高检测和再识别的质量,而对跟踪的优化关注较少,这可能是该工作未来的研究方向。
表1


推荐阅读
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文详细探讨了Java中的24种设计模式及其应用,并介绍了七大面向对象设计原则。通过创建型、结构型和行为型模式的分类,帮助开发者更好地理解和应用这些模式,提升代码质量和可维护性。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 深入解析RDMA中的队列对(Queue Pair)
    本文将详细探讨RDMA架构中的关键组件——队列对(Queue Pair,简称QP),包括其基本概念、硬件与软件实现、QPC的作用、QPN的分配机制以及用户接口和状态机。通过这些内容,读者可以更全面地理解QP在RDMA通信中的重要性和工作原理。 ... [详细]
  • 本文详细探讨了KMP算法中next数组的构建及其应用,重点分析了未改良和改良后的next数组在字符串匹配中的作用。通过具体实例和代码实现,帮助读者更好地理解KMP算法的核心原理。 ... [详细]
  • 深入解析Android自定义View面试题
    本文探讨了Android Launcher开发中自定义View的重要性,并通过一道经典的面试题,帮助开发者更好地理解自定义View的实现细节。文章不仅涵盖了基础知识,还提供了实际操作建议。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Søren Kierkegaard famously stated that life can only be understood in retrospect but must be lived moving forward. This perspective delves into the intricate relationship between our lived experiences and our reflections on them. ... [详细]
  • 计算机网络复习:第五章 网络层控制平面
    本文探讨了网络层的控制平面,包括转发和路由选择的基本原理。转发在数据平面上实现,通过配置路由器中的转发表完成;而路由选择则在控制平面上进行,涉及路由器中路由表的配置与更新。此外,文章还介绍了ICMP协议、两种控制平面的实现方法、路由选择算法及其分类等内容。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 本文详细介绍了Grand Central Dispatch (GCD) 的核心概念和使用方法,探讨了任务队列、同步与异步执行以及常见的死锁问题。通过具体示例和代码片段,帮助开发者更好地理解和应用GCD进行多线程开发。 ... [详细]
  • 并发编程 12—— 任务取消与关闭 之 shutdownNow 的局限性
    Java并发编程实践目录并发编程01——ThreadLocal并发编程02——ConcurrentHashMap并发编程03——阻塞队列和生产者-消费者模式并发编程04——闭锁Co ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
author-avatar
Cyndi丶先生
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有