• Opencv-Python项目(1) | 基于meanshiftT算法的运动目标跟踪技术学习


    目标跟踪(object tracking)就是在连续的视频序列中,建立所要跟踪物体的位置关系,得到物体完整的运动轨迹。

    目标跟踪分为单目标跟踪和多目标跟踪。本文如无特别指出,均指单目标跟踪。

    通常的做法是:

    1.在第1帧给一个bbox框住需要跟踪的物体。

    2.在不借助重检测(re-detection)的情况下,尽可能长时间的跟住物体。

    3.不能使用依赖外部特征的姿态估计(pose estimation)。

    当然这是针对目标跟踪算法的要求,至于实际产品中,对象的重检测以及依赖外部特征的姿态估计都是必不可少的。

    比如,自动驾驶领域的车辆跟踪,一般都会针对车辆的运动特点建立模型,以辅助目标跟踪。

    点跟踪:在连续帧中检测到的目标被表达为点。这种方法需要引入其它方法来进行目标检测。

    核跟踪:关联与目标的形状和外观表达。核函数可以是关联与一个直方图的矩形或椭圆模板。目标通过在连续帧中计算核的运动来跟踪。运动可以是参数形式的平移、旋转或仿射等。

    轮廓跟踪:由在每帧中估计目标区域进行跟踪。轮廓跟踪方法用到的信息可以是外观密度和形状模型。给定目标模型,轮廓由形状匹配或轮廓推导得到。这些方法都可以视作时域上的目标分割。

    按照是否依赖先验知识可分为两类

    1.不依赖于先验知识,直接从图像序列中检测到运动目标,并进行目标识别,最终跟踪感兴趣的运动目标;

    2.依赖于目标的先验知识,首先为运动目标建模,然后在图像序列中实时找到相匹配的运动目标。

    按照摄像机是否固定,可分为:

    1.静态背景。

    2.运动场。摄像机的运动形式可以分为两种:a)摄像机的支架固定,但摄像机可以偏转、俯仰以及缩放; b)将摄像机装在某个移动的载体上。

    经典的目标跟踪算法主要有:meanshift、camshift、Kalman filter、particle filter、Optical flow、TLD、KCF、Struck等。

    参考:

    https://blog.csdn.net/app_12062011/article/details/48436959

    目标跟踪算法的分类(一)

    https://blog.csdn.net/app_12062011/article/details/51760256

    目标跟踪算法的分类(二)

    https://blog.csdn.net/app_12062011/article/details/52277537

    目标跟踪算法的分类(三)

    参考

    https://antkillerfarm.github.io/graphics/2018/07/29/graphics_8.html

    meanshif 介绍

    https://www.zhihu.com/question/26493945

    计算机视觉中,目前有哪些经典的目标跟踪算法?

    https://mp.weixin.qq.com/s/Wz-loMz1oOlxtm10gazQRg

    目标检测(Object Detection)和目标跟踪(Object Tracking)的区别

     

  • 相关阅读:
    2019 滴滴java面试笔试总结 (含面试题解析)
    2019 阿里java面试笔试总结 (含面试题解析)
    Mangos笔记
    Google 多源码管理工具 gclient
    构建系统介绍
    Ninja介绍
    小试 Ninja
    如何使用Ninja快速编译LLVM和Clang
    FMS4中的P2P功能
    Flex之HTML5视频播放解决方案
  • 原文地址:https://www.cnblogs.com/wxiaote/p/10999332.html
Copyright © 2020-2023  润新知