作者:泛音 公众号:知识交点 只分享知识,不发新闻,欢迎机器学习爱好者的投稿。
FasterRcnn梳理
论文地址:https://arxiv.org/abs/1506.01497
Faster R-CNN最突出的贡献就在于提出了Region Proposal Network(RPN)代替了Selective Search,从而将候选区域提取的时间开销几乎降为0(2s -> 0.01s)。目前为止,FasterRcnn也是非常优秀的目标检测算法。关于FasterRcnn论文与代码也是非常建议大家反复阅读研究。
一切都是从一张图的特征开始:features。features来自于主干网络,这里不叙述。
RPN接到features后,先做了一次3x3的卷积,再由两个1x1卷积操作分别得到分类score:2x9与位置偏移loc:4x9结构,这两个结构都会被ProposalCreator与rpn_loss所使用。
AnchorTargetCreator用box与anchor联合得到拟合目标:loc与label。这里前景与背景的label总数为256,loc图外的标记为-1。
RPN_LOSS将会利用上述预测信息与标签信息计算loss,以此来调整使得RPN网络预测的score与loc更好。只对前景计算回归损失。
ProposalCreator的任务是拿到score与loc后,将loc转为roi,按照分数筛选先取12000,再通过极大值抑制去除重叠后再按照score选取前2000个roi。
ProposalTargetCreator将ProposalCreator中得到的2000个roi与标签box利用ROU再进行筛选,留下正负样本共128个。
ROI Pooling层得到这128个rois后,对其坐标对应到特征图,size缩小为1/stride(1/16)。这里在对应的时候,会存在无法整除的现象,所以后来又提出了ROI Align。对应好之后,还要对roi 实施Pooling操作,使得对应好的roi特征图池化到后面层能处理的大小(7x7),在这里还是有量化损失。
FC 21与FC 84分别得到20+1(背景)类的分类与目标的位置。得到的数据将会与ProposalTargetCreator中的真实标签计算roi_loss。
名词解释:
roi=[y_min,x_min,y_max,x_max]实际原图坐标。
loc=[dy, dx, dh, dw]各个位置的偏移。
关于box的回归讲解:
此部分原文内容请查看底部链接:了解更多
本文暂时没有评论,来添加一个吧(●'◡'●)