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

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

前言

一,环境配置

一,虚拟环境创建

二,安装资源包


前言

        最近事情比较少,无意间刷到群聊里分享的基于百度飞浆平台的一次性筷子检测,感觉很有意思,恰巧自己最近在学习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

相关文章:

  • 一键创新 | 拓世法宝AI智能直播一体机激发房产自媒体创造力
  • opencv-常用代码
  • ELK企业级日志分析平台
  • Springboot3+vue3从0到1开发实战项目(一)
  • 指针笔试题分享
  • 机器篇——决策树(六) 细说 评估指标的交叉验证
  • 阿里云服务器(vgn7i-vws) anaconda(py39)+pytorch1.12.0(cu113)
  • YOLOv3老矣尚能战否?基于YOLOv3开发构建建钢铁产业产品智能自动化检测识别系统,我们来与YOLOv5进行全方位对比评测
  • SpringCloud Alibaba集成 Gateway(自定义负载均衡器)、Nacos(配置中心、注册中心)、loadbalancer
  • 鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统项目背景
  • MobaXterm连接节点一段时间后超时Session stopped
  • Towhee介绍
  • 【转载】如何在Macbook上把Ubuntu安装到移动硬盘里
  • CSM32RV003:国产高精度16位ADC低功耗RISC-V内核MCU
  • 配电室智慧运维监控系统
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • Consul Config 使用Git做版本控制的实现
  • java第三方包学习之lombok
  • Java精华积累:初学者都应该搞懂的问题
  • leetcode386. Lexicographical Numbers
  • MobX
  • spring boot 整合mybatis 无法输出sql的问题
  • Yii源码解读-服务定位器(Service Locator)
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 程序员最讨厌的9句话,你可有补充?
  • 好的网址,关于.net 4.0 ,vs 2010
  • 缓存与缓冲
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 如何设计一个比特币钱包服务
  • 入手阿里云新服务器的部署NODE
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • Spring第一个helloWorld
  • #100天计划# 2013年9月29日
  • $().each和$.each的区别
  • (09)Hive——CTE 公共表达式
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (附源码)计算机毕业设计ssm电影分享网站
  • (五)Python 垃圾回收机制
  • (转)c++ std::pair 与 std::make
  • .NET Core 版本不支持的问题
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET 反射的使用
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .NET应用架构设计:原则、模式与实践 目录预览
  • []FET-430SIM508 研究日志 11.3.31
  • [1]-基于图搜索的路径规划基础
  • [Android] 240204批量生成联系人,短信,通话记录的APK
  • [Angular] 笔记 16:模板驱动表单 - 选择框与选项
  • [Assignment] C++1
  • [C#]OpenCvSharp使用帧差法或者三帧差法检测移动物体
  • [codevs 2822] 爱在心中 【tarjan 算法】
  • [Docker]五.Docker中Dockerfile详解
  • [echarts] y轴不显示0