当前位置: 首页 > news >正文

OpenCV视觉分析之目标跟踪(7)目标跟踪器类TrackerVit的使用

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

VIT 跟踪器由于特殊的模型结构而变得更快且极其轻量级,模型文件大约为 767KB。模型下载链接:https://github.com/opencv/opencv_zoo/tree/main/models/object_tracking_vittrack 作者:PengyuLiu,邮箱:1872918507@qq.com

cv::TrackerVit 是 OpenCV 中的一个视觉跟踪器类,它是基于 ViT(Vision Transformer)架构的一种实现。ViT 是一种用于图像识别的深度学习模型,近年来在计算机视觉领域取得了显著的效果。

代码示例


#include <iostream>
#include <opencv2/opencv.hpp>int main()
{// 读取视频文件cv::VideoCapture cap( 0 );if ( !cap.isOpened() ){std::cout << "Error opening video file" << std::endl;return -1;}// 读取第一帧cv::Mat frame;cap >> frame;if ( frame.empty() ){std::cout << "Error reading first frame" << std::endl;return -1;}// 选择目标区域cv::Rect bbox = cv::selectROI( "Select ROI", frame, false, false );if ( bbox.width <= 0 || bbox.height <= 0 ){std::cout << "No ROI selected" << std::endl;return -1;}// 创建 TrackerVit 对象cv::Ptr< cv::Tracker > tracker = cv::TrackerVit::create();// 初始化跟踪器tracker->init( frame, bbox );// 跟踪目标while ( true ){cap >> frame;if ( frame.empty() ){break;}// 更新跟踪结果cv::Rect newBox;bool ok = tracker->update( frame, newBox );// 绘制边界框if ( ok ){cv::rectangle( frame, newBox, cv::Scalar( 0, 255, 0 ), 2, 1 );}else{cv::rectangle( frame, newBox, cv::Scalar( 0, 0, 255 ), 2, 1 );}// 显示结果cv::imshow( "Tracking", frame );if ( cv::waitKey( 1 ) >= 0 ){break;}}return 0;
}

运行结果

在这里插入图片描述
代码所需的onnx文件下载地址:
https://download.csdn.net/download/jndingxin/89938956

相关文章:

OpenCV视觉分析之目标跟踪(7)目标跟踪器类TrackerVit的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 VIT 跟踪器由于特殊的模型结构而变得更快且极其轻量级&#xff0c;模型文件大约为 767KB。模型下载链接&#xff1a;https://github.com/opencv/…...

Java 实现 RESTful 风格的 Web 服务详解

前言 RESTful&#xff08;Representational State Transfer&#xff09;风格的 API 已经成为现代 Web 服务的标准。它通过简单的 HTTP 方法和资源定位来提供了一种高度可扩展和易于维护的服务接口。Java 作为一种功能强大且广泛使用的编程语言&#xff0c;提供了多种框架来实现…...

18.网工入门篇--------今天介绍下广域网技术

广域网&#xff08;Wide Area Network&#xff0c;WAN&#xff09;是一种能连接多个城市、国家甚至横跨几个洲&#xff0c;提供远距离通信的网络。以下是关于广域网技术的详细介绍&#xff1a; 广域网的组成&#xff1a; 结点交换机&#xff1a;这是广域网的核心设备&#xff0…...

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

目录 前言 HarmonyOS NEXT&#xff1a;下一代操作系统的愿景 1、核心特性和优势 2、如何推动应用生态的发展 3、对开发者和用户的影响 华为云服务在鸿蒙原生应用开发中的作用 1、华为云ECS C系列实例 &#xff08;1&#xff09;全维度性能升级 &#xff08;2&#xff…...

Spring JdbcTemplate详解

文章目录 Spring JdbcTemplate详解一、引言二、配置JdbcTemplate1、引入依赖2、配置数据库连接池3、配置JdbcTemplate 三、使用JdbcTemplate操作数据库1、添加数据2、查询数据查询某个值根据条件查询返回某个对象查询对象集合 四、总结 Spring JdbcTemplate详解 一、引言 在J…...

Docker篇(Docker安装)

目录 一、Centos7.x 1. yum 包更新到最新 2. 安装需要的软件包 3. 设置 yum 源为阿里云 4. 安装docker 5. 安装后查看docker版本 6. 设置ustc镜像源 二、CentOS安装Docker 前言 1. 卸载&#xff08;可选&#xff09; 2. 安装docker 3. 启动docker 4. 配置镜像加速 …...

Pytorch 实现图片分类

CNN 网络适用于图片识别&#xff0c;卷积神经网络主要用于图片的处理识别。卷积神经网络&#xff0c;包括一下几部分&#xff0c;输入层、卷积层、池化层、全链接层和输出层。 使用 CIFAR-10 进行训练&#xff0c; CIFAR-10 中图片尺寸为 32 * 32。卷积层通过卷积核移动进行计…...

得物App获评新奖项,正品保障夯实供应链创新水平

近日&#xff0c;得物App再度获评新奖项——“2024上海市供应链创新与应用优秀案例”。 本次奖项为上海市供应链领域最高奖项&#xff0c;旨在评选出在供应链创新成效上处于领先地位、拥有成功模式和经验的企业。今年以来&#xff0c;得物App已接连获得“上海市质量金奖”、“科…...

【数据结构-邻项消除】力扣735. 小行星碰撞

给定一个整数数组 asteroids&#xff0c;表示在同一行的小行星。 对于数组中的每一个元素&#xff0c;其绝对值表示小行星的大小&#xff0c;正负表示小行星的移动方向&#xff08;正表示向右移动&#xff0c;负表示向左移动&#xff09;。每一颗小行星以相同的速度移动。 找…...

002-Kotlin界面开发之Kotlin旋风之旅

Kotlin旋风之旅 Compose Desktop中哪些Kotlin知识是必须的&#xff1f; 在学习Compose Desktop中&#xff0c;以下Kotlin知识是必须的&#xff1a; 基础语法&#xff1a;包括变量声明、数据类型、条件语句、循环等。面向对象编程&#xff1a;类与对象、继承、接口、抽象类等。…...

VMware Workstation Pro for Personal Use (For Windows)

这是从broadcom.com网下载的个人版本的Vmware 17.6.1&#xff0c;存分享不要分。 VMware-workstation-full-17.6.1-24319023.exe(447.93 MB) Build Number: 24319023 Oct 08, 2024 07.33AM SHA2&#xff1a; f95429e395a583eb5ba91f09b040e2f8c53a5e7aa37c4c6bfcaf82115a8…...

论文 | PROMPTAGATOR : FEW-SHOT DENSE RETRIEVAL FROM 8 EXAMPLES

1. 背景信息 在信息检索领域&#xff0c;传统的方法往往依赖于大量的标注数据来训练模型&#xff0c;以便在各种任务中表现良好。然而&#xff0c;许多实际应用中的监督数据是有限的&#xff0c;尤其是在不同的检索任务中。最近的研究开始关注如何从一个拥有丰富监督数据的任务…...

使用 Github 进行项目管理

GitHub 是一个广泛使用的代码托管和协作平台&#xff0c;它提供了强大的工具来支持项目管理和团队协作。在项目开发和工作中&#xff0c;避免不了 Github 的使用&#xff0c;然鹅我一直没有稍微系统地学习过 github 的整个工作流程&#xff0c;对这些操作都是一知半解的&#x…...

企业SRC挖掘选择与信息收集指南

内容预览 ≧∀≦ゞ 企业SRC挖掘选择与信息收集指南导语1. 企业SRC的选择2. 信息收集2.1 集团与子公司2.2 小程序与APP2.3 Web端信息收集 3. 信息收集常用模板总结 企业SRC挖掘选择与信息收集指南 导语 近年来&#xff0c;企业的安全响应中心&#xff08;SRC&#xff09;已逐渐…...

Golang | Leetcode Golang题解之第524题通过删除字母匹配到字典里最长单词

题目&#xff1a; 题解&#xff1a; func findLongestWord(s string, dictionary []string) (ans string) {m : len(s)f : make([][26]int, m1)for i : range f[m] {f[m][i] m}for i : m - 1; i > 0; i-- {f[i] f[i1]f[i][s[i]-a] i}outer:for _, t : range dictionary …...

【DBeaver】连接带kerberos的hive[Apache|HDP]

目录 一、安装配置Kerberos客户端环境 1.1 安装Kerberos客户端 1.2 环境配置 二、基于Cloudera驱动创建连接 三、基于Hive原生驱动创建连接 一、安装配置Kerberos客户端环境 1.1 安装Kerberos客户端 在Kerberos官网下载,地址如下&#xff1a;https://web.mit.edu/kerberos…...

Unity3D 开发教程:从入门到精通

Unity3D 开发教程&#xff1a;从入门到精通 Unity3D 是一款强大的跨平台游戏引擎&#xff0c;广泛应用于游戏开发、虚拟现实、增强现实等领域。本文将详细介绍 Unity3D 的基本概念、开发流程以及一些高级技巧&#xff0c;帮助你从零基础到掌握 Unity3D 开发。 目录 Unity3D…...

文件操作和 IO(一):文件基础知识 文件系统操作 => File类

目录 1. 什么是文件 1.1 概念 1.2 硬盘, 内存, 寄存器之间的区别 1.3 机械硬盘和固态硬盘 2. 文件路径 2.1 绝对路径 2.2 相对路径 3. 文件分类 4. File 类 4.1 属性 4.2 构造方法 4.3 方法 1. 什么是文件 1.1 概念 狭义上的文件: 保存在硬盘上的文件广义的上的文…...

用Pyhon写一款简单的益智类小游戏——2048

文字版——代码及讲解 代码—— import random# 初始化游戏棋盘 def init_board():return [[0] * 4 for _ in range(4)]# 在棋盘上随机生成一个2或4 def add_new_tile(board):empty_cells [(i, j) for i in range(4) for j in range(4) if board[i][j] 0]if empty_cells:i,…...

akshare股票涨跌幅自定义范围查询:A股、港股、美股

参看&#xff1a;https://stock.hexun.com/2024-10-31/215251914.html 涨幅计算公式&#xff1a;&#xff08;当前价格 - 上一个交易日收盘价&#xff09; 上一个交易日收盘价 100% 。 跌幅计算公式&#xff1a;&#xff08;上一个交易日收盘价 - 当前价格&#xff09; 上一个…...

AI辅助开发:利用快马智能生成技能学习路径推荐算法

AI辅助开发&#xff1a;利用快马智能生成技能学习路径推荐算法 最近在做一个技能学习平台的项目&#xff0c;需要实现一个智能推荐系统。作为独立开发者&#xff0c;面对复杂的推荐算法和数据处理逻辑有点无从下手。这时候发现了InsCode(快马)平台的AI辅助开发功能&#xff0c…...

Qwen3-ASR-0.6B作品分享:航空管制语音→航班号/高度层/应答机编码提取

Qwen3-ASR-0.6B作品分享&#xff1a;航空管制语音→航班号/高度层/应答机编码提取 你有没有想过&#xff0c;那些听起来像“天书”一样的航空管制对话&#xff0c;背后藏着多少关键信息&#xff1f;飞行员和管制员在无线电里快速交流&#xff0c;每一句指令都关乎飞行安全。如…...

如何一键合并B站缓存视频?HLB站缓存合并工具完全指南

如何一键合并B站缓存视频&#xff1f;HLB站缓存合并工具完全指南 【免费下载链接】BilibiliCacheVideoMerge 项目地址: https://gitcode.com/gh_mirrors/bi/BilibiliCacheVideoMerge 你是否曾经遇到过这样的情况&#xff1a;在B站缓存了喜欢的视频&#xff0c;想在离线…...

LLM安全防护终极指南:构建企业级AI安全屏障的实战秘籍

LLM安全防护终极指南&#xff1a;构建企业级AI安全屏障的实战秘籍 【免费下载链接】llm-guard The Security Toolkit for LLM Interactions 项目地址: https://gitcode.com/gh_mirrors/ll/llm-guard 在人工智能技术飞速发展的今天&#xff0c;大型语言模型&#xff08;L…...

利用快马平台快速生成vmware虚拟机安装教程交互原型

最近在教朋友学习虚拟化技术时&#xff0c;发现很多新手在安装VMware虚拟机时容易卡在配置环节。为了降低学习门槛&#xff0c;我尝试用InsCode(快马)平台快速搭建了一个交互式教程原型&#xff0c;效果出乎意料地好。这里分享下实现思路和具体操作&#xff1a; 需求分析与原型…...

WSL2网络问题终极指南:固定IP+代理配置解决Ubuntu子系统断网烦恼

WSL2网络优化全攻略&#xff1a;从IP固定到无缝代理配置 每次重启WSL2都要重新配置代理&#xff1f;开发到一半突然断网&#xff1f;作为深度依赖WSL2的开发者&#xff0c;这些网络问题简直让人抓狂。今天我们就来彻底解决这个痛点&#xff0c;让你的Ubuntu子系统拥有堪比物理机…...

WarcraftHelper开源解决方案:魔兽争霸3跨系统优化完全指南

WarcraftHelper开源解决方案&#xff1a;魔兽争霸3跨系统优化完全指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper WarcraftHelper作为一款开源解决…...

AgentCPM与JavaScript全栈开发:实时交互式研报问答机器人实现

AgentCPM与JavaScript全栈开发&#xff1a;实时交互式研报问答机器人实现 最近在做一个挺有意思的项目&#xff0c;想和大家聊聊怎么用JavaScript全栈技术&#xff0c;把一个强大的AI分析模型变成一个能实时对话的网页应用。想象一下&#xff0c;你打开一个网页&#xff0c;输…...

用Stata处理368城数据:从DO文件到可视化分析全流程(含代码分享)

用Stata处理368城数据&#xff1a;从DO文件到可视化分析全流程 当面对包含368个地级市的庞大数据集时&#xff0c;如何高效地进行数据清洗、分析和可视化是每个研究者都会面临的挑战。Stata凭借其强大的数据处理能力和灵活的编程特性&#xff0c;成为城市经济研究的首选工具之一…...

SDN南向接口协议深度解析:从OpenFlow到P4的演进与实战选型

1. SDN南向接口协议的技术演进之路 第一次接触SDN南向接口时&#xff0c;我被各种协议搞得晕头转向。直到在数据中心网络改造项目中踩过几次坑才明白&#xff0c;不同协议就像不同型号的螺丝刀——OpenFlow是精密钟表螺丝刀&#xff0c;OVSDB是家用多功能螺丝刀&#xff0c;NET…...