【深度学习】Yolov8 区域计数

git:https://github.com/ultralytics/ultralytics/blob/main/examples/YOLOv8-Region-Counter/readme.md
很长时间没有做yolov的项目了,最近一看yolov8有一个区域计数的功能,不得不说很实用啊。
b站:https://www.bilibili.com/video/BV1Ng4y1d7Yr/?spm_id_from=333.999.0.0

1. 开干

照着 git整就行;
pipe install ultralytics
1.安装库

# Clone ultralytics repo
git clone https://github.com/ultralytics/ultralytics# cd to local directory
cd ultralytics/examples/YOLOv8-Region-Counter
  1. Run the Region Counting Using Ultralytics Yolov8
# If you want to save results
python yolov8_region_counter.py --source "path/to/video.mp4" --save-img --view-img# If you want to run model on CPU
python yolov8_region_counter.py --source "path/to/video.mp4" --save-img --view-img --device cpu# If you want to change model file
python yolov8_region_counter.py --source "path/to/video.mp4" --save-img --weights "path/to/model.pt"# If you dont want to save results
python yolov8_region_counter.py --source "path/to/video.mp4" --view-img

Usage Options

--source: Specifies the path to the video file you want to run inference on.
--device: Specifies the device cpu or 0
--save-img: Flag to save the detection results as images.
--weights: Specifies a different YOLOv8 model file (e.g., yolov8n.pt, yolov8s.pt, yolov8m.pt, yolov8l.pt, yolov8x.pt).
--line-thickness: Specifies the bounding box thickness
--region-thickness: Specifies the region boxes thickness
--track-thickness: Specifies the track line thickness
counting_regions = [{"name": "YOLOv8 Polygon Region","polygon": Polygon([(50, 80), (250, 20), (450, 80), (400, 350), (100, 350)]),  # Polygon with five points (Pentagon)"counts": 0,"dragging": False,"region_color": (255, 42, 4),  # BGR Value"text_color": (255, 255, 255),  # Region Text Color},{"name": "YOLOv8 Rectangle Region","polygon": Polygon([(200, 250), (440, 250), (440, 550), (200, 550)]),  # Rectangle with four points"counts": 0,"dragging": False,"region_color": (37, 255, 225),  # BGR Value"text_color": (0, 0, 0),  # Region Text Color},
]
  1. 业务化改造,因为原仓库代码有问题
  2. python yolov8_region_counter.py --weights yolov8n.pt --device 0 --source D:\code\python_project\ultralytics\examples\YOLOv8-Region-Counter\test_person.mp4 --view-img --track-thickness 5
    –track-thickness参数 就是那几根线,我不清楚这几根线有啥意思。
    代码运行:

问题:1 有追踪的线
在这里插入图片描述
把线去掉
屏蔽这行代码,156行

cv2.polylines(frame, [points], isClosed=False, color=bbox_color, thickness=track_thickness)

在这里插入图片描述
问题2:生成的结果mp4 无法播放
不是bug,是我的运行命令没用对。
python yolov8_region_counter.py --weights yolov8n.pt --device 0 --source test_person.mp
4 --view-img --save-img

改进

可以自定义框的位置,
在这里插入图片描述

所使用命令:

python yolov8_region_counter.py --weights yolov8n.pt --device 0 --source test_person.mp
4 --view-img --save-img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/133050.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【qemu逃逸】HWS2017-FastCP

前言 虚拟机用户名:root 虚拟机密码:无密码 本题有符号,所以对于设备定位啥的就不多说了,直接逆向设备吧。 设备逆向 在 realize 函数中设置一个时钟任务,并且可以看到只注册了 mmio,大小为 0x100000。…

民宿酒店服务预约小程序的作用

民宿往往是旅游者们前往某个城市感受风情常住的地方,也因此在景区或特定地方,总是不乏大小民宿品牌,但除了市场高需求外,商家们所遇的痛点也不少: 1、获客引流难 民宿生意虽然需求量高,但各家品牌众多&am…

2000-2022年上市公司供应链数字化示范名单匹配数据

2000-2022年上市公司供应链数字化示范名单匹配数据 1、时间:2000-2022年 2、来源:商务部 3、指标: 上市公司供应链数字化(根据城市名单匹配):股票代码、年份、股票简称、中文全称、省份、城市、区县、上…

祝贺璞华大数据产品入选中国信通院“铸基计划”

武汉璞华大数据技术有限公司HawkEye设备数字化管理平台产品,凭借优秀的产品技术能力,通过评估后,入选中国信通院“铸基计划”《高质量数字化转型产品及服务全景图(2023)》的工业数字化领域。 “铸基计划”是中国信通院推出的高质量…

leetcode_2586 统计范围元音字符串

1. 题意 元音字符串是首尾都是元音字母的字符串。 给字符数组&#xff0c;让你找出指定范围内的元音字符串的个数。 统计范围元音字符串 2. 题解 直接模拟即可 class Solution { public:int vowelStrings(vector<string>& words, int left, int right) {unordere…

【Linux网络编程_TCP/UDP_字节序_套接字 实现: FTP 项目_局域网聊天项目 (已开源) 】.md updata:23/11/05

文章目录 TCP/UDP对比端口号作用字节序字节序转换api套接字 socket实现网络通讯服务端 逻辑思路demo&#xff1a; 满血版双方通讯/残血版多方通讯 &#xff08;配合进程实现&#xff09;服务端 demo客户端 demo FTP 项目实现sever demo:client demo: 局域网多方通讯 &#xff0…

seo而生的WordPress主题RabbitV3.0主题分享

seo而生的WordPress主题RabbitV3.0主题分享&#xff0c;是一款专注于SEO优化用途的WordPress主题&#xff0c;专为博客、自媒体、资讯类等类型网站SEO优化设计开发&#xff0c;自适应兼容手机、平板设备&#xff0c;支持前端用户中心&#xff0c;可以前端发布/投稿文章&#xf…

Pytorch里面参数更新前为什么要梯度手动置为0?

因为在一般情况下&#xff0c;每次minibatch之后&#xff0c;都会计算得到一个loss&#xff0c;进而计算该loss关于全局参数的梯度。如果在下一次minibatch 进入模型&#xff0c;计算得到相应的loss和梯度之前&#xff0c;不对优化器的梯度进行置0操作&#xff0c;那么几次batc…

创建文件,删除文件(如何恢复),查看文件(ls,echo,cat)的原理和过程

目录 创建文件的过程 删除文件的过程 如果想要恢复删除的文件? 注意点 查看文件的过程 ls echo重定向写入 cat 创建文件的过程 首先,创建文件的时候,输入的命令中会有路径文件名的传入 在某一分区的某一块组中(由os分配),在其inode位图遍历,找到第一个为0的位,将它置…

C# Onnx Dense Face 3D人脸重建,人脸Mesh

效果 项目 代码 using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms;namespace Onnx_Demo {public partial class frmMain : Form{public frmMain(){InitializeComponent();}string fileFilter "*.…

kafka3.6.0集群部署

环境准备 机器环境 系统主机名IP地址centos7.9kafka01192.168.200.51centos7.9kafka02192.168.200.52centos7.9kafka03192.168.200.53 所需软件 jdk-8u171-linux-x64.tar.gzapache-zookeeper-3.8.3-bin.tar.gz https://dlcdn.apache.org/zookeeper/zookeeper-3.8.3/apache-zook…

Java Spring Boot----ruoyi项目部署 前后端分离

nginx服务器部署java服务器部署db服务器部署配置打包环境配置前端打包环境&#xff08;java服务器&#xff09;配置后端打包环境获取代码 前端代码打包后端代码打包项目上线前端项目上线后端项目上线 将jar包传送到后端服务器导入初始化数据 ip主机名服务名称192.168.20.138ngi…

java中:cmd界面输入javac后提示:找不到或无法加载主类,怎么解决

找不到或无法加载主类 检查环境变量cmd下用 java命令运行文件,提示找不到主类待续、更新中 检查环境变量 CLASSPATH 少写.; 安装jdk过程有两部,一步为安装jdk文件夹,全部一致; 另一步为安装jre文件夹与jdk文件夹不一致(或者文件夹安装位置, 一路全部默认) path中将java变量移…

ZooKeeper调优

服务器硬件配置 建议 Zookeeper 的服务器最好专属(或是资源隔离的)。磁盘由于 Zookeeper 的数据写入磁盘,强烈建议要使用 SSD。 Linux操作系统优化 Zookeeper 的性能会很明显受到交换分区的影响。建议部署 Zookeeper 的服务器关闭交换分区功能或是通过内核参数调整,减少…

Traceroute

Traceroute&#xff08;或称 tracer&#xff0c;或称 tracert&#xff09;是一种网络诊断工具&#xff0c;用于检测网络连接和路由问题。它通过向目标主机发送一系列小的数据包&#xff0c;并测量这些数据包所需的时间来工作。每个数据包都会经过一系列路由器&#xff0c;直到到…

CLIP Surgery论文阅读

CLIP Surgery for Better Explainability with Enhancement in Open-Vocabulary Tasks&#xff08;CVPR2023&#xff09; M norm ⁡ ( resize ⁡ ( reshape ⁡ ( F i ˉ ∥ F i ‾ ∥ 2 ⋅ ( F t ∥ F t ‾ ∥ 2 ) ⊤ ) ) ) M\operatorname{norm}\left(\operatorname{resize}\…

【汇编】[BX]和loop指令(学习笔记)

一、[BX] 利用BX寄存器存储偏移地址与DS配合使用 在DEBUG中可以使用mov al,[0]&#xff0c;但在ml编译器里面会变成mov al,0 可以使用BX寄存器来解决 mov bx,0 mov al,[bx]补充 1、使用描述性符号()表示取内容 2、使用idata表示常量 二、loop循环指令 1、loop的概述 需要…

【深度学习】pytorch——神经网络工具箱nn

笔记为自我总结整理的学习笔记&#xff0c;若有错误欢迎指出哟~ 深度学习专栏链接&#xff1a; http://t.csdnimg.cn/dscW7 pytorch——神经网络工具箱nn 简介nn.Modulenn.Module实现全连接层nn.Module实现多层感知机 常用神经网络层图像相关层卷积层&#xff08;Conv&#xff…

Tensor.scatter_add_函数解释:

Tensor.scatter_add_(dim, index, src) → Tensor out.scatter_add_(dim, index, src) 1.参数&#xff1a; dim (int) – 哪一dim进行操作 index (LongTensor) – 要在的out的哪一index进行操作 src (Tensor) – 待操作的源数字 2.官方的解释的操作如下&#xff1a; 3.例…

【JAVA学习笔记】63 -坦克大战1.3-敌方发射子弹,击中坦克消失并爆炸,敌人坦克随机移动,规定范围限制移动

项目代码 https://github.com/yinhai1114/Java_Learning_Code/tree/main/IDEA_Chapter18/src/com/yinhai/tankgame1_3 〇、要求 增加功能 1.让敌人的坦克也能够发射子弹(可以有多颗子弹) 2.当我方坦克击中敌人坦克时&#xff0c;敌人的坦克就消失,如果能做出爆炸效果更好. …