您的位置:首页 > 其它

Bounding-box Regression

2016-11-13 21:46 176 查看
http://caffecn.cn/?/question/160

  R-CNN、Fast/Faster R-CNN 都训练了Bounding-box回归器对窗口进行校正,用于提高检测精度。

起因

  Region Proposal 得到的目标框不够准确,使其可能虽能被正确识别,但与 Groundtruth 相比 IoU 较小,故应对窗口进行微调。

问题

  寻找一种映射 f,使 f(Px,Py,Pw,Ph)=(Gx^,Gy^,Gw^,Gh^) ,且 G^≈G,其中 P 为原始 Proposal,G 为Groundtruth,G^ 为预测得到的更接近 G 的回归窗口。

方法

(1)平移变换:

Gx^=Px+Pwdx(P)(1)Gy^=Py+Phdy(P)(2)

(2)尺度缩放:

Gw^=Pwexp(dw(P))(3)Gh^=Phexp(dh(P))(4)

共需要学习 dx(P)、dy(P)、dw(P)、dh(P) 四个变换。

设计

  当输入 Proposal 与 Groundtruth 相差较小时(R-CNN 中为 IoU>0.6),可以认为此变换为线性变换,可用线性回归来建模对窗口微调。

回归

  给定输入的特征向量 X,学习一组参数 W,使得 Y=WX 跟真实结果非常接近。

输入:

  Region Proposal对应的 CNN 特征(pool5features),在训练阶段,输入还包括Groundtruth,即 t∗=(tx,ty,tw,th)。

输出:

  需要的平移变换和尺度变换: dx(P)、dy(P)、dw(P)、dh(P)。

训练:

  变换函数可以表示为 d∗(P)=w∗Φ5(P)(∗表示x,y,w,h),Φ5(P) 为输入Proposal的特征向量,w∗ 为要学习的参数,d∗(P) 为预测值,要让预测值与 Groundtruth 尽可能小,目标函数为:w∗=argminw∗^∑iN(ti∗−wT∗^ϕ5(Pi))2+λ||w∗^||(5)

  其中,平移量和缩放尺度 (tx,ty,tw,th) 分别为:

tx=(Gx−Px)/Pw(6)ty=(Gy−Py)/Ph(7)tw=log(Gw/Pw)(8)th=log(Gh/Ph)(9)

然后利用梯度下降或最小二乘得到 w∗。

测试

  根据学习到的回归参数 w∗,对于一幅新图像,首先经过 CNN 提取特征 Φ5(P),变化量预测即为 d∗(P)=w∗Φ5(P),最后根据(1)~(4)对目标框进行回归。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: