qq_43124103 2022-02-09 14:01 采纳率: 66.7%
浏览 261
已结题

关于libtorch,网络模型导入导出的问题,在c++中load报错,请问应该怎么检查,是什么原因呢?

在pycharm将训练好的网络模型加载号后,创建一个example输入,使用torch.jit.trace 保存的模型和torch.jit.script保存的模型都出现了torch::jit::Errorreport错误,是网路模型内部出现了其他不属于torch的变量导致的吗

c++代码
###
torch::jit::script::Module module;
//module = torch::jit::load("./resNetFpn-model-14_jit.pt");
module = torch::jit::load("./resNetFpn-model-14_jitscript.pt");###

运行结果及报错内容

img

try catch异常捕捉结果

```
10
[ CPULongType{} ]
cuda::is_available():0
cudNN::is_available():0

Unknown builtin op: torchvision::nms.
Could not find any similar ops to torchvision::nms. This op may not exist or may not be currently supported in TorchScript.
:
File "boxes.py", line 35
by NMS, sorted in decreasing order of scores
"""
return torch.ops.torchvision.nms(boxes, scores, iou_threshold)
~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE

```c++

  • 写回答

3条回答 默认 最新

  • 爱晚乏客游 2022-02-09 14:28
    关注

    确认下你导出的模型是CPU还是GPU的,然后再libtorch种指定推理引擎的时候需要跟模型一致。(✔)

    首先确认下你的libtorch版本是cpu还是GPU的,你导出的模型要对应才行,也就是说libtorch是cpu的版本,你的模型应该导出cpu,gpu的对应(X)。

    其次,你在python下加载下你的torchscript.pt模型看下能不能正确加载。libtorch版本最好和pytorch版本号一致。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月17日
  • 已采纳回答 2月9日
  • 修改了问题 2月9日
  • 创建了问题 2月9日

悬赏问题

  • ¥100 网页游戏在本地页面修改游戏结果
  • ¥30 comfyui openpose报错
  • ¥20 Wpf Datarid单元格闪烁效果的实现
  • ¥15 图像分割、图像边缘提取
  • ¥15 sqlserver执行存储过程报错
  • ¥100 nuxt、uniapp、ruoyi-vue 相关发布问题
  • ¥15 浮窗和全屏应用同时存在,全屏应用输入法无法弹出
  • ¥100 matlab2009 32位一直初始化
  • ¥15 Expected type 'str | PathLike[str]…… bytes' instead
  • ¥15 三极管电路求解,已知电阻电压和三级关放大倍数