【学习笔记】目标检测中,为什么要对anchor候选框进行坐标/尺寸归一化处理?

本文介绍SSD中默认框(default box)的生成算法,包括如何根据特征图尺寸计算相对坐标,确保目标检测框在不同尺度下准确无误。通过规范化处理,避免了训练过程中的坐标偏移问题。

ssd\src\utils.py 中的代码段

for idx, sfeat in enumerate(self.feat_size):
    sk1 = scales[idx] / fig_size  # scale转为相对值[0-1]
    sk2 = scales[idx + 1] / fig_size  # scale转为相对值[0-1]
    sk3 = sqrt(sk1 * sk2)
    # 先添加两个1:1比例的default box宽和高
    all_sizes = [(sk1, sk1), (sk3, sk3)]
for w, h in all_sizes:
    for i, j in itertools.product(range(sfeat), repeat=2):  # i -> 行(y), j -> 列(x)
        # 计算每个default box的中心坐标(范围是在0-1之间)
        cx, cy = (j + 0.5) / fk[idx], (i + 0.5) / fk[idx]
        self.default_boxes.append((cx, cy, w, h))

       anchor的绝对坐标是以特征图的像素值(scale)为基础,如果不进行归一化,在后续的训练过程中发生尺度变化,或最后映射回原图时,就会产生坐标偏移,造成不必要的误差。

        进行归一化处理后的相对坐标是以在特征图上的比例为原则,根据图像的scale就能得到相应的目标框。

绝对坐标
相对坐标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值