版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/e01528/article/details/80265118

具体的操作为什么这样做,可参照:

1.Caffe学习之自定义创建新的Layer层

2.如何在caffe中自定义网络层

ROI pooling层

说起ROI Alignment,就要说道faster-rcnn的ROI pooling,

ROIpooling层结构是为了将原图像的rois映射固定大小的feature map上。而此方法有一些缺点,会带来边缘像素的缺失

ROI Pooling层解析

ROI Align的作用

详解 ROI Align 的基本原理和实现细节

如果roi大小为(7,6),而roipooling是分成了(6,6)的部分,(7,6)到(6,6)的转换必然带来了边缘某像素的损失。而roialign利用双线性插值,将roi(7,6)插值扩充到(12,12),此时再做(6,6)的roipooling,会提高精度,充分利用了roi的像素。

用到的文件链接: https://pan.baidu.com/s/1-f98btUdxX5h8bFTKRxLmA 密码: mypk

1.~/py-faster-rcnn/caffe-fast-rcnn/include/caffe/layers 添加roi_align_layer.hpp

2.~/py-faster-rcnn/caffe-fast-rcnn/src/caffe/layers 添加roi_align_layer.cpp roi_align_layer.cu

3.~/py-faster-rcnn/caffe-fast-rcnn/src/caffe/protocaffe.proto添加add for roi align以下的

  1. // Message that stores parameters used by ROIPoolingLayer

  2. message ROIPoolingParameter {

  3. // Pad, kernel size, and stride are all given as a single value for equal

  4. // dimensions in height and width or as Y, X pairs.

  5. optional uint32 pooled_h = 1 [default = 0]; // The pooled output height

  6. optional uint32 pooled_w = 2 [default = 0]; // The pooled output width

  7. // Multiplicative spatial scale factor to translate ROI coords from their

  8. // input scale to the scale used when pooling

  9. optional float spatial_scale = 3 [default = 1];

  10. // add for roi align

  11. optional float pad_ratio = 4[default = 0];

  12. optional uint32 bi_type = 5 [default = 0];

  13. optional bool is_multi_interpolate = 6 [default = true];

4.返回caffe-fast-rcnn路径下 make clean ,make -j64,make pycaffe

5.修改model文件夹下面的prototxt模型文件,将ROIPooling换成ROIAlign

----------------------------------------      更新与2018年5月16日     --------------------------------------

如果你电脑出现下面这样的问题

roi_align_layer.cu:240] Check failed: error == cudaSuccess (7 vs. 0)  too many resources requested for launch

【解决方法】:

1. 删除 roi_align_layer.cu文件

2. 打开roi_align_layer.hpp文件注释掉需要gpu加速的语句.(如下图)

3. 重新编译 make clean ,make -j64,make pycaffe

注意:如果不注释hpp的那一段,直接删除cu文件,重新编译会报错

--------------------- 本文来自 Snoopy_Dream 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/e01528/article/details/80265118?utm_source=copy

faster-rcnn中添加Mask中的RoiAlign层,使回归框更精确( roi_align_layer.cu:240] Check failed: error == cudaSuccess *)相关推荐

  1. 实例分割模型Mask R-CNN详解——从R-CNN,Fast R-CNN,Faster R-CNN再到Mask R-CNN

    转载自 jiongnima 原文链接 https://blog.csdn.net/jiongnima/article/details/79094159 Mask R-CNN是ICCV 2017的bes ...

  2. 实例分割模型Mask R-CNN详解:从R-CNN,Fast R-CNN,Faster R-CNN再到Mask R-CNN

    Mask R-CNN是ICCV 2017的best paper,彰显了机器学习计算机视觉领域在2017年的最新成果.在机器学习2017年的最新发展中,单任务的网络结构已经逐渐不再引人瞩目,取而代之的是 ...

  3. 在vs2008 vc++ 中添加mfc中消息处理函数

    初学vc++,想在vs2008 c++中添加一个按钮需要添加消息处理函数,可是不像6.0,右键添加的选项里只有变量和函数,没有消息处理函数,找了一圈还是在msdn里,具体步骤如下: 1.在类视图中,右 ...

  4. excel表格中添加combobox_Excel中两个表格对比,找出不同数据

    当你有两个Excel工作簿需要对比数据时候,你该怎么做呢?数据少,我们直接用眼睛就可以看到,数据如果太多,那么对比找出不同数据,是一件非常困难的事情.今天,小汪老师就来教大家几招,可以快速有效的帮助大 ...

  5. Win7系统中添加局域网中别人共享的打印机 出错, 找不到驱动程序 的问题的解决...

    在网上看到的,解决了我的问题,记下来. ==================================== 1.点击开始\控制面板\打印机: 2.选择"添加打印机": 3.选 ...

  6. Vista OS 中添加网络中的非Vista OS共享的打印机

    需要首先在Vista OS中安装目标打印机的Vista驱动程序,其他步骤没什么特别.否则会提示"内存不足"这样的消息. 转载于:https://www.cnblogs.com/Fe ...

  7. vs2010中添加项目中找不到EntityFramework实体框架解决办法

    打开VS2010安装包,找到 X:\WCU\EFTools \ADONETEntityFrameworkTools_enu.msi,双击安装就可以了.

  8. PowerBI,自定义编辑同一页面中不同图表之间的交互,使页面交互更灵活

    Power BI默认情况下,图表之间自动关联交互,如果取消或者更改交互方式,使用编辑交互功能即可,关于编辑交互的设置方法,可以参考这篇文字: https://zhuanlan.zhihu.com/p/ ...

  9. Faster R-CNN python版在Ubuntu16.04环境下配置编译

    Faster R-CNN python版在Ubuntu16.04环境下配置编译 1 电脑配置 2 安装显卡驱动 3 安装CUDA 3.1 安装CUDA 3.2 安装CUDNN 3.3 Samples测 ...

最新文章

  1. 从源码分析DEARGUI之菜单
  2. [YTU]_2478( C++习题 虚函数-计算图形面积)
  3. transform插件
  4. java输出打印到文件_log4j简单使用java项目--后台打印以及输出到文件
  5. SQL Server 2008使用LINQ进行数据访问(转载自IT168 [ http://www.it168.com/ ])
  6. 腾讯视频下载位置_腾讯视频怎么下视频到手机
  7. SQLite | SQLite 与 Pandas 比较篇之一
  8. firstchild.data与childNodes[0].nodeValue意思
  9. 一些有关。NET界面处理与多线程的文章
  10. 输入url并按下回车的那一刻发生了什么?
  11. 第十一章、认识与学习BASH
  12. eoe android Studio 安装使用教程
  13. 【实验室乱记】从 0 开始的 STM32L0 的 Gps WiFi 蓝牙模块物联网开发
  14. LCD1602单片机(STC51/STM32)驱动程序详解
  15. 基建管控系统_基建管控系统在电网建设中的应用
  16. 高精度NTC测温的硬件电路以及软件设计
  17. 解除当前设置不允许下载该文件
  18. python猴子偷桃_【Python】每日一练:猴子偷桃
  19. [jzoj100047]【NOIP2017提高A组模拟7.14】基因变异
  20. C++ SLT总结1

热门文章

  1. boost::system::error_category相关的测试程序
  2. boost::mpl::less_equal相关的测试程序
  3. boost::hana::sfinae用法的测试程序
  4. boost::describe模块实现连载功能的测试程序
  5. Boost:顺序一致性的测试程序
  6. ITK:使用最小最大曲率流平滑RGB图像
  7. DCMTK:类OFMap的测试程序
  8. VTK:可视化之RotateActor
  9. VTK:非结构化网格之ClipUnstructuredGridWithPlane
  10. Qt CMake变量参考