ROI Pooling在Faster-RCNN中的应用理解
Faster-RCNN流程图:
在Faster-Rcnn中使用了ROI pooling,原本我以为只是一种升级版的warped,只是将图片进行缩放到一个合适的大小进行输入,后来发现还是具有很大的不同
假设原输入图像大小为800*800,经过CNN后输出feature map大小为50*50,其中原图中红色框对应为图像经CNN后再经过RPN网络输出的其中一个proposal ROI,在原图中表现为665*665,在feature map上的大小为41*41
Roi-Pooling的输入就是feature map和经过RPN后输出的proposal ROI
一个图中的物体可以输出许多proposal ROI,RoI pooling会将每一个输入的RoI以及feature map上对应RoI的区域 , 转化成一个固定维度的map,输出map的维度取决于设定的ROI pooling中的超参数,比如pooled_size,就是指ROI pooling之后的大小
假设pooled_size为7,就是将ROI区域变成7*7的block,每块block输出区域中最大的值,最终输出也是7*7的维度
例如下图中小的feature map为8*8
当ROI pooling中的pooled_size为2时,会在feature map上将proposal ROI(图中的黑色框)分成2*2共4个block,其中每个block中的输出取max pooling,对应的输出就是
这只是其中一个proposal ROI对应的输出,而每个proposal ROI都会有对应的2*2的输出
并且并不是所有情况下能够被刚好分成n*n块block,会出现某些一个点被重复计算使用的情况,如
图中的十字部分就是被重复多次使用的部分
https://blog.****.net/weixin_44638957/article/details/97144418写的特别好