YOLOv8本地部署运行全流程指南
创作时间:
作者:
@小白创作中心
YOLOv8本地部署运行全流程指南
引用
CSDN
1.
https://blog.csdn.net/qq_41478219/article/details/140873968
YOLOv8是当前最流行的实时目标检测模型之一,其强大的功能和易用性使其在计算机视觉领域广受欢迎。本文将详细介绍如何在本地环境中部署和运行YOLOv8,包括环境配置、模型测试以及分割、跟踪、姿态估计等功能的实现。
1. YOLOv8环境配置
1.1 安装Anaconda
进入Anaconda官网下载并安装。推荐使用Miniconda,它是Anaconda的简化版,对于一般需求而言足够使用。
配置下载镜像源:
由于部分库的服务器在国外,直接安装会很慢,建议配置国内源进行下载。有两种方式:
- 一劳永逸的方法:直接配置.condrac配置文件
- 在安装命令之后直接跟国内源地址
配置和下载网址:清华大学开源软件镜像站
1.2 安装PyCharm
进入PyCharm官网下载并安装。
1.3 创建虚拟环境
YOLOv8需要Python版本大于等于3.8。如果使用的是Python3.7,可能会遇到numpy版本不兼容的问题。因此,建议创建一个Python3.8的虚拟环境。
conda create -n yolov8 python=3.8
创建成功后,激活虚拟环境:
conda activate yolov8
1.4 下载源码和权重文件
源码地址:YOLOv8 GitHub仓库
下载完整代码后,将预训练权重文件(如YOLOv8n)放置在项目文件目录下。官方提供了5个不同大小的模型权重,可以根据需要选择下载。
1.5 安装基础运行依赖
进入yolov8项目目录,执行以下命令安装ultralytics库:
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
1.6 加载项目,设置虚拟环境
在PyCharm中设置虚拟环境:
- 打开File -> Settings -> Project:yolov5 -> Python Interpreter
- 点击add -> Conda Enviroment
- 选择Existing Enviroment
- 选择你的虚拟环境路径 -> ok
2. YOLOv8模型运行测试
2.1 预测测试
使用自带的yolov8n模型进行预测测试:
yolo predict model=yolov8n.pt source='ultralytics/assets'
预测结果将保存在以下目录:
./ultralytics-main/runs/detect/predict
2.2 训练测试
使用coco128样本数据集进行训练测试:
下载数据集:
https://github.com/ultralytics/assets/releases/download/v0.0.0/coco128.zip存放路径:
./ultralytics-main/datasets训练命令:
yolo train model=yolov8n.pt data=coco128.yaml epochs=10 imgsz=640
2.3 验证测试
使用以下命令进行验证测试:
yolo val model=yolov8n.pt data=coco128.yaml
验证结果将保存在以下目录:
./ultralytics-main/runs/detect/val
3. YOLOv8分割、跟踪、姿态估计
3.1 YOLOv8分割
执行以下命令进行分割测试:
yolo task=segment mode=predict model=yolov8n-seg.pt source='ultralytics/assets/bus.jpg' show=True
分割结果将保存在以下目录:
./ultralytics-main/runs/segment/predict
3.2 YOLOv8跟踪
执行以下命令进行目标跟踪测试:
yolo track model=yolov8n.pt source='ultralytics/assets/bus.jpg'
跟踪结果将保存在以下目录:
./ultralytics-main/runs/detect/track
3.3 YOLOv8姿态估计
执行以下命令进行姿态估计测试:
yolo pose predict model=yolov8n-pose.pt source='ultralytics/assets' show=True save=True
姿态估计结果将保存在以下目录:
./ultralytics-main/runs/pose/predict
3.4 集成运行
可以将检测、跟踪和分割功能集成到一个脚本中:
from ultralytics import YOLO
if __name__ == '__main__':
# Load a model
# 直接使用预训练模型创建模型
# model = YOLO('yolov8n.pt')
# model.train(**{'cfg':'ultralytics/cfg/default.yaml', 'data':'ultralytics/models/yolo/detect/mydata/traffic.yaml'}, epochs=10, imgsz=640, batch=32)
# #使用yaml配置文件来创建模型,并导入预训练权重
#model = YOLO('ultralytics/cfg/models/v8/yolov8n.yaml') # build a new model from YAML
#model.load('yolov8n.pt')
#model.train(**{'cfg': 'ultralytics/cfg/default.yaml', 'data': 'ultralytics/models/yolo/detect/mydata/traffic.yaml'},
# epochs=10, imgsz=640, batch=32, name='train') # name:是此次训练结果保存的文件夹 数据集是我自己的数据集
# # # 模型验证:用验证集
# model = YOLO('runs/detect/train/weights/best.pt')
# model.val(**{'data':'ultralytics/models/yolo/detect/mydata/traffic.yaml', 'name':'val', 'batch':32}) #模型验证用验证集
# model.val(**{'data':'ultralytics/models/yolo/detect/mydata/traffic.yaml', 'split':'test', 'iou':0.9}) #模型验证用测试集
# # 推理:
'''model = YOLO('yolov8n.pt')
model.predict(source='ultralytics/assets', show=True, save=True)'''
# model.predict(source='ultralytics/assets', name='predict', **{'save':True}) # 写法二
# 分割:
''''model = YOLO('yolov8n-seg.pt')
model.predict(source='ultralytics/assets', name='predict', **{'save': True})'''
# 跟踪:
'''model = YOLO('yolov8n.pt')
model.track(source="ultralytics/assets", show=True, save=True)'''
# 姿态估计:
'''model = YOLO('yolov8n-pose.pt')
model.predict(source="ultralytics/assets", show=True, save=True)'''
# 检测、跟踪、分割:
'''model = YOLO('yolov8n-seg.pt') # 加载一个官方的分割模型
model.track(source="ultralytics/assets", show=True, save=True)'''
# 检测、跟踪、姿态估计:
'''model = YOLO('yolov8n-pose.pt') # 加载一个官方的分割模型
model.track(source="ultralytics/assets", show=True, save=True)'''
#results = model.track(source="ultralytics/assets", show=True, tracker="bytetrack.yaml") # 使用ByteTrack追踪器进行追踪
至此,YOLOv8工具已经搭建完成,可以专注于模型的学习和应用了。
热门推荐
女性气短胸闷上不来气,怎么治疗
tmp是什么格式的文件?.tmp文件用什么软件打开?
搬家地上撒钱什么讲究(为什么搬家后要丢硬币在房子里)
财产保全后强制执行:时间与取消条件详解
淮安访古两日游,感受江淮运河都市的古润水韵
微信钱包被司法冻结怎么办?四种解冻方法详解
向下扎根!气象部门第二批青年专家启程,基层迎来“新鲜血液”!
股票中的“创”是什么意思?这个“创”对股票有什么影响?
白酒执行国家标准详解:从固态法到液态法,教你挑选优质白酒
福州旅游美食攻略一日游,带你玩转当地特色美食
雪碧喝多了有什么害处
客户应收款怎么管理
房产证相关问题解答:编号位置、房屋重建与房产证办理
狗吃哈密瓜:健康益处与注意事项
快手短剧如何制作?快手短剧创作与推广技巧
《阿诺拉》揽奥斯卡五大奖,阿德里安与麦琪称帝封后
国内油价与黄金价格的关联如何分析?这种关联对投资有哪些指导作用?
微星主板如何开启PBO?微星B650M主板设置PBO方法
高效沟通的秘籍如何改善客户关系?
Switch 2 会卖多少钱?让我们分析一下任天堂的定价策略吧
10首最美惊蛰诗词,轻雷一声,微雨落梅,惊艳一世芳华
韩国单身户激增,一人一宠成新趋势!
真三国无双起源更换存档的方法:存档备份与恢复的详细指南
2024年中国远洋渔业行业分析:深海捕捞技术持续发展,行业增加值达4820亿元
中百集团暴涨300%,永辉“错失”5个亿
美联储非常规降息对国际金价影响几何?
NAND闪存(NAND Flash)颗粒SLC、MLC、TLC、QLC的对比
什么是套息交易?为何引发日股剧烈波动?
马扎尔人的迁徙:从乌拉尔山脉到匈牙利的千年历程
废品回收市场中的高利润选择及市场需求分析