You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

caffe_xilinx YOLOv3转ONNX时无deephi_resize_param字段报错如何解决

问题原因

google.protobuf.text_format.ParseError: 2027:3 : Message type "caffe.LayerParameter" has no field named "deephi_resize_param"
该报错是因为caffe_xilinx为标准Caffe扩展了专属的deephi_resize_param字段,而官方caffe2onnx默认使用标准Caffe的Protobuf协议定义,无法识别该自定义扩展字段。

解决方法

方案1:替换Caffe Proto定义(最适配方案)

  • 找到本地Python环境中caffe2onnx的安装路径,通常为{Python安装目录}/Lib/site-packages/caffe2onnx
  • 从你的caffe_xilinx源码路径中,找到caffe/proto/caffe.proto文件,替换caffe2onnx目录下自带的标准版本caffe.proto
  • 在caffe2onnx目录下执行编译命令生成新的Proto Python代码:
    protoc --python_out=./ caffe.proto
  • 重新执行模型转换命令即可识别自定义字段。

方案2:修改模型配置文件(临时快速方案)

如果不需要保留deephi_resize层的特殊参数逻辑,可手动修改模型prototxt文件:

  • 全局搜索prototxt中所有deephi_resize_param字段所在的层
  • 将层类型替换为标准Caffe支持的Resize类型,用标准resize_param字段替换deephi_resize_param,原有参数值保持不变
  • 保存修改后的prototxt文件后重新执行转换。

方案3:新增自定义层转换规则(精度最优方案)

如果前两种方案转换后模型精度不符合预期,需要手动添加层映射逻辑:

  • 在caffe2onnx的ops目录下新增DeephiResize层的转换函数,将deephi_resize_param的参数映射到ONNX Resize算子的对应入参
  • 在caffe2onnx的层注册逻辑中,新增DeephiResize层类型到你写的转换函数的映射规则
  • 重新运行转换命令即可。

内容的提问来源于stack exchange,提问作者Rajaalakshmi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 21:15:01