libtorch部署yolov5 CPU推理时间和GPU推理平均时间对比

libtorch 部署640 * 640图片GPU推理时间:
在这里插入图片描述
libtorch 部署640 * 640图片CPU推理时间:
在这里插入图片描述
gpu推理时间比Cpu快21.5倍。

深度学习查找直线宽度最小达到4个像素,5*5像素大小可以找到,但是置信度可能达到0.03,灰度值偏差8-10左右时候目标可以被找到,置信度达到0.3左右。
一般查找到最小灰度值差8左右。

7543 * 4712大小整张图片读取平均时间:278ms
在这里插入图片描述
7543 * 4712大小图片libtorch部署Cpu推理平均时间:7.145s
利用裁剪方法(将图片长宽除640,得到96张图片)
在这里插入图片描述7543*4712大小图片切分成640 * 640大小图片libtorch部署Gpu预处理+推理平均时间为90ms
在这里插入图片描述
7543 * 4712大小图片libtorch部署Gpu预

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
要在 C++ 中使用 YOLOv5,您需要进行以下步骤: 1. 安装 LibTorch 您需要从 PyTorch 官网下载适合您操作系统和 CUDA 版本的 LibTorch。 2. 下载 YOLOv5 模型 您可以从 YOLOv5 的官方 GitHub 仓库下载预训练模型。 3. 加载模型 您可以使用 `torch::jit::load()` 函数加载模型。例如: ```c++ torch::jit::script::Module module = torch::jit::load("path/to/model.pt"); ``` 4. 推理 首先,您需要将输入图像转换为 Tensor。您可以使用 OpenCV 或其他图像处理库来完成此操作。例如: ```c++ cv::Mat img = cv::imread("path/to/image.jpg"); cv::Mat img_float; img.convertTo(img_float, CV_32F, 1.0 / 255.0); torch::Tensor tensor_image = torch::from_blob( img_float.data, {1, img_float.rows, img_float.cols, 3}).permute({0, 3, 1, 2}); ``` 然后,您可以将 Tensor 传递到模型中进行推理。例如: ```c++ at::Tensor result = module.forward({tensor_image}).toTensor(); ``` 5. 解析输出 YOLOv5 模型的输出是一个包含所有检测结果的 Tensor。您需要解析此 Tensor 来提取检测结果。例如: ```c++ float* result_data = result.data_ptr<float>(); for (int i = 0; i < result.size(1); i++) { float* class_data = result_data + i * result.size(2); for (int j = 0; j < result.size(2); j++) { float* box_data = class_data + j * result.size(3); // 解析检测结果并进行后续处理 } } ``` 这是一个基本的 YOLOv5 部署流程。但是,由于 YOLOv5 的实现比较复杂,还有一些细节需要注意。建议您在实现时参考 YOLOv5 官方的 PyTorch 实现和其他开源项目,如 yolov5_cpp。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

胖子工作室

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

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

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

打赏作者

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

抵扣说明:

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

余额充值