OpenCV每日函数 基于OpenCV的对象追踪算法综述及代码示例

一、关于对象跟踪

1、跟踪简述

        跟踪物体的运动有许多应用,从仓库中的跟踪机器人到在无人机中实施对象跟踪系统。对象跟踪的基础知识依赖于对象检测,但在这种情况下,对象是从不同的角度查看的,在某些情况下可能看起来完全不同。

        对象跟踪是增强现实中流行的一种重要的计算机视觉技术,用于实时估计或预测移动物体的位置和其他适用信息。

        跟踪过程可以被认为是两个模型的组合:运动模型和外观模型。运动模型跟踪物体运动的速度和方向,这允许它根据接收到的数据预测物体的新位置。同时,外观模型负责确定我们选择的对象是否在框架内。在使用预先训练的分类器的情况下,包含对象的边界框的坐标将自动确定,而通过使用“在线”训练,我们手动指定边界框,分类器没有训练数据,除了它在跟踪对象时可以接收的数据。

        跟踪算法可以分为两类:单目标跟踪和多目标跟踪算法,OpenCV提供了这两种算法。

        单个对象跟踪旨在在整个视频中跟踪一个特定的目标对象。对象跟踪算法首先在第一帧中定义目标对象的边界框,然后在其余帧中定位同一对象。在工业中,当您只关注环境中的一个唯一对象时,您将使用 SOT。

        多对象跟踪(MOT),它是一种更复杂的跟踪类型,因为它涉及检测和跟踪视频中的多个对象。最初,对象跟踪算法确定每个帧中的对象数,识别它们,在它们周围绘制一个边界框,为每个对象分配一个唯一的坐标,并跟踪每个对象在背靠背帧上的移动,直到它们离开帧。

2、目标检测和对象跟踪

        跟踪比检测更快。 虽然预训练分类器需要在视频的每一帧检测对象(这会导致潜在的高计算负载)

猜你喜欢

转载自blog.csdn.net/bashendixie5/article/details/131183933