caffe,运行fast-rcnn出现Check failed: registry.count(type) == 1 (0 vs. 1) Unknown layer type: ROIPooling

1 篇文章 0 订阅
1 篇文章 0 订阅

win10+VS2013+caffe

fast-RCNN 的demo

win10+vs2013+caffe运行fast-rcnn的demo出现很多问题,看来网上很多给的方法都没有解决,最后自己看代码解决,希望能给后续的人帮助。其中出现Check failed: registry.count(type) == 1 (0 vs. 1) Unknown layer type: ROIPooling 网上的回答没有解决我的问题,就自己调了一下。

运行fast-rcnn时需要下载新的caffe分支,当然也可以自己重新进行编译,我选择的是在自己的caffe上重新编译,添加了caffe.mamaged项目,我自己下载的版本没有roi_pooling_layer.cpp和roi_pooling_layer.cu,当然也没有对应的roi_pooling_layer.hpp。所以我自己在github上可以找到这几个文件然后放在caffe_root/src/caffe/layers下。中间还出了很多小问题,所以不建议用这种方法,可在https://github.com/Microsoft/caffe下载专用fast-rcnn的caffe,根据之前编译caffe下windows的文件,重新生成一次。
然后按照流程运行demo发现出了这个Check failed: registry.count(type) == 1 (0 vs. 1) Unknown layer type: ROIPooling,如下图:
这里写图片描述
我在网上找了很久问题的解决方法,发现自己没用,所以决定自己看代码解决,主要原因是专用的caffe包含roi_pooling_layer.cpp和roi_pooling_layer.cu文件,但是windows版本根本没去编译它们,build的情况下没有生成,所以说windows版本啥时候都是坑。caffe的windows的项目所有依赖的文件都在libcaffe这个项目里面,所以我决定从这里入手,打开libcaffe.vcxproj,发现里面果然没有去生成这两个文件,我在157行加入了

<ClCompile Include="..\..\src\caffe\layers\roi_pooling_layer.cpp" />

在265行加入了

<ClInclude Include="..\..\include\caffe\layers\roi_pooling_layer.hpp" />

在344行加入了

<CudaCompile Include="..\..\src\caffe\layers\roi_pooling_layer.cu" />

同时修改libcaffe.vcxproj.filters文件,在291行加入

<ClCompile Include="..\..\src\caffe\layers\roi_pooling_layer.cpp">
<Filter>src\layers</Filter>
</ClCompile>

在569行加入了

<ClInclude Include="..\..\include\caffe\layers\roi_pooling_layer.hpp">
<Filter>include\layers</Filter>
</ClInclude>

在781行加入了

<CudaCompile Include="..\..\src\caffe\layers\roi_pooling_layer.cu">
<Filter>cu\layers</Filter>
</CudaCompile>

然后重新build下caffe-windows里的项目。在进行fast-RCNN,错误消失。

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 18
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值