• 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是否可用:

    1. (yo) liuhongwei@liuhongwei-Legion-Y9000P-IRX8H:~$ python
    2. Python 3.8.18 | packaged by conda-forge | (default, Oct 10 2023, 15:44:36)
    3. [GCC 12.3.0] on linux
    4. Type "help", "copyright", "credits" or "license" for more information.
    5. >>> import torch
    6. >>> torch.cud
    7. torch.cuda torch.cudnn_convolution_relu(
    8. torch.cudnn_affine_grid_generator( torch.cudnn_convolution_transpose(
    9. torch.cudnn_batch_norm( torch.cudnn_grid_sampler(
    10. torch.cudnn_convolution( torch.cudnn_is_acceptable(
    11. torch.cudnn_convolution_add_relu(
    12. >>> torch.cud
    13. torch.cuda torch.cudnn_convolution_relu(
    14. torch.cudnn_affine_grid_generator( torch.cudnn_convolution_transpose(
    15. torch.cudnn_batch_norm( torch.cudnn_grid_sampler(
    16. torch.cudnn_convolution( torch.cudnn_is_acceptable(
    17. torch.cudnn_convolution_add_relu(
    18. >>> torch.cuda.is_available()
    19. True
    20. >>>

            这样就是成功的了。

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

            成功

  • 相关阅读:
    超级简单的SSM框架(全注解,源码+分析,看一眼就会)
    SSM+基于web的《计算机基础》自学系统的设计与开发 毕业设计-附源码221509
    如何在STM32中实现TCP通信?
    上海00后985毕业女生月薪1.2w,想找年薪40万程序员,网友表示很不理解
    DNS解析
    【Python黑科技】cv2库实现证件照抠图替换背景(注释比代码多)
    2022 SWPU新生赛&HNCTF web部分题目
    Linux新手教程||Linux vi/vim
    JMeter 随机数生成器简介:使用 Random 和 UUID 算法
    【Linux】信号的产生
  • 原文地址:https://blog.csdn.net/qq_41694024/article/details/133983334