【目标跟踪】pyimagesearch目标跟踪、中心点匹配示例程序汇总(python-opencv-dlib-dnn)

Simple object tracking with OpenCV(centroid tracking with OpenCV)

【原文链接】https://www.pyimagesearch.com/2018/07/23/simple-object-tracking-with-opencv/

【代码下载】https://pan.baidu.com/s/1VVVb2BY-NyTWavO4vLT2lg   提取码:0uc7


opencv single object tracking   

https://www.pyimagesearch.com/2018/07/30/opencv-object-tracking/

【代码下载链接】https://pan.baidu.com/s/1GTD2dF_OHlfKU_8j5z65rg  提取码:1c4m 
【代码使用说明】程序运行时,按下's' 键后视频暂停,等待用户选择跟踪区域。


OpenCV muil-Object Tracking

https://www.pyimagesearch.com/2018/08/06/tracking-multiple-objects-with-opencv/

【代码下载链接】https://pan.baidu.com/s/11jXxXDW0w7L-djxCUY9TbQ  提取码  gg44


OpenCV People Counter

https://www.pyimagesearch.com/2018/08/13/opencv-people-counter/

使用深度学习检测到行人,然后利用中心点就行跟踪匹配

【代码下载链接】https://pan.baidu.com/s/1U8F2mwdM24wfpepTysw8Ug   提取码  pqgs


Windows下利用dlib19.2实现多目标追踪

https://blog.csdn.net/tintinetmilou/article/details/74787994

(不提供代码下载链接)


Multi-object tracking with dlib

https://www.pyimagesearch.com/2018/10/29/multi-object-tracking-with-dlib/

【代码下载链接】https://pan.baidu.com/s/1Mqxu_igniM8h-dhPfQ-a5g  提取码  8sxk

调试代码时遇到问题

Boost.Python.ArgumentError for dlib.rectangle #545

File "E:/code/traking/multiobject-tracking-dlib/multi_object_tracking_slow.py", line 112, in
    rect = dlib.rectangle(startX, startY, endX, endY)
Boost.Python.ArgumentError: Python argument types in
    rectangle.__init__(rectangle, numpy.int32, numpy.int32, numpy.int32, numpy.int32)
did not match C++ signature:
    __init__(struct _object * __ptr64, long left, long top, long right, long bottom)
    __init__(struct _object * __ptr64)

【目标跟踪】pyimagesearch目标跟踪、中心点匹配示例程序汇总(python-opencv-dlib-dnn)_第1张图片

【暂时解决方案】转化数据类型

https://github.com/davisking/dlib/issues/545

【目标跟踪】pyimagesearch目标跟踪、中心点匹配示例程序汇总(python-opencv-dlib-dnn)_第2张图片

rect = dlib.rectangle(int(startX), int(startY), int(endX), int(endY))

AttributeError: module 'cv2.cv2' has no attribute 'Tracker_create'

【目标跟踪】pyimagesearch目标跟踪、中心点匹配示例程序汇总(python-opencv-dlib-dnn)_第3张图片

【解决方案】需要安装opencv-contrib-python 

https://blog.csdn.net/qq_35759574/article/details/82146721


目标跟踪的过程是怎样的?

  • 获取目标检测的初始化集合(例如边界框坐标的输入集合)
  • 为每一个初始检测对象创建唯一的ID.
  • 当这些检测对象在视频帧间移动时跟踪它们,即保持它们分配的ID不变。

Object tracking is the process of:

  1. Taking an initial set of object detections (such as an input set of bounding box coordinates)
  2. Creating a unique ID for each of the initial detections
  3. And then tracking each of the objects as they move around frames in a video, maintaining the assignment of unique IDs

理想的目标跟踪算法是怎样的?

  • 只需要对象检测阶段一次(即,当最初检测到对象时)
  • 将非常快,比运行实际的对象检测器快得多
  • 当被跟踪的对象“消失”或移动到视频帧的边界之外时能够处理
  • 在遮挡时稳定检测
  • 能够拾取在帧之间“丢失”的对象

An ideal object tracking algorithm will:

  • Only require the object detection phase once (i.e., when the object is initially detected)
  • Will be extremely fast — much faster than running the actual object detector itself
  • Be able to handle when the tracked object “disappears” or moves outside the boundaries of the video frame
  • Be robust to occlusion
  • Be able to pick up objects it has “lost” in between frames

 

你可能感兴趣的:(计算机视觉相关,#,目标跟踪)