码迷,mamicode.com
首页 > 其他好文 > 详细

Faster rcnn代码理解(4)

时间:2017-08-10 11:52:15      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:targe   cnn   分享   map   这一   get   改变   生成   lin   

上一篇我们说完了AnchorTargetLayer层,然后我将Faster rcnn中的其他层看了,这里把ROIPoolingLayer层说一下;

我先说一下它的实现原理:RPN生成的roi区域大小是对应与输入图像大小(而且每一个roi大小都不同,因为先是禅城九种anchors,又经过回归,所以大小各不同),所以在ROIPoolingLayer层中,先将每一个roi区域映射到经过conv5的feature map上,然后roi对应于feature map上的这一块区域再经过pooling操作映射到一个固定大小的区域,这里我们用feature map_2表示,Faster rcnn中这个feature map_2的大小设为了6*6。而pooling操作就是feature map_2上的每一个点对应于feature map上roi区域上的一个部分中的最大值~具体看代码:

技术分享

上面代码中的spatial_scale在Faster rcnn中为1/16(因为卷积层没有改变大小,只有pool层改变了大小,所以1/16实际就是pool层的级联),上面实现了setup()函数和reshape()函数,接下来就看前向传播了:

技术分享

               技术分享

技术分享

上面代码中:

技术分享

这一部分实现了RoiPooling中的pool操作,其实就是max操作;

最后为了理解,附上灵魂画师的图:

技术分享

 

Faster rcnn代码理解(4)

标签:targe   cnn   分享   map   这一   get   改变   生成   lin   

原文地址:http://www.cnblogs.com/zf-blog/p/7337944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!