请问RPN具体细节
来源:5-4 Fast rcnn介绍

xue109196
2019-01-21
老师请问fc以后有了2k个score和4k个coordinate,k是因为有k个box,但是我还是没懂这9个比例到底是怎么影响fc层输出的。是因为在计算loss的时候只和相应的scale和ratio对比吗?(我的意思是如果把2k个score和4k个coordinate push进NMS,得出来最大的那个box比如说是256^2上的1:2的某个anchor,就算出原图像这个点这个范围大小上和ground truth的loss吗?但是做完back prop以后根本没办法保证这个比例是1:2,很可能最后和这个比例没关系。我没有读faster-rcnn的源码,不知道有没有理解错)那这个样子其实在做conv的时候和box没有关系是吗?是在train的过程中网络才明白这k个box里面哪个对应哪个scale和ratio是吗?这个prior box到底有什么意义?
老师我在读YOLO v3 paper的时候说如果从这样的box size开始(论文里面没说开始做什么……怎么开始……)会使得训练更快,但是完全不懂如何初始化输出层成固定尺寸比例,只能初始化weight啊。
1回答
-
这个问题问的很好!描述也很丰富,说明学的很认真,加油!
这里的k个box是我们理论上要提取的default box的个数,在原始图像经过下采样之后,会得到压缩过之后的feature map。对于这些feature map上的点,可以映射到原图上去,每个点的感受野都是一个原图上的区域,一个feature map会有多个channel。所以我们可以将feature map上的每个点+多个channel,看成是一个原图上,相应区域的特征。但是实际上,我们具体考虑原图上的多大的区域,并不是固定的。而是将feature map上的点作为anchor,映射到原图,体现在原图上就是一系列离散的点,然后以这些离散的点作为中心,进行抠图。具体抠多大?就是scale和ratio决定的,这里会有一个计算公式。注意这里所谓的抠图 都是相对于原图而言的。因为feature map和原图都是按比例放缩的(这也就解释了为什么图像下采样,要尽量保证feature map是整数倍,加padding),所以原图上的区域,在feature map上的区域也能定位到,也就能找到原图相应区域在当前卷积层的特征。另外,原图上我们是知道目标区域的,因此这些区域的lable也就是已经知道了。有了特征以后,并不是说这些default box就是我们要预测的目标,而是用得到的特征,在来回归真实的坐标,进行调整。prior box则是相对于default box而言的,default box是理论上可以提取的bbox,但是实际上这些bbox并不会都用上,实际用的bbox就是prior box。
112019-04-03
相似问题