【目标检测】保姆级别教程从零开始实现基于Yolov8的一次性筷子计数

news2024/9/24 18:05:40

前言

一,环境配置

一,虚拟环境创建

二,安装资源包


前言

        最近事情比较少,无意间刷到群聊里分享的基于百度飞浆平台的一次性筷子检测,感觉很有意思,恰巧自己最近在学习Yolov8,于是看看能不能复现,自己也是新手小白,会说的比较详细,适合小白入手。

一,环境配置

对于环境配置,我的是Anaconda虚拟环境,python是3.8(建议大家大于3.7),tensorflow是2.10,GPU版本的,pytorch是1.8.0的,开发平台是pycharm

教程:

配置Anaconda,CUDN,cudnn:Tensorflow-gpu保姆级安装教程(Win11, Anaconda3,Python3.9)_tensorflow-gpu 安装_酷酷的懒虫的博客-CSDN博客

注意:大家主要看里面配置Anaconda,CUDN,cudnn环境的部分就行,如果你的电脑不支持GPU,那么大家就可以配置cup的版本。怎么看支不支持GPU,看看笔记本有没有贴英伟达的标签就行。

配置pytorch:

GPU版本的PyTorch安装与环境配置_pytorch gpu版_「已注销」的博客-CSDN博客

这里一定要配置好,避免后续出现各种环境问题

一,虚拟环境创建

下载好anaconda后,可以专门建一个环境,然后把上述的包配置到虚拟环境中吗,这里有两种方式新建虚拟环境,一是命令行输入,二是图形化界面。

方法一:命令行操作

打开左下角开始键里的Anaconda Powershell Prompt(注意是中间有一个 Powershell,不要误打开第二个,之后对于命令行的操作我们都是在这里进行!!!),打开后默认的是base环境,就是电脑本地环境。

创建Yolov8环境,输入命令:conda create -n yolov8 ,表示创建一个名字为Yolov8的环境,如果想要指定python版本,可以加上如python=3.9,如果默认创建,会在C盘

如果想要改盘,可以参考:w11下载anaconda在d盘,新建的虚拟环境总是在c盘怎么解决

之后输入:conda activate yolov8,如果成功切换就证明创建成功。

方法二:图形化界面操作

还是在刚才的左下角,点击Anaconda Navigator,打开Environments,这里会看到你电脑里所有的虚拟环境以及该环境中安装的包及其版本。

点击creat,创建新环境,在这里你可以对你的环境进行创建,删除,重命名等。如果上面出现yolov8就证明创建成功。

二,安装资源包

yolov8的训练相对于yolov5简单了很多,也比其他框架上手要来得快,因为很多东西都封装好了,直接调用或者命令行运行就行,首先需要先把代码git到本地(后续类似命令行操作都在Anaconda Powershell Prompt里输入,大家也可以在pycharm终端里输入,不过记得切换环境):

注意:如果安装过程比较慢,大家可以在命令行后加入清华源,豆瓣源等,教程:pip下载速度太慢解决方法

git clone https://github.com/ultralytics/ultralytics.git

然后安装ultralytics库,核心代码都封装在这个库里了。

pip install ultralytics

再然后需要安装requirements.txt文件里需要安装的库,这里的文本文件就是运行这个项目需要配置的库的版本要求,根据需求配置环境才可以运行项目。

pip install -r requirements.txt

接下来我们可以把预训练模型下载下来,通俗来讲就是模型训练好的参数保存在里面的一个文件,使用命令行运行检测命令检查环境是否安装成功,将权重下载下来然后新建weights文件夹存放,项目文件默认的是yolov8n模型,其他的在官网里下载:下载预训练模型,不同的模型代表不同的性能和规模,有的精度低但是速度块,有的模型大有的小。

配置完成后,我们运行检测命令,测试yolov8是否可以运行,在项目文件的ultralytics/assets文件中有测试的两张图片。

yolo predict model=./weights/yolov8n.pt source=./ultralytics/assets/bus.jpg save

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

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

相关文章

Spring配置其他注解Spring注解的解析原理

Spring配置其他注解 Primary注解用于标注相同类型的Bean优先被使用权,Primary是Spring 3.0引入的,与Component和Bean一起使用,标注该Bean的优先级更高,则在通过类型获取Bean或通过Autowired根据类型进行注入时,会选用优…

Mysql数据库 18.Mysql SQL优化

SQL优化 一、插入优化 多条插入语句,影响执行效率 优化方案 1、批量插入: 在一条insert语句中多条数据,但是如果数据量过大,也不能完全使用一条语句语句,建议数据量为一次性插入1000条以下的数据 如果数据量多大&…

【Axure教程】用中继器制作卡片多条件搜索效果

卡片设计通过提供清晰的信息结构、可视化吸引力、易扩展性和强大的交互性,为用户界面设计带来了许多优势,使得用户能够更轻松地浏览、理解和互动。 那今天就教大家如何用中继器制作卡片的模板,以及完成多条件搜索的效果,我们会以…

12个最佳WordPress投票插件

您是否正在为您的网站寻找WordPress投票插件? WordPress投票插件可让您轻松地在您的网站上进行民意调查,用户可以投票。这是在收集见解的同时建立用户参与度的有效策略。 在本文中,我们精心挑选了最好的WordPress投票插件,可帮助…

【Vue】创建第一个实例

步骤&#xff1a; 1.创建容器 2.引包 3.创建实例 4.添加配置项 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body><!--准备容器 --> <di…

ubuntu搭建phpmyadmin+wordpress

Ubuntu搭建phpmyadmin wordpress Linux系统设置&#xff1a;Ubuntu 22配置apache2搭建phpmyadmin配置Nginx环境&#xff0c;搭建wordpress Linux系统设置&#xff1a;Ubuntu 22 配置apache2 安装apache2 sudo apt -y install apache2设置端口号为8080 sudo vim /etc/apache…

VBA经典应用69例:Find方法的应用

《VBA经典应用69例》&#xff08;版权10178981&#xff09;&#xff0c;是我推出的第九套教程&#xff0c;教程是专门针对初级、中级学员在学习VBA过程中可能遇到的案例展开&#xff0c;这套教程案例众多&#xff0c;紧贴“实战”&#xff0c;并做“战术总结”&#xff0c;以便…

旅行商问题(枚举,回溯,动态规划,贪心,分支界限)

文章目录 问题描述暴力枚举回溯法动态规划法贪心法分支界限法 问题描述 假设有一个货郎担要拜访n个城市&#xff0c;他必须选择所要走的路程&#xff0c;路程的限制时每个城市只能拜访一次&#xff0c;而且最后要走到原来出发的城市&#xff0c;要求路径长度。 旅行商问题将要…

C语言第二十五弹--打印菱形

C语言打印菱形 思路&#xff1a;想要打印一个菱形&#xff0c;可以分为上下两部分&#xff0c;通过观察可以发现上半部分星号的规律是 1 3 5 7故理解为 2对应行数 1 &#xff0c;空格是4 3 2 1故理解为 行数-对应行数-1。 上半部分代码如下 for (int i 0;i < line;i){//上…

【C/PTA】函数专项练习(四)

本文结合PTA专项练习带领读者掌握函数&#xff0c;刷题为主注释为辅&#xff0c;在代码中理解思路&#xff0c;其它不做过多叙述。 目录 6-1 计算A[n]1/(1 A[n-1])6-2 递归实现顺序输出整数6-3 自然数的位数(递归版)6-4 分治法求解金块问题6-5 汉诺塔6-6 重复显示字符(递归版)…

git 提交成了LFS格式,如何恢复

平常习惯使用sourceTree提交代码&#xff0c;某次打开时弹出了一个【是否要使用LFS提交】的确认弹窗&#xff0c;当时不知道LFS是什么就点了确认&#xff0c;后续提交时代码全变成了这个样子 因为是初始化的项目首次提交&#xff0c;将近四百个文件全被格式化成了这个样子&…

Python 使用tkinter复刻Windows记事本UI和菜单功能(三)

上一篇&#xff1a;Python 使用tkinter复刻Windows记事本UI和菜单功能&#xff08;二&#xff09;-CSDN博客 下一篇&#xff1a;敬请耐心等待&#xff0c;如发现BUG以及建议&#xff0c;请在评论区发表&#xff0c;谢谢&#xff01; 本文章完成了记事本的新建、保存、另存、打…

为什么 x86 操作系统从 0x7c00 处开始

0x00&#xff1a;x86 架构 BIOS 引导加载程序中的"0x7C00"之谜 你知道 x86 操作系统中的"0x7C00"这个神奇数字吗 ? "0x7C00" 是BIOS加载MBR&#xff08;主引导记录&#xff0c;磁盘中的第一个扇区&#xff09;的内存地址。操作系统或引导加载…

思维模型 等待效应

本系列文章 主要是 分享 思维模型 &#xff0c;涉及各个领域&#xff0c;重在提升认知。越是等待&#xff0c;越是焦虑。 1 等待效应的应用 1.1 等待效应在管理中的应用 西南航空公司是一家美国的航空公司&#xff0c;它在管理中运用了等待效应。西南航空公司鼓励员工在工作中…

XUbuntu22.04之解决gpg keyserver receive failed no data(一百九十三)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

Axios 通过a标签下载文件 跨域下载

<!-- a标签占位 --><a ref"down" ></a>getTest() {this.$axios.request({url: https://cnv13.55.la/download?file_key3695fa9461a0ae59cf3148581e4fe339&handle_typeexcel2pdf,method: get,responseType: blob, // 切记类型 blob}).then(re…

【Java并发】聊聊线程池原理以及实际应用

线程其实对于操作系统来说是宝贵的资源&#xff0c;java层面的线程其实本质还是依赖于操作系统内核的线程进行处理任务&#xff0c;如果频繁的创建、使用、销毁线程&#xff0c;那么势必会非常浪费资源以及性能不高&#xff0c;所以池化技术&#xff08;数据库连接池、线程池&a…

3D火山图绘制教程

一边学习&#xff0c;一边总结&#xff0c;一边分享&#xff01; 本期教程内容 **注&#xff1a;**本教程详细内容 Volcano3D绘制3D火山图 一、前言 火山图是做差异分析中最常用到的图形&#xff0c;在前面的推文中&#xff0c;我们也推出了好几期火山图的绘制教程&#xff0…

Linux下载工具XDM下载安装与使用

Windows上IDM多线程下载非常强大&#xff0c;即能捕捉页面上的视频、图片、音频&#xff0c;又能作为浏览器下载器使用&#xff0c;但是IDM无法在Linux下使用&#xff0c;除非使用wine。不过我们可以在Linux中用XDM(Xtreme Download Manager)代替IDM。 1、XDM下载 Xtreme Dow…

从Discord的做法中学习 — 使用Golang进行请求合并

正如你可能之前看到的&#xff0c;Discord去年发布了一篇有价值的文章&#xff0c;讨论了他们成功存储了数万亿条消息。虽然有很多关于这篇文章的YouTube视频和文章&#xff0c;但我认为这篇文章中一个名为“数据服务为数据服务”的部分没有得到足够的关注。在这篇文章中&#…