计算机视觉

边界框(bounding box)

/ BOWND-ing boks /

边界框是说明「物体在图像里何处」的最简单方式:一个正立的矩形,画得刚好大到能把它装进去。它由四个数字来描述——通常是一个角的位置外加宽和高,或者一对对角的坐标。当一个目标检测器宣布「这里有一辆车」时,那个「这里」就是一个边界框。它是计算机视觉里定位的基本单元,故意做得粗糙,以便预测、存储和推理起来都很廉价。

正因为框如此简单,它有一种干净利落的打分方式。要检查一个预测出的框好不好,我们用「交并比」(Intersection over Union,IoU)把它和人工画出的正确框相比:两个框重叠的面积,除以它们共同覆盖的总面积。完美匹配时IoU为1,毫无重叠时为0;一次检测通常要超过某个阈值(比如0.5)才算正确。整个领域,就是用这一个数字来衡量检测的准确率。

需要内化的,是「框」舍弃了什么。一个正立的矩形无法贴合倾斜的、圆的或铺展开的形状,所以它总会吞进一些背景——围住一辆自行车的框,大半是车架与车轮之间的空气。它无法表示精确的轮廓,无法分开同一个矩形内相互重叠的两个物体,也无法捕捉朝向。当这些事情要紧时,你就得去取更丰富的输出:旋转框、关键点,或来自分割的像素掩膜。边界框之所以长存,不是因为它准确,而是因为它是对「哪里」的一个快速、够用的把手。

一个检测器为一只狗预测出一个框,角点在(100, 60),宽80、高50。人工标注的正确框在(105, 65),宽75、高48。两者重叠得很厉害,IoU大约为0.82——远高于通常的0.5阈值,所以这算作一次正确的检测。

四个数字定位物体;与正确框比较的IoU,把「足够接近」变成一个精确的分数。

边界框永远是一个与坐标轴对齐的矩形,所以在非矩形物体周围它必然框进背景,也无法分开相互重叠的东西、或表示朝向。它是对位置的一个有意做得粗糙的把手——要精确的形状,你需要的是分割掩膜,而不是框。

又称
bboxdetection box边界框邊界框检测框