目标检测中的anchor机制

目录

一、目标检测中的anchor机制

1.什么是anchor boxes?

二、什么是Anchor?

​编辑三、为什么需要anchor boxes?

四、anchor boxes是怎么生成的?

五、高宽比(aspect ratio)的确定

六、尺度(scale)的确定

七、anchor boxes数量的确定

八、Anchor boxes的用途 

 九、anchor boxes对真值bounding box编码的步骤

十、所有的锚框是训练时的样本

十一、为什么要回归偏移量而不是绝对坐标

十二、Anchor的机制

 十三、Anchor的优缺点

13.1 Anchor的优点:

13.2 Anchor的缺点:


一、目标检测中的anchor机制

1.什么是anchor boxes?

        在介绍Anchor之前,我们先介绍一下传统的人脸识别算法,是怎么检测出 图片中的人脸的。以下图为例,如果我们要检测图中小女孩的人脸位置,一个 比较简单暴力的方法就是滑窗,我们使用不同大小、不同长宽比的候选框在整 幅图像上进行穷尽式的滑窗,然后提取窗口内的特征(例如Haar、LBP、Hog 等特征),再送入分类器(SVM、Adaboost等)判断该窗口内包含的是否为人 脸。这种方法简单易理解,但是这类方法受限于手动设计的特征,召回率和准 确率通常不是很高。

        anchor boxes是一组提前预定义的边框,这些框的宽高和数据集中目标物 体的宽高大体是一致的,换句话说,数据集中的绝绝大多数物体都能找到与其 大小一致的anchor box。举例来说,如果数据集中包含苹果、猫,那么这组 anchor boxes中就需要有和苹果、猫大小相仿的边框。为了尽可能多的覆盖数 据集中可能出现的目标推的宽高,这些边框具有不同的宽高比(aspect ratio)和尺度(scale)。

        边框可以反应一个物体的大致信息,边框的位置反应物体的大致位置,宽 高比反应物体的身材比例,尺度反应物体的大小[2]。

二、什么是Anchor?

        那么,anchor到底是什么呢?如果我们用一句话概括——就是在图像上预 设好的不同大小,不同长宽比的参照框。(其实非常类似于上面的滑窗法所设 置的窗口大小)

        下图来自《动手学深度学习》中的例子,假设一个256x256大小的图片, 经过64、128和256倍下采样,会产生4x4、2x2、1x1大小的特征图,我们在这 三个特征图上每个点上都设置三个不同大小的anchor。当然,这只是一个例 子,实际的SSD模型,在300x300的输入下,anchor数量也特别多,其在 38x38、19x19、10x10、5x5、3x3、1x1的六个特征图上,每个点分别设置 4、6、6、6、6、4个不同大小和长宽比的anchor,所以一共有38x38x4+ 19x19x6+ 10x10x6+ 5x5x6+ 3x3x4+ 1x1x4= 8732个anchor。

        神经网络强大的拟合能力,我们不再需要计算Haar、Hog等特征,直接让 神经网络输出,每个anchor是否包含(或者说与物体有较大重叠,也就是IoU 较大)物体,以及被检测物体相对本anchor的中心点偏移以及长宽比例。以下 图为例:

三、为什么需要anchor boxes?

        其实,物体检测方法是非常直观的,就是在图片上,截一小块,检测这一 小块包不包含物体,如果包含物体,该物体的位置就是刚刚截取的这个小块的 位置,同时再预测一下它的类别是什么。那这种检测方法和anchor box又有什 么关系呢? 其实,刚刚截取的这个小块就是一个anchor box。

        往往,图片上的每一处位置都有可能出现目标物体,并且目标的大小是不 确定的。那有什么办法能检出所有的物体呢?最容易想到的办法就是,以一个 像素为中心截取小块时,截取很多个不同宽高比和大小的小块,每个小块都检 测一下,这样就可以做到不漏掉这个像素上的任何宽高比和大小的物体了;为 了检出图像中不同位置的物体,从左到右,从上到下,把图像扫描一遍,每个 像素上都取很多小块进行检测,这样就可以保证不同位置、不同大小的物体都 不漏掉了。Fig. 1是一个扫描检查的示例。

        这种方法容易理解并且确实有效,但是缺点也是突出的----计算量太大了。 假如一张图片大小为640*640,在图像中每一个像素上取10个不同宽高比不同 大小的框做检测,则需要检测的框就会有640 x 640 x 10 = 4096000,太多了。 或者,可以看一下retinanet (传送门)中用的锚框数量,如图Fig. 2所示,图中只 显示了所有框的1%,再多就看不清楚了。那怎么改进呢?  

        其实,这种方法有两个明显可以改善的点,一是4096000个扫描框重叠 (overlap)太多了,一是这些框里有很多框是背景,不包含物体,没有检测的必 要。所以,设法在保证覆盖(cover)整张图的基础上,略去重叠太严重的框, 避开背景框,找高质量的、可能包含目标物体的候选框进行检测就显得尤为重 要,可以以此来降低运算量,提高检测速度。  

        anchor boxes就是我们在检测之前确定的一系列候选框。我们默认,图片 上会出现的所有物体,都会被我们设定的anchor boxes所覆盖。anchor box选 择的好坏直接关系到两个方面:一是能不能很好的覆盖整张图,一是能不能框 住图片中可能出现的每个物体。所以anchor box的设定非常重要,既关系到精 度的好坏,又关系到速度的快慢(速度仅就以上所说的扫描法而言)。

四、anchor boxes是怎么生成的?

        举例来说明:假如要在一个数据集上做物体检测, 该数据集的图片分辨率 均为256 pixel * 256 pixel, 数据集里绝大多数数目标物体的尺寸为 40 pixel * 40 pixel或80 pixel * 40 pixel。

五、高宽比(aspect ratio)的确定

        这说明数据集中绝大多数物体的真值边框的高宽比为1:1和2:1. 根据这个信 息就可以确定锚框的高宽比信息:为这个数据集设计anchor boxes时其高宽比 至少需要包括1:1和2:1. 这里举例为方便就只取1:1和2:1.

六、尺度(scale)的确定

        尺度是指物体的高或宽与图片的高或宽之间的比值。以像素为单位表示目 标物体和图片的尺寸,如果图片的宽为256 pixel,物体的宽为40 pixel,则该物 体的尺度为40/256=0.15625,也就是说该物体占了图片15.62%的宽度。

        为了选一组能更好的代表数据集里目标的尺度的尺度,我们应该以数据集 中目标物体的尺度最大值和最小值为上下限。如,数据集中物体的尺度的最小 值和最大值分别为0.15625和0.3125,我们准备在这个范围内设置3种scale,则 可以选择 {0.15625, 0.234375, 0.3125}。

七、anchor boxes数量的确定

        我们的scales(缩放)为 {0.15625, 0.234375, 0.3125},aspect ratios为{1:1, 2:1}, 则每一个锚点上的一组锚框的数量为3 * 2 = 6个,如Fig.3所示,即有3种 大小的,每一种大小都有两种高宽比。按照以上方法所说,锚点是指256*256 图像中的每一个像素,按基于anchor的神经网络目标检测来讲,锚点为网络最 终输出特征图上的每一个点。

 

八、Anchor boxes的用途 

        在网络中anchor boxes被用来编码目标物体的位置。目标检测一般是不会 直接检测物体边框的绝对坐标的,取而代之的是检测其相对某一个锚框的偏移 量,如Fig.4中绿色真值框对蓝色边框的偏移。数据集中所有的目标均会被编码成 对anchor boxes的偏移。如图Fig.2, 锚框有非常多个,对一张图片来说,可能 包含多个物体,有非常多个anchor boxes, 那怎么用anchor boxes对真值进行 编码呢?

 九、anchor boxes对真值bounding box编码的步骤

         a. 对每一个anchor box,算出其和哪一个真值bounding box的交并比 (intersection over union score)最大

        b. 如果交并比>50%,则当前anchor box负责当前真值bounding box对应 物体的检测,求真值bounding box对该anchor box的偏移

        c. 如果交并比介于40%与50%之间,不能确定该anchor是不是包含该物 体,属于含糊框。

        d. 如果交并比则认为该anchor框到的都是背景,将该anchor划分为 背景类。

        除了被分配物体的锚框外,对只含背景的锚框和含糊框,偏移赋0,分类赋 背景。

十、所有的锚框是训练时的样本

        编码之后,物体检测类网络的回归目标变成回归编码好的偏移量了。网络 的输入为图片,输出为每一锚框的分类和偏移量。网络最终输出的特征图上的 每一个像素都有一组锚框(假如一组锚框的数量为6个,宽高比为2:1和1:1, 尺度为0.15625, 0.234375, 0.3125,如Fig.3所示),设网络最终输出的特诊图 分辨率为7*7,则该回归网络中的锚框数量总数为7x7x6=296个。网络接收到的 真值为这296个anchor box是否为背景的分类信息(如果包含物体,则分离为 物体类别)和每个anchor到目标物体bounding box的偏移量(含糊框和背景框 的偏移量为0),网络的输出为296个框的偏移量和分类信息。

        对一个训练好的网络,其输出中,只包含背景的锚框的分类为背景,偏移 为0;包含物体的锚框,其分类为物体的类别,偏移为锚框与物体真实边框之间 的偏移。

十一、为什么要回归偏移量而不是绝对坐标

        神经网络的特性之一是位移不变性,对一张包含树的照片,不管树在这张 图片的左上角还是右下角,网络输出的分类都是树,分类结果不会因为树在照 片中位置的变化而变化。所以,对于一棵树,不管它在图片中的位置是什么, 回归网络都偏向于为它输出相同的位置坐标,可见位移不变性和我们需要的位 置坐标变化是冲突的,这显然是不行的。转而回归偏移的话,不管树在图像中 的什么位置,其对它所在的锚框的偏移量基本是一致的,更加适合神经网络回归。

        输出特征图和锚框有什么关系呢?锚框不是应该放在输入图上吗,为什么 说输出特征图上的每一个点一组锚框

        如Fig.5所示,输出特征图(最右边3 x 3的小特征图)上的任何一个点都可以 映射到输入图片上(感受野的意思),也就是说按照比例和网络的下采样,对 输出特征图上的任意一点,在输入图片上都可以成比例找到它的对应位置。例 如,在输出特征图上(0, 0)的点在输入图片上的对应位置为(2, 2), 网络的输 出特征维度为3 * 3 * 84 ( = 3 * 3 * 6 * 14),则输出特征图上点(0, 0)处的 84个通道对应的值为输入图(2, 2)位置上6个锚框的偏移量和分类值。3 * 3 * 84 = 3 * 3 * 6 * 14中的6为6个anchor box, 14中的4为(x,y,w,h)的偏移量,14 中的10为类别数。

        通过这样的隐式映射关系,将所有的anchor box都放在了输入图片上。

        Fig.5 网络输出的最终的特征图(图中3 x 3的特征图)上(0,0)的点对应输入 图片上(2,2)的点,则最终输出特征图上点(0,0)对应的所有通道的值则为输 入图点(2,2)上的一组锚框的偏移和分类回归值  

十二、Anchor的机制

        以每个anchor为中心点,人为设置不同的尺度(scale)和长宽比(aspect ratio),即可得到基于anchor的多个anchor box,用以框定图像中的目标,这 就是所谓的anchor 机制。如下图所示,左侧显示了基于一个anchor点生成的9 个anchor boxes(红、绿、蓝三种颜色),右侧显示了该特征图上密集分布的所 有anchor boxes。

 十三、Anchor的优缺点

        在知道了Anchor的原理和机制之后,下面我们就来讲讲Anchor的优缺点 了:

13.1 Anchor的优点:

        ① 使用anchor机制产生密集的anchor boxes,使得网络可直接在此基础 上进行目标分类及边界框坐标回归;

        ② 密集的anchor boxes可有效提高网络目标召回能力,对于小目标检测来说 提升非常明显。

13.2 Anchor的缺点:

        ① anchor机制中,需要设定的超参:尺度(scale)和长宽比( aspect ratio) 是比较难设计的。这需要较强的先验知识。

        ②冗余框非常之多:一张图像内的目标毕竟是有限的,基于每个anchor设定 大量anchor boxes会产生大量的easy-sample,即完全不包含目标的背景框。 这会造成正负样本严重不平衡问题,也是one-stage算法难以赶超two-stage算 法的原因之一。

        ③网络实质上是看不见anchor boxes的,在anchor boxes的基础上进行边界 回归更像是一种在范围比较小时候的强行记忆。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/26817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工业高温烤箱:现代工业的重要设备

工业高温烤箱,作为现代工业生产中不可或缺的关键设备,以其独特的高温烘烤能力,为各种工业产品的加工与制造提供了强有力的支持。斯博欣将对工业高温烤箱的原理、特点、应用领域及未来发展进行简要介绍。 一、工业高温烤箱的特点 1、高温性能优…

怎么修改Visual Studio Code中现在github账号

git config --global user.name “你的用户名” git config --global user.email “你的邮箱” git config --global --list git push -u origin your_branch_name git remote add origin

FastAPI 作为H5中流式输出的后端

FastAPI 作为H5中流式输出的后端 最近大家都在玩LLM,我也凑了热闹,简单实现了一个本地LLM应用,分享给大家,百分百可以用哦~^ - ^ 先介绍下我使用的三种工具: Ollama:一个免费的开源框架&…

centos7 xtrabackup mysql 基本测试(4)---虚拟机环境 mysql 修改datadir(有问题)

centos7 xtrabackup mysql 基本测试(4)—虚拟机环境 mysql 修改datadir 参考 centos更改mysql数据库目录 https://blog.csdn.net/sinat_33151213/article/details/125079593 https://blog.csdn.net/jx_ZhangZhaoxuan/article/details/129139499 创建目…

锌,能否成为下一个“铜”?

光大期货认为,今年以来,市场关注锌能否接棒铜价牛市。铜需求增长空间大,而锌消费结构传统,缺乏新亮点。虽然在供应的扰动上锌强于铜,但因需求乏善可陈,金融属性弱势,锌很难接棒铜,引…

数据质量守护者:数据治理视角下的智能数据提取策略

一、引言 在信息化和数字化高速发展的今天,数据已成为企业决策、运营和创新的核心要素。然而,随着数据量的快速增长和来源的多样化,数据质量问题逐渐凸显,成为制约企业数据价值发挥的关键因素。数据治理作为确保数据质量、提升数…

KEIL5.39 5.40 fromelf 不能生成HEX bug

使用AC6 编译,只要勾选了生成HEX。 结果报如下错误 暂时没有好的解决办法 1.替换法 2.在编译完后用命令生成HEX

蚓链研究院告诉你:蚓链数字化营销如何帮助力助你打造品牌!

在打造产品品牌的过程中,数字化营销会带来哪些利弊影响?如何消除或减少弊端?蚓链来和你一起分析、解决。 利处: 1.高度精准的目标定位:凭借大数据和先进算法,能精确锁定潜在客户,使营销资源得到…

数栈xAI:轻量化、专业化、模块化,四大功能革新 SQL 开发体验

在这个数据如潮的时代,SQL 已远远超越了简单的查询语言范畴,它已成为数据分析和决策制定的基石,成为撬动企业智慧决策的关键杠杆。SQL 的编写和执行效率直接关系到数据处理的速度和分析结果的深度,对企业洞察市场动态、优化业务流…

针对k8s集群已经加入集群的服务器进行驱逐

例如k8s 已经有很多服务器,现在由于服务器资源过剩,需要剥离一些服务器出来 查找节点名称: kubectl get nodes设置为不可调度: kubectl cordon k8s-node13恢复可调度 kubectl uncordon k8s-node13在驱逐之前先把需要剥离驱逐的节…

File及典型案例

File File对象表示一个路径,可以是文件的路径,也可以是文件夹的路径 这个路径可以是存在的,也允许不存在 常见的构造方法 图来自黑马程序员网课 package com.lazyGirl.filedemo;import java.io.File;public class Demo1 {public static vo…

立式护眼台灯十大品牌哪个好?立式护眼台灯十大品牌排行

立式护眼台灯十大品牌哪个好?根据国际市场的研究数据表明,我国在日常生活中对电子产品的依赖度极高,每天看电子产品的时间超过8小时,出现眼睛酸痛、干涩、视觉疲劳的人群也不再少数,而给眼睛带来伤害的除了电子产品中所含的蓝光之…

Vue3-滑动到最右验证功能

1、思路 1、在登录页面需要启动向右滑块验证 2、效果图 3、文章地址:滑动验证码的实现-vue-simple-verify 2、成分分析 1、由三块构成,分别是底部条、拖动条、拖动移动部分 2、底部条:整体容器,包括背景、边框和文字&#xf…

端午假期新房销售较去年下降16%,6月核心城市有望继续好转

内容提要 国常会强调政策措施落地见效,继续研究新去库存、稳市场政策。多城市二手房市场活跃,新房成交回暖缓慢。端午假期新房销售下降,核心城市市场有望好转。 文章正文 6月7日,国常会强调“着力推动已出台政策措施落地见效&am…

ai 人工智能免费网站免费生成图片生成ppt

豆包 Kimi.ai - 帮你看更大的世界 生成ppt 讯飞智文 - AI在线生成PPT、Word 大家如有其它免费的欢迎推荐!!!

五分钟看完WWDC24

大家好,我是小编阿文。欢迎您关注我们,经常分享有关Android出海,iOS出海,App市场政策实时更新,互金市场投放策略,最新互金新闻资讯等文章,期待与您共航世界之海。 北京时间6月11日凌晨1点&…

2024中国翻译行业发展报告

来源:中国翻译协会 近期历史回顾: 2024国内工商业储能市场研究报告.pdf 2023幸福企业白皮书.pdf 2024年欧亚地区移动经济报告.pdf 内容供应链变革 2023人工智能与首席营销官(CMO) AI科技对PC产业的影响.pdf 金融业数据应用发展报…

01本地图像导入及参数设置

左边工具栏:采集-》图像源,点击后 拉到流程窗口中 在右边有三个按钮可以添加图像和图像文件夹。 双击 图像源 可以打开 参数设置 参数说明: 像素格式:MONO8 表示图像为黑白图像,RGB24为彩色图像。看你想以什么图像打开…

通用大模型VS垂直大模型,你更青睐哪一方?

AI大模型之辩:通用与垂直,谁将引领未来? 在人工智能(AI)领域,大模型技术的崛起无疑为整个行业带来了革命性的变革。然而,随着技术的深入发展,AI大模型的战场似乎正在悄然分化&#…

手把手教你部署并使用国产开源大模型ChatGLM3-6B

前言 部署一个自己的大模型,没事的时候玩两下,这可能是很多技术同学想做但又迟迟没下手的事情,没下手的原因很可能是成本太高,近万元的RTX3090显卡,想想都肉疼,又或者官方的部署说明过于简单,安…