YOLO V8语义分割模型部署

news/2024/7/11 1:28:53 标签: YOLO

目录

1 配置pytorch环境

2 配置yolo环境

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官网icon-default.png?t=N7T8https://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)`

        解决办法:

        清空运行时库缓存:

unset LD_LIBRARY_PATH

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

        成功


http://www.niftyadmin.cn/n/5114589.html

相关文章

v4l2-ioctl.c的一些学习和整理

可以发现,这个宏用的很好,简洁易扩展,自己写代码可以学习下 #define IOCTL_INFO(_ioctl, _func, _debug, _flags) \[_IOC_NR(_ioctl)] { \.ioctl _ioctl, \.flags _flags, \.name #_ioctl, \.func _func, \.debug _…

成都优优聚代运营:打造精细化运营新标杆

成都优优聚美团代运营服务,凭借其专业的团队、优质的服务以及丰富的经验,已经在美团平台崭露头角,成为众多商家的首选代运营服务商。 一、专业团队,打造精细化运营 成都优优聚美团代运营服务拥有一支专业的运营团队,成…

【高级程序设计】Week2-2 HTTP and Web

目录 一、Basics 1. HTTP 2. Web pages(document) 3. Client - Server ①概念 ② Accessing a web page 二、Placing HTTP within context 1. Context of HTTP ① 背景 ② OSI reference model ③ routing information 2. HTTP and TCP ① 关系 ② TCP ③ Conn…

P1451 求细胞数量 题解

文章目录 题目描述输入格式输出格式样例样例输入样例输出 数据范围与提示思路及部分实现完整代码 题目描述 一矩形阵列由数字 0 0 0 到 9 9 9 组成,数字 1 1 1 到 9 9 9 代表细胞,细胞的定义为沿细胞数字上下左右若还是细胞数字则为同一细胞&#x…

Go 代码包与引入:如何有效组织您的项目

一、引言 在软件开发中,代码的组织和管理是成功项目实施的基础之一。特别是在构建大型、可扩展和可维护的应用程序时,这一点尤为重要。Go语言为这一需求提供了一个强大而灵活的工具:代码包(Packages)。代码包不仅允许…

Unity | Image 自定义顶点数据实现圆角矩形

1 圆角方案简介 UGUI 中的 Image 实现圆角效果通常有三种方式,Mask、Shader以及自定义顶点数据,相比于前两者,自定义顶点数据的使用方式更加灵活,同时可以减少 DrawCall,但是会增加顶点及三角形数量。最终实现方案可根…

【C++入门到精通】哈希 (STL) _ unordered_map _ unordered_set [ C++入门 ]

阅读导航 前言一、unordered系列容器二、unordered_map1. unordered_map简介⭕函数特点 2. unordered_map接口- 构造函数- unordered_map的容量- unordered_map的迭代器- unordered_map的元素访问- unordered_map的修改操作- unordered_map的桶操作 三、unordered_set1. unorde…

在配置文件“tsconfig.json”中找不到任何输入。指定的 “include“ 路径为“[“**/*“]”,“exclude“ 路径为[]

在vscode中项目下的tsconfig.json莫名报错 解决办法 在目录中随便创建一个后缀为.ts的文件 便不再报错