深度学习——锚框(笔记)

news2025/1/23 22:39:45

1.锚框的解释

目标检测算法中,通常会在输入图像中采样大量区域,然后判断这些区域是否包含所感兴趣的目标,并调整区域边界从而更加准确的预测目标真实的边缘框

①一类目标检测算法是基于锚框

提出多个框被称为锚框的区域(边缘框)

预测每个锚框里是否含有关注的物体

④如果是,预测从这个锚框到真实边缘框的偏移

边缘框:图像真实的位置,标号的位置

锚框:计算机预测的位置

“算法本身不知道标号物体真实的位置,如果直接对位置预测比较困难。算法的操作是先提出一些框,在锚框里有没有关注的物体。如果有关注的物体,锚框慢慢调整到真实边缘框的位置。两次预测:物体类别和位置”

2.loU-交并比:锚框与真实框的相似度

①loU是用来计算两个框之间的相似度

0表示无重叠 1表示有重叠

②这是Jacquard指数的一个特殊情况

  给定两个集合A和B

 A是锚框 B是边缘框 分子是交集,分母是并集。两个重合的时候结果是1

 

3.赋予锚框标号

训练集中,每个锚框看作训练样本。为了训练模型,需要每个锚框的类别(class,与锚框 相关对象的类别)和偏移量(offset,真实边缘框相对于锚框的偏移量)标签。

①每个锚框是一个训练样本

②每个锚框,要么框住了背景,要么关联上一个真实的边缘框锚框所框住的物体的标号与所关联的边缘框物体的标号相同。锚框的偏移就是关联边缘框的偏移,偏移量根据锚框和真实边缘框的相对位置以及大小进行标记)

③可能会生成大量的锚框,将导致大量的负类样本

“学习的过程是在各位置上都学习一个正确的锚框,预测的时候,只要物体出现,网络就知道在哪里标上正确的bbox”

4.图示锚框标号

 

①列:标注好的边缘框,4列表示4个边缘框

行:锚框

②每个锚框跟边缘框算loU值,在每个方格中的值表示

③将整个矩阵中的最大值挑选出来,假设x23,那么将边缘框3中的标号给锚框2,删除X23所在的行和列

 在剩下的矩阵找最大值,假设是X71。锚框7跟边缘框1关联起来,同时删除所在的行和列

 

以此类推,直到所有的边缘框与对应的锚框关联。

锚框的生成:

①固定生成

②根据图片生成锚框

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

 

①每个锚框预测一个边缘框时,有很多相似且重叠的锚框

NMS可以合并相似的预测

Ⅰ选中是非背景类的最大预测值(对类的预测的softmax值,越接近于1置信度越高)

Ⅱ去掉所有其他和它loU值大于θ的预测(也就是去掉和最大预测值相似度比较高的其它锚框)

Ⅲ重复上述过程直到所有预测要么选中,要么去掉

 

【总结】

①一类目标检测算法是基于锚框来预测

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

③预测时,使用NMS来去掉冗余的预测

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

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

相关文章

GIS开发入坑(三)--QGIS制作行政区划及背景图层

QGIS,功能强大的GIS工具,地理信息开发中的必备神器,今天以南京市为例制作行政区划并使用电子地图为数字底图进行呈现。 1.获取行政区划数据 阿里云的可视化平台提供了便捷的中国行政区划数据获取方式,数据层级最小到区县级。 htt…

游戏视频录制用什么软件?这2款软件,用过都说好

小编相信很多朋友在游戏中都有精彩的操作。有些朋友想和朋友分享他们在游戏中的精彩操作,但他们不知道有什么容易使用的免费游戏视频录制软件,可以记录他们在游戏中的亮眼表现。那么,哪个电脑游戏视频录制软件容易使用和免费呢?接…

【树莓派不吃灰】兄弟连篇⑤ 服务管理

目录1、服务分类2、rpm安装服务(旧版本系统)3、源码包安装(旧版本系统)❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2022-12-20 ❤️❤️ 本篇更新记录 2022-12-20 ❤️&#x1f3…

环境多介质逸度模型实践技术与典型案例【代码】应用

随着污染物在各种环境中的迁移和转化,多介质污染物模型日益受到关注。在各类多介质模型中,基于逸度概念的逸度模型由于运用范围广,建模数据要求较低而广受欢迎。 【原文链接】: 环境多介质逸度模型实践技术与典型案例【代码】应用…

《集体智慧编程》笔记(4 / 12):搜索与排名

由于书本未提供数据文件且提供的链接无法被链接且pysqlite安装失败,所以本章只是阅读学习。 文章目录搜索引擎的组成一个简单的爬虫程序使用urllib2爬虫程序的代码建立索引建立数据库Schema在网页中查找单词加入索引查询基于内容的排名归一化函数单词频度文档位置单…

JAVA面试(关于技术深耕方向和职业规划)

人的精力有限,制定清晰明确的技术发展方向,会使自己少走很多弯路。经过快10年的工作,我现在主要给自己在技术上定了这几个方向。 1、专注JAVA开发。 2、专注JAVA架构。 3、专注JAVA项目运维。 4、专注数字化业务项目。 5、专注JAVA项目的…

Springboot事件监听+@Async注解

文章目录一、不求甚解二、人云亦云三、刨根问底四、曲突徙薪一、不求甚解 在开发中经常可以利用Spring事件监听来实现观察者模式,进行一些非事务性的操作,如记录日志之类的。 Controller Controller中注入ApplicationEventPublisher,并利用…

内科大软件工程导论复习内容笔记

文章目录一、 概念(共60分,单选题、多选题)1. 软件是程序、数据、文档的集合。2. 软件的分类(按规模、性质分)3. 软件危机的表现、缓解软件危机的途径4. 软件工程方法学主要有两种:结构化的软件工程方法学_…

借助 Material Design,帮助您打造更好的无障碍应用 (上篇)

随着时代的发展,"无障碍体验" 对开发者的意义也愈发重大。我们准备了无障碍设计文章,帮助您为更多用户打造精彩应用。本文是第一篇内容,将为您介绍辅助技术,层次结构,颜色和对比度等内容。了解无障碍改进产品…

[前端攻坚]:Set的使用

总结一些日常需要用到的一些api,也是在一些面试中会经常出现的题目,今天分享的是Set的一些用法和个人的一些理解, 同时文章也被收录到我的《JS基础》专栏中,欢迎大家点击收藏加关注。 我们知道Set是一种叫做集合的数据结构&#x…

手把手教你成为荣耀开发者:如何获取平台帮助及最新通知?

荣耀开发者服务平台是荣耀面向开发者的统一生态入口,通过聚合周边内外部系统,分全球多站点部署,为全球开发者提供业务全生命周期的商业支撑服务,拥有应用分发、智慧服务、开放能力、HONOR Connect等众多业务等您来合作。 在与荣耀…

引擎入门 | Unity UI简介–第3部分(2)

本期我们继续为大家进行【Unity UI简介–第3部分】的后续教程 学习内容 4.添加遮挡面板 5.添加内容面板 6.添加按钮 文章末尾可免费获取教程源代码 本篇【Unity UI简介–第3部分】篇幅较长,分为八篇,本篇为第二篇,还未看过第一篇的请点…

Linux学习-89-JDK下载安装(rpm方式)

17.19 JDK下载安装(rpm方式) linux系统上jdk安装方式比较多,最简单的便是yum安装,可以使用以下步骤来安装: #首先先检查是否已经安装JDK [rootCncLucZK ~]# rpm -qa |grep java[rootCncLucZK ~]# rpm -qa |grep jdk …

Docker ( 三 ) 安装 MySQL

6.2.安装 MySQL 6.2.1.拉取镜像 6.2.1.1.搜索查看可用的mysql镜像 docker search mysql6.2.1.2.拉取最新版本的mysql镜像 docker pull mysql:latest6.2.1.3.查看镜像是否已经有mysql docker images|grep mysql6.2.2.启动容器 6.2.2.1.启动容器实例 启动同时设置名字以及r…

搜遍全网,终于找到了报表自动化的最佳工具,比Excel好用10倍

工作快十年了,最开始是在华为做报表,后来去了美团从事大数据和平台方面的工作,现在在国企干了快三年。辗转各大企业的IT部门,最明显的感知就是企业间数字化程度差距太大了。就从报表这个点来说,互联网公司早就实现了报…

动物宠物领养网站的设计与实现(Vue+Spring Boot+Java)

目 录 摘 要 I Abstract II 目 录 III 图清单 V 表清单 VII 1 绪论 1 1.1 动物领养网站的现状与发展 1 1.2 “万千宠爱”动物领养网站的研究内容 2 1.3 “万千宠爱”动物领养网站的研究目的和意义 2 1.4 本章小结 3 2 本“万千宠爱”动物领养网站的分析 4 2.1 可行性分析 4 2.…

【目标检测】YOLOv5能识别英雄和小兵?原理解析~

目录 一、简介 二、模型结构 1.整体结构图 2.Backbone(CSPDarknet) 3.SPPF(Spatial Pyramid Pooling - Fast) 4.Neck(FPNPAN) 5.Head 三、anchor编解码 1.anchor编码 2.anchor解码 四、损失函数 …

【20天快速掌握Python】day09-模块和包

1.Python中的模块 在Python中有一个概念叫做模块(module)。 说的通俗点:模块就好比是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 比如我们经常使用工具 random,就是一个模块。使…

车险java开发工程师【10k-15k】13薪

众推职聘”以交付结果为宗旨的全流程化招聘服务平台! 今日招聘信息↓ 【工作内容】 1.参与软件项目和产品概要设计,负责详细功能设计、编码实现及相关文档编写; 2.根据模块设计完成相应的模块编码及单元测试; 3.对用户行为、需求…

「React 深入」知悉Fiber,方能百战不殆~

在React v16以上的版本引入了一个非常重要的概念,那就是fiber,实际上fiber是react团队花费两年的时间重构的架构,在之前的文章中也提及到了fiber,那么fiber架构究竟是什么,为什么要使用fiber 在正式开始前&#xff0c…