Fastdeploy快速部署YOLOv8模型(含安装教程及源码)

本文介绍了FastDeploy,一种高效的AI推理部署工具,它支持多种硬件和操作系统。作者分享了安装教程、遇到的问题及解决方案,并给出了YOLOv8模型部署的实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

本文为笔者最近两天尝试使用FastDeploy进行一个快速的模型部署实践下面简单介绍一下关于FastDeploy是什么,相较于传统部署的优势,装的时候遇到的小问题,最后还有安装的教程以及简单的部署实战。

FastDeploy一个低门槛,时间快,可以做到一次训练,一套模型,随处部署,运用灵活,拓展性强大的一款高效的AI推理部署工具,覆盖当前大部分热门的部署项目,覆盖各大主流硬件NVIDIA ,intel等,4类操作系统Windows,Linux,Android,iOS.不同架构平台设备,轻松部署,所以Fastdeploy的优势不言而喻

FastDeploy GitHub链接:https://github.com/PaddlePaddle/FastDeploy/tree/develop

接下来是Fastdeploy的快速安装

安装前的要求:

  • CUDA >= 11.2、cuDNN >= 8.0、Python >= 3.6
  • OS: Linux x86_64/macOS/Windows 10     (win11也是可以的)

FastDeploy的安装 

安装GPU版本
pip install numpy opencv-python fastdeploy-gpu-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html
安装CPU版本
pip install numpy opencv-python fastdeploy-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html
conda安装(推荐)
conda config --add channels conda-forge && conda install cudatoolkit=11.2 cudnn=8.2
注:conda安装完可能遇到的问题(没遇到可忽略)

这里有一点需要注意如果说你在conda的虚拟环境里面成功装了CUDA11.2 最后运行告诉你FastDeploy 仍然无法正确识别你的 CUDA 路径就需要手动添加一下

解决方法:因为之前笔者的电脑装过CUDA12.1版本,这里做个解决演示

首先找到装到虚拟环境里的CUDA11.2的位置,这个一般直接在Anaconda如红箭头所示的位置pkgs这个文件夹里,点击然后复制好这个路径

接着把环境路径改一下(建议先把之前用的CUDA路径备份截个图,防止后面要改)

好了这就可以解决了!(没有遇到这个问题的可以直接忽略这个)

FastDeploy部署示例

这里笔者提供官网下载的模型(x和n模型),一张预测图片,和一个简单部署代码示例

模型预测图片百度网盘链接(含图)

链接:https://pan.baidu.com/s/14Hs9oMtrx-4GNVuMx-EQ2w 
提取码:yyds

如果是自己的pt文件要转onnx的可以看笔者另一篇博客链接:YOLOv8模型转换pt->onnx(附上代码)

原始图片如下:

 

简单的部署示例(代码)

使用的例子是YOLOv8x的模型

import fastdeploy as fd
import cv2


def build_option():
    option = fd.RuntimeOption()
    option.use_gpu()
    return option


# 配置运行时环境,加载模型
runtime_option = build_option()
model = fd.vision.detection.YOLOv8('D:/Web page download/yolov8x.onnx', runtime_option=runtime_option)

# 读取图像并进行预测
image_path = 'D:/Web page download/111.png'  # 图片路径
image = cv2.imread(image_path)
result = model.predict(image)

# 可视化结果
vis_frame = fd.vision.vis_detection(image, result)

# 显示图像
cv2.imshow("Frame", vis_frame)

while True:

    # 按下 'q' 键退出循环
    if cv2.waitKey(1) & 0xFF == ord('q'):
        cv2.imwrite('result.png', vis_frame) #图像保存在当前文件夹下
        break


# 释放窗口
cv2.destroyAllWindows()

进行了一个简单的图像预测并且在按下q健后释放窗口并把图片保存在了当前文件夹下

结果如图所示

至此,Fastdeploy部署YOLOv8模型的一个样例结束,也可以换成调用摄像头。。

import fastdeploy as fd
import cv2


def build_option():
    option = fd.RuntimeOption()
    option.use_gpu()
    return option


runtime_option = build_option()
model = fd.vision.detection.YOLOv8('D:/Web page download/yolov8x.onnx', runtime_option=runtime_option)

cap = cv2.VideoCapture(0)

while True:

    ret, frame = cap.read()

    if not ret:
        break

    result = model.predict(frame)

    vis_frame = fd.vision.vis_detection(frame, result)

    cv2.imshow("Frame", vis_frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

好了,小白的一天学习成果就是这些,若有问题恳请大家指出,非常感谢>.<

### RV1126 平台部署 YOLOv5 的详细步骤 #### 准备工作 为了成功在 Rockchip RV1126 上部署 YOLOv5 模型,需先完成环境搭建并获取必要的工具和资源。 进入 `FastDeploy` 项目中的指定路径来准备安装包: ```bash cd FastDeploy/examples/vision/detection/yolov5/rv1126/cpp/build/install/ ``` [^1] #### 部署过程 通过 ADB 工具可以方便地将编译好的应用程序传输至目标设备。确保已连接好开发板并通过命令行验证连接状态正常之后,可继续后续操作。 构建的 C++ demo 应用程序名为 `yolov5_detect_demo`,该应用实现了 YOLOv5 探测功能,并最终打包成同名可执行文件用于实际运行测试[^2]。 #### 获取预训练模型 对于想要快速上手的朋友来说,可以从官方渠道下载预先训练好的权重文件。这里推荐选用轻量级版本如 `yolov8n-seg` 来减少计算负担[^3]。 #### 实际操作指南 - **确认依赖项**:检查本地机器是否已经配置好了 Android SDK 和 NDK 环境变量;同时也要注意 ARM 架构交叉编译器的存在与否。 - **同步代码库**:克隆最新的 FastDeploy Git 存储库到个人电脑硬盘里,以便随时跟踪上游更新情况以及修复潜在 bug。 - **调整参数设置**:依据具体应用场景修改源码里的超参定义部分,比如输入图片尺寸、置信度阈值等选项。 - **编译生成二进制**:利用 CMake 或者其他自动化脚本启动整个项目的编译流程,直至获得适用于嵌入式系统的专用镜像。 - **上传固件映像**:借助 adb push 命令把刚刚制作出来的 `.bin` 文件传送到远端主机相应位置下等待加载。 - **启动推理引擎**:最后一步就是调用之前提到过的检测示范程序来进行实时物体识别啦!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值