YOLO V8语义分割模型部署

目录

[1 配置pytorch环境](#1 配置pytorch环境)

[2 配置yolo环境](#2 配置yolo环境)

[3 测试yoloV8的语义分割模型](#3 测试yoloV8的语义分割模型)


1 配置pytorch环境

我的电脑为Y9000P 4090,英伟达显卡驱动版本为525.105.17,驱动显示最高的cuda版本号为12.0,cuda版本为11.6,cudnn版本号为8.5.0。Anaconda3版本为22.9.0。如下:

对于跑yolo来说,我们创建python3.8环境。

conda create -n yo python=3.8

启动yo环境:

conda activate yo

我的cuda是11.6,安装pytorch1.13.0并用pip加速。

pip install torch==1.13.0 torchvision==0.14.0 torchaudio==0.13.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/

安装成功,测试cuda是否可用:

(yo) liuhongwei@liuhongwei-Legion-Y9000P-IRX8H:~$ python
Python 3.8.18 | packaged by conda-forge | (default, Oct 10 2023, 15:44:36) 
[GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cud
torch.cuda                          torch.cudnn_convolution_relu(
torch.cudnn_affine_grid_generator(  torch.cudnn_convolution_transpose(
torch.cudnn_batch_norm(             torch.cudnn_grid_sampler(
torch.cudnn_convolution(            torch.cudnn_is_acceptable(
torch.cudnn_convolution_add_relu(   
>>> torch.cud
torch.cuda                          torch.cudnn_convolution_relu(
torch.cudnn_affine_grid_generator(  torch.cudnn_convolution_transpose(
torch.cudnn_batch_norm(             torch.cudnn_grid_sampler(
torch.cudnn_convolution(            torch.cudnn_is_acceptable(
torch.cudnn_convolution_add_relu(   
>>> torch.cuda.is_available()
True
>>> 

这样就是成功的了。

2 配置yolo环境

yoloV8环境及其好配置,只需输入一行命令即可安装所有所需依赖:

pip install ultralytics

安装完成。

从官网下载yolo:

yoloV8官网https://github.com/ultralytics/ultralytics 或者直接克隆到桌面:

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

下载预训练模型:在它的官方网站上有用作各种任务的预训练权重。

我们下载目标检测和语义分割权重:

将这些权重放到yoloV8目录下,创建权重文件夹weights,将权重放入其中:

目录结构如下:

至此,我们配置好了yoloV8,开始进行测试。

3 测试yoloV8的语义分割模型

我们在网上随便下载一张图像:

yolo task=segment mode=predict model=weights/yolov8s-seg.pt source=0

预测,可能会出错,不用慌,教程没有问题,是你的conda环境有问题,撞库了。

fusedconv.weight.copy_(torch.mm(w_bn, w_conv).view(fusedconv.weight.shape))

RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE when calling `cublasSgemm( handle, opa, opb, m, n, k, &alpha, a, lda, b, ldb, &beta, c, ldc)`

解决办法:

清空运行时库缓存:

bash 复制代码
unset LD_LIBRARY_PATH

运行成功,我们把source换成我们自己的图像:

成功

相关推荐
人工智能教学实践7 小时前
基于 yolov8_pyqt5 自适应界面设计的火灾检测系统 demo:毕业设计参考
qt·yolo·课程设计
paradoxjun11 小时前
YOLOv8源码修改(4)- 实现YOLOv8模型剪枝(任意YOLO模型的简单剪枝)
深度学习·yolo·目标检测·剪枝
EelBarb1 天前
YOLO11/ultralytics:环境搭建
python·yolo·ultralytics
Archie_IT1 天前
基于云计算、大数据与YOLO设计的火灾/火焰目标检测
大数据·人工智能·yolo·目标检测·云计算
红色的山茶花2 天前
YOLOv10-1.1部分代码阅读笔记-val.py
笔记·深度学习·yolo
干啥都是小小白4 天前
yolov5错误更改与相关参数详解(train.py)
人工智能·算法·yolo
码上飞扬5 天前
YOLOv8:目标检测与实时应用的前沿探索
人工智能·yolo·目标检测
红色的山茶花6 天前
YOLOv11-ultralytics-8.3.67部分代码阅读笔记-conv.py
笔记·深度学习·yolo
呆呆珝7 天前
RKNN_C++版本-YOLOV5
c++·人工智能·嵌入式硬件·yolo
FL16238631297 天前
汽车表面划痕刮伤检测数据集VOC+YOLO格式1221张1类别
深度学习·yolo·汽车