跟李沐学AI:目标检测、锚框

边缘框

用于表示物体的位置,一个边缘框通过四个数字定义:(坐上x, 左上y, 右下x, 右下y)或(左上x, 左上y, 宽, 高)

通常物体检测或目标检测的数据集比图片分类的数据集小很多,因为物体检测数据集标注成本高很多。

目标检测数据集

目标检测数据集一般每行表示一个物体,每行分别有图片文件名、物体类别、边缘框。

COCO是目标检测中常用的数据集:COCO - Common Objects in Context。该数据集包含80类物体、330K张图片以及1.5M个物体

目标检测总结

物体检测或目标检测之别图片中多个物体的类别和位置。

位置常用边缘框表示。

锚框

boudingbox是目标在图像中的真实位置,锚框是算法对目标位置的猜测。

一类目标检测算法是基于锚框。算法首先提出多个锚框,随后算法预测每个锚框内是否含有我们需要检测的物体,如果含有,预测这个锚框到真实边缘框的偏移。

IoU-交并比

IoU用来计算两个框之间的相似度。

交并比为0表示两个框之间无重叠,1则表示完全重合。 公式表示如下:

赋予锚框标号

**每个锚框是一个训练样本。**每个锚框要么标注为背景,要么关联上一个真实边缘框。算法会生成大量的锚框,但真实的边缘框很少,绝大数的锚框都是背景,故导致大量的负样本。

一个例子

假设该矩阵为一个图像,该图像有四个边缘框和九个锚框。每个锚框计算IoU值。跳出最大的IoU值,本例中假设为,则将边缘框3赋值给锚框2作为锚框2的标号。随后将所对应的行、列删除。

同理,选出次最大值,样例中为将边缘框1赋值给锚框7,随后删除对应行、列。重复直至所有边缘框都被赋值。

其中,锚框的x\y\w\h是相对于featuremap或者原图的一个比例,大小为(0,1]。所以从featuremap中确定的锚框可以按比例缩放回原图中。

使用非极大值抑制(NMS)输出

每个锚框预测一个边缘框。每个预测的精度可能不同。NMS可以合并相似的预测:首先选中非背景类的最大预测值,去掉所有其它与他IoU值大于的预测值,即去掉与它高度重合的锚框。重负上述过程直至所有预测被选中或去除。

锚框总结

一类目标检测算法基于锚框进行预测。

首先生成大量锚框并赋予标号,每个锚框作为一个样本进行训练。

在预测时,使用NMS去除冗余的预测。

相关推荐
love530love几秒前
【保姆级教程】Windows + Podman 从零部署 Duix-Avatar 数字人项目
人工智能·windows·笔记·python·数字人·podman·duix-avatar
周杰伦_Jay15 分钟前
【 2025年必藏】8个开箱即用的优质开源智能体(Agent)项目
人工智能·机器学习·架构·开源
大模型真好玩19 分钟前
低代码Agent开发框架使用指南(八)—Coze 知识库详解
人工智能·agent·coze
2***57421 小时前
人工智能在智能投顾中的算法
人工智能·算法
草莓熊Lotso2 小时前
Git 分支管理:从基础操作到协作流程(本地篇)
大数据·服务器·开发语言·c++·人工智能·git·sql
youngfengying2 小时前
Swin Transformer
人工智能·深度学习·transformer
User_芊芊君子2 小时前
光影协同:基于Rokid CXR-M SDK构建工业级远程专家协作维修系统
人工智能
摘星编程2 小时前
AI文物复活馆:基于 AiOnly 一键调用 Claude 4.5 + Gemini 3 Pro 的多模态复原神器
人工智能·aionly
AI绘画哇哒哒3 小时前
【收藏必看】大模型智能体六大设计模式详解:从ReAct到Agentic RAG,构建可靠AI系统
人工智能·学习·ai·语言模型·程序员·产品经理·转行
CNRio4 小时前
人工智能基础架构与算力之3 Transformer 架构深度解析:从注意力机制到算力适配演进
人工智能·深度学习·transformer