ROI Pooling

roi_cupy.py(该部分代码由C++实现)
详解参考,本篇为借鉴https://blog.csdn.net/zj360202/article/details/78845601

ROI Pooling的输入

输入有两部分组成:

1、特征图:指的是图1中所示的特征图,在Faster RCNN中,它是与RPN共享那个特征图,通常我们常常称之为“share_conv”
2、rois在Faster RCNN 中指的是RPN的输出,一堆矩形候选框,形状为1x5x1x1(4个坐标+索引|index),其中值得注意的是:坐标的参考系不是针对feature map这张图的,而是针对原图的(神经网络最开始的输入)

ROI Pooling的输出

输出是batch个vector, 其中batch的值等于RoI的个数,vector的大小为channel w h; RoI Pooling 的过程就是将一个个大小不同的box矩形框,都映射成大小固定(w * h)的矩形框;

ROI pooling具体操作如下:
(1)根据输入image,将ROI映射到feature map对应位置;
(2)将映射后的区域划分为相同大小的sections(sections数量与输出的维度相同);
(3)对每个sections进行max pooling操作;

进行回归和预测

image.png
classifier.py

分类预测判断预测的结果和种类,回归预测对框做出调整

image.pngimage.png
该部分为用vgg16训练时运行其后面部分代码为使用resnet50代码训练时使用的代码image.png

image.pngimage.pngimage.pngimage.png