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

基于yolov8+deepsort+gradio实现目标追踪演示

【效果展示】

【测试环境】

ultralytics==8.2.95

gradio==4.26.0

torch==1.9.0+cu111

理论上支持最新ultralytics版本 

【实现部分代码】

    with gr.Blocks() as demo:with gr.Tab("追踪"):# 使用Markdown显示文本信息,介绍界面的功能gr.Markdown("""# 目标检测与跟踪基于yolov8+deepsort实现目标追踪""")# 行容器,水平排列元素with gr.Row():# 列容器,垂直排列元素with gr.Column():input_path = gr.Video(label="输入视频") # 视频输入控件,用于上传视频文件model = gr.Dropdown(model_list, value=0, label="模型") # 下拉菜单控件,用于选择模型detect_class = gr.Dropdown(detect_classes, value=0, label="类别", type='index') # 下拉菜单控件,用于选择要检测的目标类别output_dir = gr.Textbox(label="输出路径", value=tempfile.mkdtemp()) # 文本框控件,用于指定输出视频的保存路径,默认为一个临时生成的目录with gr.Row():# 创建两个按钮控件,分别用于开始处理和停止处理start_button = gr.Button("开始")stop_button = gr.Button("停止")with gr.Column():output = gr.Video() # 视频显示控件,展示处理后的输出视频output_path = gr.Textbox(label="输出路径") # 文本框控件,用于显示输出视频的文件路径# 添加示例到GUI中,允许用户选择预定义的输入进行快速测试gr.Examples(examples,label="样例",inputs=[input_path, output_dir, detect_class, model],outputs=[output, output_path],fn=start_processing, # 指定处理示例时调用的函数cache_examples=False) # 禁用示例缓存# 将按钮与处理函数绑定start_button.click(start_processing, inputs=[input_path, output_dir, detect_class, model], outputs=[output, output_path])stop_button.click(stop_processing)

【完整源码下载地址】

https://download.csdn.net/download/FL1623863129/89783430

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 用终端请求接口
  • 尚品汇-Jenkins部署构建服务模块、Linux快照备份(五十七)
  • Maya---机械模型制作
  • Webshell机制绕过的个人理解总结
  • 手写SpringMVC
  • SQL查询中字段选择的两种写法:select * VS select 字段名
  • C#/.NET/.NET Core技术前沿周刊 | 第 6 期(2024年9.16-9.22)
  • Elastic 的 OpenTelemetry PHP 发行版简介
  • ICM20948 DMP代码详解(37)
  • 【MyBatis】Java 数据持久层框架:认识 MyBatis
  • js进阶——作用域闭包
  • 【JS代码规范】如何优化if-else代码规范
  • 【探索数据结构与算法】插入排序:原理、实现与分析(图文详解)
  • 【C++篇】引领C++模板初体验:泛型编程的力量与妙用
  • ElasticSearch学习笔记
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • Asm.js的简单介绍
  • CSS 专业技巧
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • JS变量作用域
  • mac修复ab及siege安装
  • Vue学习第二天
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 初识MongoDB分片
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 聊聊directory traversal attack
  • 漂亮刷新控件-iOS
  • 什么是Javascript函数节流?
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 听说你叫Java(二)–Servlet请求
  • 突破自己的技术思维
  • 我建了一个叫Hello World的项目
  • Java总结 - String - 这篇请使劲喷我
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 通过调用文摘列表API获取文摘
  • ​ssh免密码登录设置及问题总结
  • #Linux(权限管理)
  • (function(){})()的分步解析
  • (Python第六天)文件处理
  • (阿里云万网)-域名注册购买实名流程
  • (第一天)包装对象、作用域、创建对象
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)为C# Windows服务添加安装程序
  • .net core + vue 搭建前后端分离的框架
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET Standard 支持的 .NET Framework 和 .NET Core
  • .NET 服务 ServiceController
  • .net 验证控件和javaScript的冲突问题
  • .Net 知识杂记