faster rcnn如何生成anchors

本文详细解析Faster RCNN中anchors的生成过程,通过generate_anchors.py函数,阐述了基于基础anchor大小(base_size)和ratios、scales参数如何计算出不同长宽比和尺度的anchors。核心步骤包括:确定基础anchor、生成长宽比不同的anchors、生成尺度不同的anchors,以及使用np.hstack和np.vstack组合成最终的anchor矩阵。每个特征点上会生成k个anchor boxes,对应于论文中的概念。
摘要由CSDN通过智能技术生成

      本文就faster rcnn中anchors的函数generate_anchors.py为例,介绍anchors的生成过程。

      首先看下主函数入口。论文中提到anchor两个参数:ratios和scales,长宽比和尺度变换都需要有个基础anchor的大小,也就是base_size的由来,至于16的由来,则等于网络的输入大小 / 特征图大小(生成anchor的feature map层)

def generate_anchors(base_size=16, ratios=[0.5, 1, 2],
                     scales=2**np.arange(3, 6))

      这样," base_anchor = np.array([1, 1, base_size, base_size]) - 1 "就表示基础anchor的大小了。

      其次,看下如何生成长宽比不同的anchors。这里是对anchor的宽高都进行了改变,具体是将宽变为round({sqrt(w*h/ratios))},高变为ws*ratio,这样长宽比就变为ratios了。此时生成3个长宽比不同的anchors。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值