使用Python,OpenCV进行对象追踪

Posted 程序媛一枚~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Python,OpenCV进行对象追踪相关的知识,希望对你有一定的参考价值。

这篇博客将介绍如何使用Python,OpenCV的内置对象跟踪器进行对象跟踪(单目标追踪);并将简单介绍OpenCV库中内置的八种对象跟踪算法(截至OpenCV 3.4),包括:CSRT、KCF、Boosting、MIL、TLD、MedianFlow、MOSSE、GOTURN。

建议对大多数对象跟踪应用程序使用CSRT、KCF或MOSSE:

当需要更高的对象跟踪精度,并且可以承受较慢的FPS吞吐量时,请使用CSRT;
当需要更快的FPS吞吐量,但可以处理稍低的对象跟踪精度时,请使用KCF;
当需要纯粹的速度时,使用MOSSE;

并将OpenCV的八个目标跟踪器分别应用于各种任务,包括短跑、赛马、赛车、无人机/无人机跟踪器和车辆行车记录仪。

Kernelized Correlation Filters: KCF 核化相关性滤波器
Discriminative Correlation Filter (with Channel and Spatial Reliability):CSRT 区分相关滤波器(具有信道和空间可靠性)

1. 效果图

CSRT效果图如下:准确度还是蛮高的

MOSSE效果图如下:很快,但结果不太准确

以上是关于使用Python,OpenCV进行对象追踪的主要内容,如果未能解决你的问题,请参考以下文章

使用Python,OpenCV追踪对象的轨迹,来确定其移动方向

使用Python,OpenCV转换颜色空间,追踪对象的轨迹

运动对象检测和描述

基于 OpenCv 和 Python 的手指识别及追踪

OpenCV每日函数 对象追踪模块 使用增强相关系数 (ECC) 最大化的图像配准

使用Python基于OpenCV+MediaPipe追踪手势并控制音量