pytorch之libtorch(C++)

libtorch:
从这里选择库下载:

https://pytorch.org/get-started/locally/

 相关测试参考代码:

libtorch-yolov5: https://github.com/yasenh/libtorch-yolov5
yolov5: https://github.com/ultralytics/yolov5z

注意:   需要转换为 yolov5s.torchscript.pt 最新版本中不需要修改export.py,需要指定CPU还是GPU,

GPU与CPU生成的 script.pt不能共用(不知道原因)

 我是windows系统vs2019, cmake gui来配置;

其中,系统拥有8张GPU显卡, 如何单独使用GPU显卡请修改:

//判断CUDA是否可以使用与数量
std::cout << "cuda::is_available():" << torch::cuda::is_available() << std::endl;
std::cout << "cuda::cudnn_is_available():" << torch::cuda::cudnn_is_available() << std::endl;
std::cout << "cuda::device_count():" << torch::cuda::device_count() << std::endl;

//固定到那张GPU显卡
#include "cuda_runtime_api.h"
int gpu_id; //从0开始,我的是8张固: 0~8
cudaSetDevice(gpu_id);

//请修改Detector::Detector中的部分:

//加载到那种显卡中
module_ = torch::jit::load(model_path, torch::Device(torch::DeviceType::CUDA, index));

//我最开始后面的没有写,以为 module_.to(device_); 可以,结果报错:Expected all tensors to be on the same device, but found at least two devices, cuda:1 and cuda:0!
//后面修改上面即可实现了GPU的选择;
//Pytorch中与 CUDA_VISIBLE_DEVICES 有关;

 我发现,在多线程时,GPU利用率很低,但是处理花的时间很长不知道为什么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
libtorch是一个用于C++的开源机器学习库,它是PyTorch框架的C++前端,可以在不依赖Python环境的情况下使用PyTorch的功能。它提供了一些用于构建、训练和部署深度学习模型的工具和接口。 MobileNet是一种轻量级的卷积神经网络模型,专门设计用于在移动设备和嵌入式系统上进行实时图像分类和目标检测。MobileNet_v2是对MobileNet的改进版本,通过引入更多的深度可分离卷积和倒残差结构,提高了模型的性能和效率。 使用libtorch和MobileNet_v2,我们可以在C++环境中构建、训练和部署目标检测或图像分类模型。首先,我们可以使用libtorch提供的工具将MobileNet_v2的模型定义加载到C++程序中。然后,我们可以使用该模型进行推理,对输入图像进行分类或目标检测,并获取相应的输出结果。 在使用libtorch和MobileNet_v2时,需要注意以下几点:首先,我们需要确保在环境中正确配置了libtorch库,并将其链接到我们的C++程序中。其次,我们可以根据具体的任务需求,使用MobileNet_v2的预训练模型或根据自己的数据集进行训练和微调。最后,我们可以使用libtorch提供的接口进行模型的推理和结果的处理。 总而言之,libtorch和MobileNet_v2的结合可以提供一个在C++环境中进行目标检测和图像分类的解决方案,使得我们可以在移动设备或嵌入式系统中部署高性能且轻量级的深度学习模型。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值