博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSRT跟踪算法的使用
阅读量:4101 次
发布时间:2019-05-25

本文共 1540 字,大约阅读时间需要 5 分钟。

© Fu Xianjun. All Rights Reserved.

文章目录


前言

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、CSRT跟踪算法是什么?

在具有通道和空间可靠性的判别相关滤波器(DCF-CSR)中,我们使用空间可靠性图将滤波器支持调整为从帧中选择区域的一部分以进行跟踪。 这确保了所选区域的放大和定位,并改善了对非矩形区域或对象的跟踪。 它仅使用2个标准功能(HoG和颜色名称)。 它还以相对较低的fps(25 fps)运行,但为对象跟踪提供了更高的精度

 

二、使用步骤

1.引入库

代码如下 :

import cv2import numpy as np

2.读入数据

代码如下 :

OPENCV_OBJECT_TRACKERS = {    "csrt" :cv2.TrackerCSRT_create,    "kcf" :cv2.TrackerKCF_create,    "boosting" :cv2.TrackerBoosting_create,    "mil" :cv2.TrackerMIL_create,    "tld" :cv2.TrackerTLD_create,}# 实例化OpenCV的trackertrackers = cv2.MultiTracker_create()
vs = cv2.VideoCapture("1.mp4")while True:   # 取当前帧    frame = vs.read()   # (true,data)    frame = frame[1]   # 到头了就结束    if frame is None:        break    # resize每一帧    (h,w) = frame.shape[:2]    width =600    r = width/float(w)    dim = (width,int(h*r))    frame = cv2.resize(frame,dim)        # 追踪结果    (success , boxes) = trackers.update(frame)    # 绘制区域    for box in boxes:        (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) & 0xFF    if key == ord("s"):        # 选择一个区域,按 “s”        box = cv2.selectROI("frame", frame, fromCenter=False,showCrosshair=True)        # 创建一个新的追踪器        tracker = OPENCV_OBJECT_TRACKERS["kcf"]()        trackers.add(tracker,frame,box)    # 退出    if key == 27:        breakvs.release()cv2.destroyAllWindows()


总结

以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

转载地址:http://ekusi.baihongyu.com/

你可能感兴趣的文章
上古语言从入门到精通:COBOL 教程登上 GitHub 热榜
查看>>
再见,Eclipse...
查看>>
如果你还不了解 RTC,那我强烈建议你看看这个!
查看>>
沙雕程序员在无聊的时候,都搞出了哪些好玩的小玩意...
查看>>
漫话:为什么你下载小电影的时候进度总是卡在 99% 就不动了?
查看>>
我去!原来大神都是这样玩转「多线程与高并发」的...
查看>>
当你无聊时,可以玩玩 GitHub 上这个开源项目...
查看>>
B 站爆红的数学视频,竟是用这个 Python 开源项目做的!
查看>>
安利 10 个让你爽到爆的 IDEA 必备插件!
查看>>
自学编程的八大误区!克服它!
查看>>
GitHub 上的一个开源项目,可快速生成一款属于自己的手写字体!
查看>>
早知道这些免费 API,我就可以不用到处爬数据了!
查看>>
Java各种集合类的合并(数组、List、Set、Map)
查看>>
JS中各种数组遍历方式的性能对比
查看>>
Mysql复制表以及复制数据库
查看>>
进程管理(一)
查看>>
linux 内核—进程的地址空间(1)
查看>>
存储器管理(二)
查看>>
开局一张图,学一学项目管理神器Maven!
查看>>
Android中的Binder(二)
查看>>