openCV之目标追踪

简介: openCV之目标追踪
import cv2
import numpy as np

#定义OpenCV中的七种目标追踪算法
OPENCV_OBJECT_TRACKERS = {
   
'boosting' : cv2.TrackerBoosting_create,
'csrt' : cv2.TrackerCSRT_create,
'kcf' : cv2.TrackerKCF_create,
'mil': cv2.TrackerMIL_create,
'tld': cv2.TrackerTLD_create,
'medianflow': cv2.TrackerMedianFlow_create,
'mosse' : cv2.TrackerMOSSE_create
}


trackers = cv2.legacy.MultiTracker.create()
cap = cv2. VideoCapture ('./videos/soccer_01.mp4')
while True:
    flag,frame = cap.read()
    if frame is None:
        break 

    #追踪目标
    success,boxes = trackers. update(frame)
    #绘制追踪到的矩形区域
    for box in boxes:
        # box是个浮点型,画图需要整型
        (x,y, w, h) = [int(v) for v in box]
        cv2.rectangle(frame,(x,y),(x + w, y + h),(0,255,0),2)


    cv2.imshow('frame', frame)
    key = cv2.waitKey(100)
    if key == ord('s'):
        # 框选ROI区域
        roi = cv2.selectROI('frame',frame,showCrosshair=True,fromCenter=False)
        #创建一个实际的目标追踪器
        tracker = OPENCV_OBJECT_TRACKERS['kcf']()
        trackers.add(tracker,frame,roi)

    elif key == 27: 
        break

cap.release()
cv2.destroyAllWindows()
目录
相关文章
|
6月前
|
编解码 计算机视觉 索引
OpenCV使用单目标匹配从图像中选择最佳的匹配结果及查找重复图像实战(附Python源码)
OpenCV使用单目标匹配从图像中选择最佳的匹配结果及查找重复图像实战(附Python源码)
223 0
|
1月前
|
JSON 数据格式 计算机视觉
Opencv实用笔记(一): 获取并绘制JSON标注文件目标区域(可单独保存目标小图)
本文介绍了如何使用OpenCV和Python根据JSON标注文件获取并绘制目标区域,同时可将裁剪的图像单独保存。通过示例代码,展示了如何读取图片路径、解析JSON标注、绘制标注框并保存裁剪图像的过程。此外,还提供了相关的博客链接,供读者进一步学习。
29 0
|
6月前
|
计算机视觉 Python
OpenCV多目标匹配绘制红框及统计铁路站台总数、最短距离地铁站实战(附Python源码)
OpenCV多目标匹配绘制红框及统计铁路站台总数、最短距离地铁站实战(附Python源码)
79 0
OpenCV多目标匹配绘制红框及统计铁路站台总数、最短距离地铁站实战(附Python源码)
|
11月前
|
存储 算法 算法框架/工具
【opencv】计算机视觉:实时目标追踪
【opencv】计算机视觉:实时目标追踪
110 0
|
计算机视觉 索引
物体追踪实战:使用 OpenCV实现对指定颜色的物体追踪
物体追踪实战:使用 OpenCV实现对指定颜色的物体追踪
347 0
物体追踪实战:使用 OpenCV实现对指定颜色的物体追踪
|
计算机视觉 算法
基于opencv模板匹配的目标识别方法
因为pcl的点云模板匹配遇到了各种困难,暂时先用opencv的模板匹配函数做一个简单的焊缝识别,看看效果。此方法的缺陷就在于物体和相机位置必须固定,只允许微小位移,否则数据将失效。
4478 0
|
Android开发 计算机视觉 算法
Android使用OpenCV CamShift实现目标追踪
CamShift算法基于色值,适用于追踪颜色和背景差异较大的目标。 效果图 以下调试代码,仅供参考: 源码 package com.
2144 0
|
1月前
|
计算机视觉
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
这篇文章详细介绍了OpenCV库中的图像二值化函数`cv2.threshold`,包括二值化的概念、常见的阈值类型、函数的参数说明以及通过代码实例展示了如何应用该函数进行图像二值化处理,并展示了运行结果。
338 0
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
|
2月前
|
算法 计算机视觉
opencv图像形态学
图像形态学是一种基于数学形态学的图像处理技术,它主要用于分析和修改图像的形状和结构。
49 4
|
2月前
|
存储 计算机视觉
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
本文介绍了使用OpenCV进行图像读取、显示和存储的基本操作,以及如何绘制直线、圆形、矩形和文本等几何图形的方法。
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制