YOLOv8 实现车牌检测,生成可视化检测视频(20240424)

news2024/11/18 23:36:18

原项目源码地址:GitHub

我的源码地址:Gitee

环境搭建请参考:Win10 搭建 YOLOv8 运行环境(20240423)-CSDN博客

环境测试请参考:本地运行测试 YOLOv8(20240423)-CSDN博客

训练数据集请参考:YOLOv8 训练自己的数据集(20240423)-CSDN博客

 一、在 Anacoda 下创建一个新的虚拟环境

1.1、创建虚拟环境 automatic_plate

conda create –n automatic_plate python=3.9.16

1.2、切换激活虚拟环境

conda activate automatic_plate

1.3、安装 PyTorch

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

二、下载代码,配置依赖

2.1、下载源码:

git clone https://gitee.com/nangongyanya/yolov8_automatic_plate.git

2.2、使用 PyCharm 打开项目

2.3、配置 Python 环境为前文中创建的虚拟环境 automatic_plate

2.4、打开命令行工具

2.5、添加依赖

pip install -r requirements.txt

2.6、修改 Pillow 版本为 9.5.0

2.7、运行 main.py 生成车辆和车牌的识别信息,保存至 tmp.csv

三、完善可视化视频

3.1、我们可以查看一下 tmp.csv 文件,会发现有些帧数没有,这是由于视频中不是每一帧都有车牌出现,而 tmp.csv 文件中有只保存了有检测到车牌的信息,因此有些帧数没有

3.2、运行 frame_interpolated.py 补全帧数生成具有完整帧数的数据文件 frame_interpolated.csv

3.3、运行 csv2video.py 根据原视频 sample.mp4 和 frame_interpolated.csv 生成完整的检测视频 out.mp4

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

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

相关文章

三、CPU基础-缓存

计算机中缓存一般分为两个部分 1.内存 2.CPU Cache 一、CPU Cache分级 CPU Cache 通常分为大小不等的三级缓存,分别是 L1 Cache、L2 Cache 和 L3 Cache。 L1 Cache 和 L2 Cache 都是每个 CPU 核心独有的(通常会分为「数据缓存」和「指令缓存」&#…

百度安全多篇议题入选Blackhat Asia以硬技术发现“芯”问题

Blackhat Asia 2024于4月中旬在新加坡隆重举行。此次大会聚集了业界最杰出的信息安全专业人士和研究者,为参会人员提供了安全领域最新的研究成果和发展趋势。在本次大会上,百度安全共有三篇技术议题被大会收录,主要围绕自动驾驶控制器安全、跨…

告别互信息:跨模态人员重新识别的变分蒸馏

Farewell to Mutual Information: Variational Distillation for Cross-Modal Person Re-Identification 摘要: 信息瓶颈 (IB) 通过在最小化冗余的同时保留与预测标签相关的所有信息,为表示学习提供了信息论原理。尽管 IB 原理已应用于广泛的应用&…

使用CSS+HTML完成导航栏

HTML <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>导航栏示例</title> &l…

​LeetCode解法汇总2385. 感染二叉树需要的总时间

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 描述&#xff1a; 给你一棵二叉树的根节点 root &#xff0…

QT——其他方式实现HelloWrold

QT——其他方式实现HelloWrold 使用输入框实现使用代码实现 通过按钮实现信号槽代码方式实现 我们之前对QT实现HelloWorld有了一些基本的了解&#xff0c;用了一些简单的方法实现了HelloWorld&#xff0c;如果对QT还不怎么了解的&#xff0c;可以点击这里&#xff1a; https://…

YOLOv9改进策略 | 添加注意力篇 | TripletAttention三重注意力机制(附代码+机制原理+添加教程)

一、本文介绍 本文给大家带来的改进是Triplet Attention三重注意力机制。这个机制&#xff0c;它通过三个不同的视角来分析输入的数据&#xff0c;就好比三个人从不同的角度来观察同一幅画&#xff0c;然后共同决定哪些部分最值得注意。三重注意力机制的主要思想是在网络中引入…

【调制】π/4-DQPSK信号模型及其相关特性分析 【附MATLAB代码】

MATLAB代码 % pi/4-DQPSK modulation %输入一串数&#xff0c;输出经过差分并映射的I、Q两路数据 ​ function [I,Q]pi4_dqpskmod(data) ​ nlength(data)./2; data1data.*2-1; ​ Idatazeros(1,n); Qdatazeros(1,n); ​ ​ Idatadata1(1,1:2:2*n); %串并变换 Qdatadata1(…

MT3030 天梯赛

跟MT3029战神小码哥类似&#xff0c;都是贪心堆。注意开long long 这里的堆顶为战斗力最小的&#xff0c;便于贪心的反悔操作。先按容忍度从大到小排序&#xff08;q中总容忍度取决于最小的容忍度&#xff09;&#xff0c;再向q中存数&#xff0c;存到不能容忍之后再把堆顶踢出…

网优干货:ACP交付详解版(1)

1.1. 整体流程简介 使用Massive MIMO ACP工具进行覆盖优化的整体流程如下&#xff1a; 1.2. 数据准备 在使用基于DT数据进行5G MassiveMIMO覆盖优化前&#xff0c;需要从网络中收集以下各类数据&#xff0c;数据采集范围需包括优化区域以及对其存在干扰的周边区域所有5G站点。 …

【Java】文件操作(一)

文章目录 ✍一、文件的基本认识1.文件是什么&#xff1f;2.文本文件和二进制文件3.文件权限4.相对路径和绝对路径1.1绝对路径1.2相对路径 ✍二、文件的基本操作1.FIle的属性2.File的构造方法3.File类的方法3.1File类的获取操作3.2File类的判断操作3.3文件创建和删除3.4其他的常…

UltraScale+的10G/25G Ethernet Subsystem IP核使用

文章目录 前言一、设计框图1.1、xxv_ethernet_01.2、xxv_ethernet_0_sharedlogic_wrapper1.3、xxv_ethernet_0_clocking_wrapper1.4、xxv_ethernet_0_common_wrapper 二、IP核配置三、仿真四、上板测速五、总结 前言 前面我们学习了很多基于XILINX 7系列的高速接口使用&#x…

svn使用(上传自己的项目到svn上)

安卓开发工具版本 创建项目后&#xff0c;首先在.gitgnore文件里面加入你要过滤的文件路径 然后点击VCS——》share Project&#xff0c;然后下一步选择一个svn路径&#xff0c;点击确定后。然后将代码提交。

递归、搜索与回溯算法:FloodFill 算法

例题一 算法思路&#xff1a; 可以利⽤「深搜」或者「宽搜」&#xff0c;遍历到与该点相连的所有「像素相同的点」&#xff0c;然后将其修改成指定的像素即可。 全局变量&#xff1a; int dx[4] { 0,0,1,-1 }, dy[4] { 1,-1,0,0 }; int m, n; int precolor;//记录原先的颜色…

CentOS-7安装Mysql并允许其他主机登录

一、通用设置&#xff08;分别在4台虚拟机设置&#xff09; 1、配置主机名 hostnamectl set-hostname --static 主机名2、修改hosts文件 vim /etc/hosts 输入&#xff1a; 192.168.15.129 master 192.168.15.133 node1 192.168.15.134 node2 192.168.15.136 node33、 保持服…

【C++ 多态】带你详细了解虚函数表

文章目录 1.一道面试题 -- 引入虚函数表2.多态是怎么实现的呢&#xff1f;2.1满足多态的时候&#x1f427;2.2不满足多态的时候&#x1f427; 3.打印虚函数表 1.一道面试题 – 引入虚函数表 ①&#x1f34e; _vfptr 虚表指针&#xff0c;虚表指针是用来实现多态的 &#xff08…

xgp怎么取消续费 微软商店xgp会员取消自动续费详细教程

xgp怎么取消续费 微软商店xgp会员取消自动续费详细教程 XGP这个游戏平台小伙伴们并不陌生吧&#xff0c;它是微软Xbox游戏部门推出的游戏租赁制会员服务&#xff0c;主要用于主机和PC两个平台。这个平台的会员就可以免费享受多款大制作游戏&#xff0c;而且每个月还会自动更新…

笔记 | 编译原理L2:词法分析(lexical analysis)

1 概述 词法分析(lexical analysis)&#xff0c;也称scanning, 编译程序的第一阶段,其作用是识别单词(程序意义上)并找出词法错误. 读入源程序的输入字符、将它们拆分成词素&#xff0c;生成并输出一个词法单元序列&#xff0c;每个词法单元对应于一个词素 回顾词法分析在整个…

jpa分页插件对象Pageable出现了错误异常如何解决?

jpa分页插件对象Pageable出现了错误异常如何解决&#xff1f;&#xff01; 一般来说&#xff0c;遇到这种的错误异常情况&#xff0c;通常情况 下&#xff0c;都是因为程序员把传递的分页页码数字写错了。 正常情况下&#xff0c;分页页码起始数字应该是0&#xff1b;而不是1…

OpenCASCADE(OCC)读入含中文汉字标签的内容后乱码的解决方法

笔者在导入一个由SolidWorks生成的step文件的时候&#xff0c;节点名称是中文&#xff0c;于是乎生成的节点树的名称都是乱码了&#xff0c;经过多次的排查调研&#xff0c;最后的解决办法如下&#xff1a; 1.老版本的occ库&#xff0c;是无法兼容读入中文编码的step文件的&am…