边界框是什么?用矩形框标出物体在图中的位置和大小
边界框(Bounding Box),也称为包围框,是用来描述目标在图像中位置和范围的矩形框。在目标检测任务中,模型通过预测物体的边界框来实现对目标的定位:不仅要判断图中有什么,还要用一个框把它准确地框出来。
怎么表示一个边界框
二维图像中最常用的是与图像边缘平行的矩形框,只需要四个数字就能确定。常见的表示方法有几种:用左上角和右下角两个点的坐标表示,也就是 x 的最小值、y 的最小值、x 的最大值、y 的最大值,PASCAL VOC 数据集采用这种格式;用左上角的坐标加上框的宽度和高度表示,COCO 数据集采用这种格式;用框的中心点坐标加上宽度和高度表示,YOLO 系列模型常采用这种格式,而且通常会把坐标除以图像的宽高,归一化到 0 到 1 之间。不同的数据集和工具使用的格式不同,在转换数据时很容易出错,需要特别注意。
边界框的变体
旋转边界框:普通的边界框只能横平竖直,对于倾斜的物体,比如遥感图像中斜停的船只、斜放的文字,会框进大量的背景。旋转框多了一个角度参数,可以紧贴着倾斜的物体。三维边界框:在自动驾驶等场景中,需要知道物体在三维空间中的位置、大小和朝向,通常用一个立方体来表示,包括中心点的三维坐标、长宽高和朝向角,常用于激光雷达点云中的目标检测。
在目标检测中的作用
边界框是目标检测任务的核心:在训练时,人工标注的真实边界框告诉模型物体在哪里;模型预测出边界框后,用交并比(IoU)来衡量它与真实框的重叠程度,判断检测是否准确;模型往往会对同一个物体预测出多个重叠的框,需要用非极大值抑制来去除重复,只保留最好的那一个。很多目标检测模型会先预设一组不同大小和比例的“锚框”,再预测相对于锚框的偏移量来得到最终的边界框;也有不使用锚框、直接预测边界框的方法。
局限
边界框简单、高效、标注成本低,是最常用的物体定位方式。但它也有局限:矩形框无法精确地描述物体的形状,框里总会包含一部分背景,对于形状不规则的物体尤其明显。需要精确轮廓的任务,就要使用像素级的图像分割。此外,在多模态大模型中,边界框也被用来实现“视觉定位”:根据一句文字描述,在图中框出对应的物体。