一阶段 vs 两阶段检测
同一张图,两条路线:两阶段先框后判(精而慢),一阶段一步到位(快而糙)。
两阶段 · Two-stage
先框后判 · 精而慢
一阶段 · One-stage
一步到位 · 快而(早期)糙
VS
≈ 2000 候选框
① 生成候选区 (region proposals)
狗 0.97
② 逐个 warp → CNN → 分类 + 回归
慢 · 低 FPS
狗 0.93
Resize → CNN → 直接回归 → NMS
每位置输出
1 + 4 + n
(可能性+位置+类别)
快 · 高 FPS
Anchor(锚框):在参考框上微调,而非从零猜框
CNN 特征图 · 每个点生成一簇 anchor
预设不同大小 / 长宽比的参考框(虚线)
anchor + 偏移量 = 最终框
b_x = σ(t_x) + c_x
网络只预测偏移 t_x;c_x 为网格坐标;σ 把偏移压到 [0,1]
精度 ↔ 速度 权衡(mAP vs FPS)
FPS 速度 →
mAP 精度 ↑
两阶段
高精度 · 低 FPS
一阶段
高 FPS · 精度已追上
早期一阶段·略糙
逐代追上
实时交互 / 摄像头 / 机械臂感知 → 选一阶段(YOLO)
1
同一张图、同一个目标——看两条检测路线怎么走。
▶ 播放
重放
记住这点:
两阶段与一阶段的输入完全一样,差别只在「怎么产生框」。