YOLO V8语义分割模型部署

目录

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

        成功

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
构建一个 YOLO(You Only Look Once)语义分割模型是一项复杂的任务,需要进行以下步骤: 1. 数据收集和准备:收集包含各种类别的图像和对应标签。每个图像需要有像素级别的标注,以区分不同的物体。确保数据集具有足够的多样性和数量。 2. 数据预处理:对数据进行预处理,包括图像的大小调整、数据增强(如旋转、翻转、裁剪等)和标签的编码处理。 3. 构建模型架构:选择适当的深度学习架构来构建 YOLO 语义分割模型。可以使用常见的网络架构,如 U-Net、FCN(全卷积网络)或 DeepLab 等。确保模型具有适当的感受野和上下文信息来进行准确的语义分割。 4. 模型训练:使用准备好的数据集对模型进行训练。在训练过程中,需要定义合适的损失函数,如交叉熵损失或 Dice 损失函数,并选择适当的优化算法,如 Adam 或 SGD。通过迭代训练,优化模型参数来提高准确性。 5. 模型评估和调优:使用验证集对模型进行评估,计算准确率、召回率、F1 分数等指标。根据评估结果调整模型架构、超参数或数据集,以提高模型性能。 6. 模型推理和应用:使用经过训练和调优的模型对新的图像进行语义分割。将模型应用于实际场景中,可以通过像素级别的标注来获取物体的位置和类别信息。 请注意,构建 YOLO 语义分割模型是一项复杂的任务,需要深度学习和计算机视觉领域的知识和经验。确保掌握相关基础知识并参考相关文献和代码库来完成这个任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

APS2023

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值