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换成我们自己的图像:

成功

相关推荐
彭祥.9 小时前
大疆无人机搭载树莓派进行目标旋转检测
yolo·目标检测·目标跟踪
武乐乐~1 天前
YOLO-World:基于YOLOv8的开放词汇目标检测
人工智能·yolo·目标检测
小草cys1 天前
查看YOLO版本的三种方法
人工智能·深度学习·yolo
萧霍之1 天前
基于onnxruntime结合PyQt快速搭建视觉原型Demo
pytorch·python·yolo·计算机视觉
多巴胺与内啡肽.1 天前
YOLOv2框架深度解析
yolo
向哆哆2 天前
UniRepLknet助力YOLOv8:高效特征提取与目标检测性能优化
人工智能·yolo·目标检测·yolov8
孤独野指针*P3 天前
深度学习中的目标检测:从 PR 曲线到 AP
python·深度学习·yolo
闭月之泪舞3 天前
YOLO目标检测算法
人工智能·yolo·目标检测
牙牙要健康3 天前
【深度学习】【目标检测】【Ultralytics-YOLO系列】YOLOV3核心文件detect.py解读
深度学习·yolo·目标检测
羊小猪~~3 天前
深度学习基础--目标检测常见算法简介(R-CNN、Fast R-CNN、Faster R-CNN、Mask R-CNN、SSD、YOLO)
人工智能·深度学习·算法·yolo·目标检测·机器学习·cnn