背景

将linux下训练的caffemodel移植到windows上使用但是出现以下错误提示:Can't parse message of type "caffe.NetParameter" because it is missing required fields: layer[502].box_annotator_ohem_param.roi_per_img

原因

实际上,我也知道原因,是因为二者的caffe的版本不一致。这是个遗留问题,是由最初的开发人员遗留下来的。windows上的caffe(生产环境)和linux上的caffe(开发环境)上的版本不一致。具体细节我不是很清楚,大概意思是linux上的caffe是官方的caffe,但是windows上的caffe是个私人的caffe(好像是那个经典的faster-cnn的caffe)

解决方法

修改src/proto/caffe.proto, 将required变为optional,并重新编译。关于caffe的proto,可以看这篇文章。具体步骤如下:

  1. 根据提示信息可以看到,缺少proto中所必须的box_annotator_ohem_param.roi_per_img,因此把这个字段的required 改为 optional,下图显示的是更改过后的情况。
    .
  2. 下面重新编译caffe.proto:
    1. 下载protobuf 官方文档:https://developers.google.com/protocol-buffers/docs/cpptutorial 将protoc.exe放在C:\Windows\System32路径下。
    2. /caffe-master/src/caffe/protoc下执行自己新建的extract_proto.bat文件,文件内容如下面的代码所示:
    3. 双击extract_proto.bat文件,生成caffe.pb.hcaffe.pb.cc文件。caffe.pb.cc文件留在src/caffe/proto下,caffe.pb.h移动至include/caffe/proto下。
protoc caffe.proto --cpp_out=./
pause
  1. 重新编译caffe项目
    我是重新编译了libcaffe -> caffe, 可能只编译caffe就行了?我也不太清楚。至此,caffe.proto的修改才正式生效(至少在我这是这样的)

参考:
https://blog.csdn.net/sinat_26269257/article/details/84788469
https://blog.csdn.net/lily1234567/article/details/87971187

caffe/ windows 10 /Can't parse message of type caffe.NetParameter because it is missing required相关推荐

  1. GPU+windows 10+vs2013+cuda7.5环境下配置caffe框架

    最近学习caffe框架,翻阅了几篇博客来学习环境搭建及简单的应用,期间遇到一些坑,便写下来,便以后查看,也是希望大家共同学习.话不多说,开始整. 1.首先,我们需要安装VS2013(如果跟cuda7. ...

  2. Don't know how to handle message of type 'java.lang.String'. Are you missing a protocol encoder?

    没有用: acceptor.getFilterChain().addLast("codec",                    new ProtocolCodecFilter ...

  3. 隐藏windows 登录_如何在Windows 10登录屏幕上隐藏您的个人信息

    隐藏windows 登录 If you log in to Windows with a Microsoft account, the Windows 10 sign in screen shows ...

  4. Windows 10 Visual Studio 2015 配置 Caffe

    笔记本是双显卡,读研的时候成功的在Ubuntu下配置好了一次Caffe,并且完成了深度学习的实验,前不久因为一个小的问题,导致NVIDIA驱动出了问题,以后再也没有在Ubuntu下成功配置好Caffe ...

  5. Caffe 在Windows 10下的安装

    参考信息: How to install Caffe in windows in 5 min (https://www.youtube.com/watch?v=nrzAF2sxHHM) http:// ...

  6. 背水一战 Windows 10 (83) - 用户和账号: 数据账号的添加和管理, OAuth 2.0 验证

    原文:背水一战 Windows 10 (83) - 用户和账号: 数据账号的添加和管理, OAuth 2.0 验证 [源码下载] 背水一战 Windows 10 (83) - 用户和账号: 数据账号的 ...

  7. Caffe Windows版本的编译

    2019独角兽企业重金招聘Python工程师标准>>> 1:Caffe的主版本只支持Linux,所以要下载专门的Caffe Windows版本,网址为 https://github. ...

  8. Windows 10 下 VS2017(+Clion) C/C++ 配置 OpenCV-4.4.0

    VS2017(+Clion) 配置 OpenCV-4.4.0 我的小站.Github OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视 ...

  9. 设置Windows 10时如何创建本地帐户

    Windows 10 tries its hardest to make you use a Microsoft account. The option was already hidden, but ...

最新文章

  1. 面向自动驾驶车辆的高效激光里程计(ICRA2021)
  2. RS232交叉串口线的做法与测试!
  3. IOS Animation-CAShapeLayer、UIBezierPath与Animation的结合
  4. 今日arXiv精选 | Survey/ICCV/ACM MM/ICML/CIKM/SIGIR/RecSys/IROS
  5. 自适应小波阈值去噪python_基于python的小波阈值去噪算法
  6. 检查vCenter Server上STS证书的过期日期(79248)(STS证书过期,导致 vCenter 报503无法登陆VC)
  7. 中年程序员真的只能坐等被裁吗?
  8. php include_once 路径,php使用include加密路径的方法介绍
  9. Linux系统盘预留,释放 Linux 系统预留的硬盘空间
  10. mybatis官网下载
  11. 使用FireBird数据库基本知识
  12. zuc算法代码详解_密码学算法之序列密码中的ZUC算法详解
  13. 时尚行业的二维码应用!2021 全新流行趋势
  14. fabs linux头文件,C/C++ algorithm头文件的max()、min()、abs()和math头文件的fabs(
  15. Pr 案例:制作快闪转场效果
  16. 开发手札:git日常抽风记录
  17. 2022国庆头像制作iAPP安卓源码+附APP成品
  18. 写给大家看的PPT设计书
  19. Polo360网站页面制作练习
  20. 嵌入式Linux开发四大金刚

热门文章

  1. 激光雷达的分类、主流激光雷达、原理是什么
  2. 我们眼中的互联网和认识以及我自身的看法
  3. 北京邮电/北京航空航天大学上机题目
  4. sin函数对照表_常见三角函数值对照表
  5. C语言-学生学号成绩读入程序(输出了学生总分、平均分、名次以及学生信息的查询)
  6. pytorch 中 混合精度训练(真香)
  7. 【电商专享】聚划算活动海量商品一键报名,省时省力!
  8. 推荐Java程序员阅读的书籍
  9. Android 获取SIM卡信号
  10. BroadCast Channel