YOLOv8框架自带模型体验页面全解析

笔记哥 / 04-18 / 33点赞 / 0评论 / 783阅读
# 简介 YOLOv8 是 ultralytics 公司在 2023 年 1月 10 号开源的 YOLOv5 的下一个重大更新版本,目前支持图像分类、物体检测和实例分割任务。 YOLOv8 是一个 SOTA 模型,它建立在以前 YOLO 版本的成功基础上,并引入了新的功能和改进,以进一步提升性能和灵活性。在图像检测识别领域yolov8和yolov5是使用较多的两款框架,兼顾精度和速度。 本文讲解yolov8自带的一个实时目标检测页面的使用。页面如下,可以在页面上体验yolov8上所有的模型,包括目标检测、分类、分割、姿态、定向框。 ![](https://cdn.res.knowhub.vip/c/2504/19/291b7509.png?G1cAAMR0rnGCXj8kbiMO1QSBBJoBizSCSgnr9Z6z9k30%2fSEQy89ofcb%2b8JvWZxCjoF6VBOIwpMCVi7uKoiRWcbjBkNcI) # 安装 1. 创建虚拟环境 conda create --name yolov8 python=3.10 -y conda activate yolov8 1. 安装pytorch conda install pytorch2.2.0 torchvision0.17.0 torchaudio==2.2.0 pytorch-cuda=12.1 -c pytorch -c nvidia 由于numpy版本会导致报错,需要降低numpy版本 conda install numpy==1.26.2 1. 下载工程 git clone --branch v8.2.103 ![](https://cdn.res.knowhub.vip/c/2504/19/fc48bdc4.git?Gy0AAARqbrFJtzU1wG8EJ0cwRQkKqVrWEXBrmrmI3g3%2b0slb%2bdEphgs%3d) 使用 --branch v8.2.103 选择yolov8版本 1. 安装工程 pip install -e . -i ![](https://cdn.res.knowhub.vip/c/2504/19/d1d9c9cb?GycAAES3eX7z7%2fukpISSgXoUIgVgp4o5RPjpqA5Fpcc%2brbDVmCHpj9cA) 1. 测试推理 yolo predict model=yolov8n.pt source='ultralytics/assets/zidane.jpg' device=0 ```csharp yolo predict model=yolov8n.pt source='ultralytics/assets/zidane.jpg' device=0 Ultralytics YOLOv8.2.103 🚀 Python-3.10.16 torch-2.2.0 CUDA:0 (NVIDIA GeForce RTX 2080 Ti, 11004MiB) YOLOv8n summary (fused): 168 layers, 3,151,904 parameters, 0 gradients, 8.7 GFLOPs image 1/1 /nfs/user_home/lijinkui/projects/ultralytics/ultralytics/assets/zidane.jpg: 384x640 2 persons, 1 tie, 86.8ms Speed: 7.0ms preprocess, 86.8ms inference, 209.4ms postprocess per image at shape (1, 3, 384, 640) Results saved to runs/detect/predict 💡 Learn more at ``` 推理结果在:Results saved to runs/detect/predict ![](https://cdn.res.knowhub.vip/c/2504/19/b5fd49e5.png?G1YAAOQ5d14KEAj2nXZQm6mbNgMSWQSVEtbrPWftG%2bD7g5ElP6P1GfvDX1qfAYQF3RwYWVGQPDkVVRVnTHQJmVWveY0A) 到此为止就说明yolov8安装没有问题了。 # 训练 使用官方数据测试训练: yolo detect train data=coco8.yaml model=yolov8n.pt epochs=10 imgsz=640 # 页面展示 yolov8自带一个推理的前端页面,下面说明开启的步骤。 首先使用 yolo help 这个命令查看yolo的帮助信息 ```csharp (yolov8) lijinkui@node07:~/$ yolo help Arguments received: ['yolo', 'help']. Ultralytics 'yolo' commands use the following syntax: yolo TASK MODE ARGS Where TASK (optional) is one of {'segment', 'detect', 'classify', 'pose', 'obb'} MODE (required) is one of {'predict', 'val', 'train', 'export', 'track', 'benchmark'} ARGS (optional) are any number of custom 'arg=value' pairs like 'imgsz=320' that override defaults. See all ARGS at or with 'yolo cfg' 1. Train a detection model for 10 epochs with an initial learning_rate of 0.01 yolo train data=coco8.yaml model=yolov8n.pt epochs=10 lr0=0.01 2. Predict a YouTube video using a pretrained segmentation model at image size 320: yolo predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320 3. Val a pretrained detection model at batch-size 1 and image size 640: yolo val model=yolov8n.pt data=coco8.yaml batch=1 imgsz=640 4. Export a YOLOv8n classification model to ONNX format at image size 224 by 128 (no TASK required) yolo export model=yolov8n-cls.pt format=onnx imgsz=224,128 5. Explore your datasets using semantic search and SQL with a simple GUI powered by Ultralytics Explorer API yolo explorer data=data.yaml model=yolov8n.pt 6. Streamlit real-time webcam inference GUI yolo streamlit-predict 7. Run special commands: yolo help yolo checks yolo version yolo settings yolo copy-cfg yolo cfg Docs: Community: GitHub: ``` 可以看到yolo出来训练,推理等任务之后还有两个功能,分别是5和6。其中6就是一个可以在前端推理的功能。 启动推理功能,这里需要魔法,从github下载推理模型。或者下载好放在跟目录下也行 ```csharp yolo streamlit-predict ``` ![](https://cdn.res.knowhub.vip/c/2504/19/9d2a1450.png?G2UAAORwXUynQa3tAZRMSMV63XVtZyIqqwWXKR9jws%2f9937XxKRYWdqWlkQZYRsMiTcmBOHIQQSyy00dKg9Seg%2bmqAzEoiyBq6KR2pbWNhm3pQU%3d) 打开浏览器页面 ![](https://cdn.res.knowhub.vip/c/2504/19/e0464503.png?G2UAAGRxTqmCLTs35r9kQirW6%2b97vzJRVa%2b4zsU5Jfzc%2fzmehpiU1dG%2bdiRqhV20JMHaGEU0GuchplTWxllobMNg69JBUbOB0DSu8aVIwxH3tQM%3d) 参数包括: - Video: 选择推理源摄像头或视频 - Model: 选择模型,yolov8的所有模型都能选择,包括检测、分类、分割、姿态、角度,甚至yolo-word - Classes: 选择推理的类别 - 下面还有置信度控制。 点击Start就可以看到推理结果了。 # 演示视频 检测: ![](https://cdn.res.knowhub.vip/c/2504/19/d64b7de1.png?G1cAAGSd87ygE1v8TjyqCQIJNAMWaQSVEtbrPWftG%2bD7g5E1P6P1GfvDb1qfAYQXujkwckFFCuRkJMKEmkiruKhazWsE) 分割: ![](https://cdn.res.knowhub.vip/c/2504/19/ffd64347.png?G1YAAMTsdJxI8pC026hD2jvFHc2ARBZBpYT1es9Z%2byb6fgcjx2e0Pn1%2f%2bEvr00m4sqkRGIUzghcTlVRMrhKgMEHWFNdw) 姿态: ![](https://cdn.res.knowhub.vip/c/2504/19/7e760f09.png?G1cAAETn9LwUShBx3%2bkOtsSpiWsGLNIIKiWs1%2fP%2f%2b1xE7xfCovmefaw4H37TxwoCG3t1EpbCihTgqFCYlZbgatYA9bxnAA%3d%3d) 角度: ![](https://cdn.res.knowhub.vip/c/2504/19/3a14b6a3.png?G1cAAMR0rnGCXh953EYcqgkCCTQDFmkElRLW6z1n7Zvo%2b10gFp%2fR%2bvT94TetTydGQsmFBHLBEAIXzmzKSTgIkLRqthrXcA%3d%3d)