MOT学习日记

本文探讨了多目标跟踪(MOT)领域的几个关键算法,包括Sort、DeepSort、MOTDT、ByteTrack和FairMOT。DeepSort通过去除分类层,仅用作特征提取以提高效率。MOTDT引入了候选框得分和细化,防止漏检。ByteTrack依赖于检测结果,其核心是BYTE数据关联方法。FairMOT指出 anchor-based 方法在追踪中的局限。同时,文章提到了Deepsort中的卡尔曼滤波(KF)缺陷及改进策略,如级联匹配和轨迹插值。评价指标如MOTA和IDF1用于衡量跟踪性能。

祖师爷:Sort、DeepSort 

deepsort中的reid 去除最后分类用的全连接层,即只利用该网络做特征提取不进行后续分类

2018 MOTDT:Real-Time Multiple People Tracking with Deeply Learned Candidate Selection and Person

MOTDT多目标跟踪论文学习笔记_x_yan033的博客-优快云博客_motdt

多目标追踪笔记四:MOTDT:Real-Time Multiple People Tracking with Deeply Learned Candidate Selection and Person_ronales的博客-优快云博客_motdt

 核心:候选框Score及Refine;为了避免漏检,所以分级数据关联

2021 ByteTrack 

目标跟踪之 MOT 经典算法:ByteTrack 算法原理以及多类别跟踪_kuweicai的博客-优快云博客_多类别跟踪

ByteTrack 的核心在于 BYTE 一种数据关联方法

ByteTrack 没有采用外表特征进行匹配,所以跟踪的效果非常依赖检测的效果,也就是说如果检测器的效果很好,跟踪也会取得不错的效果,但是如果检测的效果不好,那么会严重影响跟踪的效果

(用到工地的话 工人的服装十分相似 所以可能不需要reid)

ifzhang/ByteTrack: [ECCV 2022] ByteTrack: Multi-Object Tracking by Associating Every Detection Box (github.com)

bug 1. No module named 'yolox'   Successfully installed pycocotools-2.0.4 yolox-0.3.0

但是又引起了 cannot import name 'plot_tracking'  貌似是因为yolox版本不对

setup用的是 yolox==0.1.0     

新开一个 不要忘记python setup.py develop   就不会有yolox问题

(36条消息) ByteTrack翻译_叫我老安的博客-优快云博客 

”低置信度检测框有时指示对象的存在,例如被遮挡的物体。过滤掉这些对象会导致 MOT 出现不可逆转的错误,并带来不可忽略的缺失检测和碎片化轨迹。

byteTrack=yolox+BYTE  

Similarity#1(IOU或Re-ID)   Similarity#2(单独使用 IoU )  相似度 分别用在第一次匹配和第二次匹配 

评价指标 

MOTA综合考虑轨迹中的FN、FP、IDSW的现象(即FP虚检、FN漏检、ID交换)更加注重检测
在这里插入图片描述

IDF1则是综合考虑IDP和IDR(综合ID准确率和ID召回率)
在这里插入图片描述

与MOTA不同的是,IDF1中的TP、FP、FN这些指标,是考虑进ID信息的,而MOTA中仅IDSW项考虑了ID信息。从这个角度讲,IDF1对轨迹中ID信息的准确性更敏感 

2019 JDE(Towards Real-Time Multi-Object Tracking)

问题:deepsort等mot都是检测后跟踪

【多目标跟踪论文阅读笔记——JDE(Towards Real-Time Multi-Object Tracking)】_书玮嘎的博客-优快云博客_jde多目标跟踪

FairMot

(35条消息) 论文阅读-FairMOT:《A Simple Baseline for Multi-Object Tracking》_DJames23的博客-优快云博客_fairmot论文

这篇论文讲到anchor-based不适合做目标追踪

 BoT-SORT: Robust Associations Multi-Pedestrian Tracking

Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking

主要改进KF

估计噪声->   OCM *

误差累积->   OOS (没看懂)

以估计为中心 -> OCR   

IOU匹配:计算检测框和预测框之间的iou,1-iou得到cost matrix,把cost matrix作为匈牙利算法的输入,得到线性匹配的结果

但是级联匹配的cost matrix包含了运动特征(lamda=0)和外观特征

下图为OOS 额外加入了轨迹的运动方向

 

deepsort中KF的缺陷:

Deep sort算法论文解读_mini猿要成长QAQ的博客-优快云博客_deepsort论文解读

解决措施:用级联匹配

但是bytetrack ocsort中同样存在 并且为了解决误差累积 他们解决用的是轨迹插值 而不是最多30次的kf

意义:获取更好的KF估计 

StrongSORT: Make DeepSORT Great Again

### MOT in IT Context 在信息技术(IT)领域中,MOT 可以指代多个技术概念或工具,具体取决于上下文。以下是与 MOT 相关的几个主要技术概念: #### 1. **Memory-Optimized Table (MOT)** 从 SQL Server 2016 开始支持 In-Memory OLTP 技术,其中 Memory-Optimized Table(简称 MOT)是其核心组件之一[^3]。MOT 是一种内存数据库表,数据完全驻留在内存中,从而显著提高了查询和更新性能。MOT 的特点包括: - 数据读取和写入操作仅在内存中完成,不会产生磁盘 I/O。 - 在硬盘上维护的数据副本仅用于数据持久化,只有在数据库恢复时才会使用。 - 适用于高并发、低延迟的应用场景。 #### 2. **Multi-Object Tracking (MOT)** 在计算机视觉领域,MOT 指的是多目标跟踪(Multi-Object Tracking)。这是一个重要的研究方向,广泛应用于自动驾驶、视频监控和机器人导航等领域[^4]。MOT 的关键任务包括: - 跟踪视频中多个移动对象的轨迹。 - 实时检测和关联目标,确保每个目标在整个视频序列中具有唯一的标识。 - 常用算法包括背景扣除法、深度学习(DL)模型和卡尔曼滤波器等。 #### 3. **Scene Understanding and Representation** 在自动驾驶(AVs)和机器人技术中,MOT 还可以与场景理解(Scene Understanding)相关联。场景理解涉及对环境的感知和建模,通常结合深度学习技术和经典的时间序列模式识别方法[^2]。例如: - 使用 DL 技术进行目标检测和分类。 - 结合机器人领域的定位和地图构建(SLAM)技术,实现精确的场景表示和定位。 #### 4. **Atomic Block (ATOMIC)** 虽然 ATOMIC Block 并不直接称为 MOT,但它与事务管理密切相关。在数据库事务中,ATOMIC Block 确保一组语句以原子方式执行:要么全部成功提交,要么全部回滚[^1]。这种特性对于保证数据一致性至关重要。 --- ### 示例代码:MOT in Multi-Object Tracking 以下是一个简单的 Python 示例,展示如何使用 OpenCV 和背景扣除算法实现基本的多目标跟踪功能[^4]。 ```python import cv2 # 创建背景扣除器 background_subtractor = cv2.createBackgroundSubtractorMOG2() # 打开视频文件 video_capture = cv2.VideoCapture('input_video.mp4') while True: ret, frame = video_capture.read() if not ret: break # 应用背景扣除 fg_mask = background_subtractor.apply(frame) # 查找轮廓 contours, _ = cv2.findContours(fg_mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) for contour in contours: if cv2.contourArea(contour) > 500: # 过滤小区域 (x, y, w, h) = cv2.boundingRect(contour) cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2) # 显示结果 cv2.imshow('Multi-Object Tracking', frame) if cv2.waitKey(30) & 0xFF == ord('q'): break video_capture.release() cv2.destroyAllWindows() ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值