深度学习篇---OC-SORT简介

OC-SORT(Observation-Centric SORT)是一种以观测为中心的多目标跟踪算法,旨在解决传统 SORT 算法在目标遮挡、外观变化和复杂交互场景下关联准确性不足的问题。以下是其详细介绍:

核心创新点

  • 以观测为中心的在线平滑(OOS):该策略旨在缓解卡尔曼滤波器(KF)在长时间遮挡或非线性运动时因缺乏观测数据导致的误差累积问题。当目标被遮挡时,OOS 通过引入历史观测数据建立虚拟轨迹,在目标重新出现时反向修正 KF 的状态参数,从而减少累积误差。例如,当目标短暂消失后,OOS 利用其消失前的观测值生成虚拟轨迹,并基于新观测值对轨迹进行平滑校准,避免因预测偏差导致的跟踪漂移。
  • 以观测为中心的恢复(ORU):ORU 专门处理因短时遮挡导致的轨迹中断问题。当目标重新出现时,ORU 尝试将目标的最后一次有效观测值与新到达的检测框进行关联,而非依赖 KF 的预测结果。例如,若目标在第 t 帧丢失并在第 t+k 帧重新出现,ORU 会直接比较第 t 帧的观测位置与第 t+k 帧的检测位置,通过几何相似性(如 IoU)判断是否为同一目标。这种方法减少了对预测的依赖,尤其适用于遮挡频繁或运动突变的场景。
  • 以观测为中心的动量(OCM):OCM 通过将轨迹的方向一致性融入数据关联的代价矩阵,优化目标匹配的准确性。传统方法仅依赖位置或速度的相似性,而 OCM 额外考虑轨迹运动方向的连续性。具体而言,OCM 计算轨迹与当前检测框的速度方向差异,并将此差异作为关联代价的一部分。例如,若某轨迹历史运动方向与新检测框的速度方向一致,则关联代价更低,从而优先匹配。这一设计有效解决了线性运动假设下因方向突变(如转弯)导致的误匹配问题。

算法原理

  • 运动一致性约束:利用轨迹历史运动模式提高关联鲁棒性,通过计算轨迹与检测之间的运动方向相似性,来度量运动相似性。
  • 轨迹恢复机制:解决短期遮挡导致的轨迹中断。维护一个候选轨迹池,对未匹配的检测进行逆向关联,使用滑动窗口匹配历史观测,当 ReID_score > τ_app 且 IoU > τ_geo 时,认为是同一目标。

状态向量设计

采用 8 维状态向量,其中(xc​,yc​)为中心坐标,w,h为宽高,x˙c​等为对应速度。当检测丢失时,采用虚拟观测更新。

性能评估

在 MOT17 数据集上,OC-SORT 的典型指标表现出色,如 MOTA 达到 63.2%,IDF1 达到 68.5%,ID Switches 为 534,相比 SORT 和 DeepSORT 有显著提升。

应用建议

检测器选择推荐 YOLOv5 或 Faster R - CNN,同时需要根据场景调整 λ 系数卡尔曼噪声参数等进行参数调优,可集成 OpenCV 或 Supervisely 进行可视化展示。a

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

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

相关文章

硬件工程师笔记——二极管Multisim电路仿真实验汇总

目录 1 二极管基础知识 1.1 工作原理 1.2 二极管的结构 1.3 PN结的形成 1.4 二极管的工作原理详解 正向偏置 反向偏置 multisim使用说明链接 2 二极管特性实验 2.1 二极管加正向电压 2.2 二极管加反向电压 2.3 二极管两端的电阻 2.4 交流电下二级管工作 2.5 二极…

vscode中让文件夹一直保持展开不折叠

vscode中让文件夹一直保持展开不折叠 问题 很多小伙伴使用vscode发现空文件夹会折叠显示, 让人看起来非常难受, 如下图 解决办法 首先打开设置->setting, 搜索compact Folders, 去掉勾选即可, 如下图所示 效果如下 看起来非常爽 ! ! !

设计模式学习笔记

设计模式 一:分类: 创建型模式 用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF(四人组)书中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。 结构型模式 用于描述如何将…

Kaggle-Predict Calorie Expenditure-(回归+xgb+cat+lgb+模型融合+预测结果)

Predict Calorie Expenditure 题意: 给出每个人的基本信息,预测运动后的卡路里消耗值。 数据处理: 1.构造出人体机能、运动相关的特征值。 2.所有特征值进行从新组合,注意唯独爆炸 3.对连续信息分箱变成离散 建立模型&#x…

第十二篇:MySQL 分布式架构演进与云原生数据库探索

本篇聚焦 MySQL 在互联网架构演进过程中的角色变化,探讨其从单体向分布式、再向云原生架构转型的关键技术路径与实践建议。 一、传统单体架构下的 MySQL 应用模式 在早期项目中,MySQL 多用于中小型应用: 单节点部署; 水平扩展难…

JVM——回顾:JVM的起源、特性与系统构成

引入 在当今数字化时代,Java语言及其运行环境Java虚拟机(JVM)在软件开发领域占据着举足轻重的地位。从大型企业级应用到各类移动应用,JVM凭借其独特的特性和强大的功能,为开发者提供了高效且稳定的运行环境。 JVM的起…

大疆上云API+流媒体服务器部署实现直播功能

根据官网文档上云API,先将官方提供的Demo部署起来,后端和前端服务环境搭建请参考官方文档。因为官方文档没有对直播这块的环境搭建进行说明,所以下面主要对直播功能环境搭建做一个记录,仅供参考,如有不足之处&#xff…

计算机网络 HTTP篇常见面试题总结

HTTP各版本区别 HTTP 1.0 无状态、无连接:每次请求都需要建立新的 TCP,处理完后立即关闭,导致开销较大。队头阻塞:每个请求必须按照顺序依次处理,前面的请求未完成,后面的请求只能等待,减低了…

目标检测:YOLO 模型详解

目录 一、YOLO(You Only Look Once)模型讲解 YOLOv1 YOLOv2 (YOLO9000) YOLOv3 YOLOv4 YOLOv5 YOLOv6 YOLOv7 YOLOv8 YOLOv9 YOLOv10 YOLOv11 YOLOv12 其他变体:PP-YOLO 二、YOLO 模型的 Backbone:Focus 结构 三、…

开源 FcDesigner 表单设计器组件事件详解

FcDesigner 是一款基于Vue的开源低代码可视化表单设计器工具,通过数据驱动表单渲染。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。并广泛应用于在政务系统、OA系统、ERP系统、电商系统、流程管理等领域。 …

关于 smali:2. 从 Java 到 Smali 的映射

一、对照 Java 代码与 Smali 代码差异 1.1 方法调用差异:Java vs Smali Java 方法分类: 方法类型Java 示例Smali 指令特点说明静态方法Utils.print("hi")invoke-static没有 this 指针实例方法obj.show()invoke-virtual有 this,虚…

2025年05月29日Github流行趋势

项目名称:agenticSeek 项目地址url:https://github.com/Fosowl/agenticSeek项目语言:Python历史star数:11898今日star数:2379项目维护者:Fosowl, steveh8758, klimentij, ganeshnikhil, apps/copilot-pull-…

Dubbo高频面试题

引言 作为分布式服务框架的标杆,Dubbo凭借其高性能RPC通信、灵活的服务治理能力和丰富的容错机制,成为Java技术栈中微服务领域的核心考点。本文系统梳理Dubbo高频面试核心知识点,涵盖容错策略、负载均衡、注册中心原理、服务上下线感知等关键…

氮气吹扫电磁阀

一、氮气吹扫电磁阀的概述 氮气吹扫电磁阀是一种重要的工业自动控制设备,用于对工业设备中出现的杂质和沉淀物进行清理,以保证生产线的畅通和生产效率的稳定。其作用是在需要吹扫清洗的工业设备中,通过控制气源的气压,打开电磁阀…

网络安全的守护者:iVX 如何构建全方位防护体系

一、安全技术的三大趋势 在数字化时代,网络安全面临着前所未有的挑战。随着企业级应用的普及,安全技术也在不断演进。目前,安全技术架构的发展呈现出三大趋势: 零信任架构的崛起:传统的网络安全依赖于边界防护&#…

微软云如何申请使用

微软云(Azure)新手“开荒”指南:5步搞定账户,直达云端! 还在为云计算的复杂门槛发愁吗?别担心!当全球83%的企业都在加速“上云”,微软智能云Azure凭借其在全球34个区域、200服务的庞…

magic-api配置Git插件教程

一、配置gitee.com 1,生成rsa密钥,在你的电脑右键使用管理员身份运行(命令提示符),执行下面命令 ssh-keygen -t rsa -b 2048 -m PEM一直按回车键,不需要输入内容 找到 你电脑中的~/.ssh/id_rsa.pub 文件…

ojs导入显示空白页错误信息

ojs技术支持:ojs.net.cn error: Uncaught Error: Call to a member function getData() on null in /var/www/html/ojs3/classes/search/ArticleSearchIndex.inc.php:38 Stack trace: #0 /var/www/html/ojs3/plugins/importexport/esci/filter/esciXmlArticleFilter.inc.php(…

【ConvLSTM第一期】ConvLSTM原理

目录 🧠 一、ConvLSTM 原理详解1.1 背景1.2 ConvLSTM 的结构 参考 ConvLSTM(Convolutional Long Short-Term Memory)是一种结合了卷积神经网络(CNN)与循环神经网络(RNN)中 LSTM(长短…

4.8.1 利用Spark SQL实现词频统计

在利用Spark SQL实现词频统计的实战中,首先需要准备单词文件并上传至HDFS。接着,可以通过交互式方法或创建Spark项目来实现词频统计。交互式方法包括读取文本文件生成数据集,扁平化映射得到新数据集,然后将数据集转成数据帧&#…