跟李沐学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,随后删除对应行、列。重复直至所有边缘框都被赋值。
使用非极大值抑制(NMS)输出
每个锚框预测一个边缘框。每个预测的精度可能不同。NMS可以合并相似的预测:首先选中非背景类的最大预测值,去掉所有其它与他IoU值大于的预测值,即去掉与它高度重合的锚框。重负上述过程直至所有预测被选中或去除。
锚框总结
一类目标检测算法基于锚框进行预测。
首先生成大量锚框并赋予标号,每个锚框作为一个样本进行训练。
在预测时,使用NMS去除冗余的预测。
相关文章:
跟李沐学AI:目标检测、锚框
边缘框 用于表示物体的位置,一个边缘框通过四个数字定义:(坐上x, 左上y, 右下x, 右下y)或(左上x, 左上y, 宽, 高) 通常物体检测或目标检测的数据集比图片分类的数据集小很多,因为物体检测数据集标注成本高很多。 目…...
【鸿蒙学习】HarmonyOS应用开发者基础 - 构建更加丰富的页面(一)
学完时间:2024年8月14日 一、前言叨叨 学习HarmonyOS的第六课,人数又成功的降了500名左右,到了3575人了。 二、ArkWeb 1、概念介绍 ArkWeb是用于应用程序中显示Web页面内容的Web组件,为开发者提供页面加载、页面交互、页面调…...
机器学习深度学习中的Warmup技术是什么?
机器学习&深度学习中的Warmup技术是什么? 在机器学习&深度学习模型的训练过程中,优化器的学习率调整策略对模型的性能和收敛性至关重要。Warmup是优化器学习率调整的一种技术,旨在改善训练的稳定性,特别是在训练的初期阶…...
ECMAScript6中的模块:export导出、import导入
1、模块概述 早期的 JavaScript 程序很小,通常被用来执行独立的脚本任务,在 Web 页面中需要的地方提供一定的交互。随着 Web 应用程序变得越来越复杂,有必要考虑提供一种将 JavaScript 程序拆分为可按需导入的单独模块的机制,这就…...
mysql写个分区表
因为表量已经达到1个亿了。现在想做个优化,先按照 create_time 时间进行分区吧。 create_time 是varchar类型。 CREATE TABLE orders (id varchar(40) NOT NULL ,order_no VARCHAR(20) NOT NULL,create_time VARCHAR(20) NOT NULL,amount DECIMAL(10,2) NOT NULL,…...
Hystrix——服务容错保护库
熔断机制是解决微服务架构中因等待出现故障的依赖方响应而形成任务挤压,最终导致自身服务瘫痪的一种机制,它的功能类似电路的保险丝,其目的是为了阻断故障,从而保护系统稳定性。Hystrix作为Spring Cloud中实现了熔断机制的组件&am…...
【区块链+金融服务】河北股权交易所综合金融服务平台 | FISCO BCOS应用案例
区域性股权市场是我国资本市场的重要组成部分,是多层次资本市场体系的基石。河北股权交易所(简称:河交所) 作为河北省唯一一家区域性股权市场运营机构,打造河北股权交易所综合金融服务平台,将区块链技术与区…...
[图解]需要≠需求-《分析模式》漫谈
1 00:00:00,760 --> 00:00:02,910 今天的《分析模式》漫谈 2 00:00:02,920 --> 00:00:04,180 我们来说一下 3 00:00:04,490 --> 00:00:06,490 需要不等于需求 4 00:00:10,490 --> 00:00:11,760 还是第一章 5 00:00:13,120 --> 00:00:15,020 这里 6 00:00:1…...
刷到好听的音频怎么办
在短视频平台上,我们常常会刷到那些好听得让人陶醉的视频,可却无法直接下载保存其中的音频,是不是感觉很遗憾? 比如刷到林俊杰这首前奏超好听的《江南》,却禁止下载无法直接下载保存。 别担心,下面就为您揭…...
怎么在网络攻击中屹立不倒
在当今蓬勃发展的网络游戏产业中,服务器安全无疑是企业生存与发展的基石。面对互联网环境中无处不在的DDoS(分布式拒绝服务)与CC(挑战碰撞)攻击威胁,游戏服务器的防御能力与高效处理能力显得尤为重要。相较…...
详解 Python 中的面向对象编程(2)
引言 面向对象编程(OOP)是一种编程范式,它通过将属性和行为整合到对象中来构建程序。本教程将带你了解Python语言中面向对象编程的基本概念。 想象一下,对象就像是系统中的各个部件。可以把程序比作一条工厂流水线。在流水线的每一…...
数据结构-线性表-顺序表
一. 了解顺序表 顺序表定义: 顺序表(也称为线性数组)是一种线性数据结构,它将数据元素按顺序存储在一块连续的内存空间中。顺序表的基本特征包括: 元素的顺序性:顺序表中的元素具有线性关系,每…...
AI绘画大模型-StableDiffusion最强模型sd3(本地安装方法)
前言/introduction Stable Diffusion 3(简称SD3)是Stability AI最新推出的文本到图像生成模型。相比前代模型,SD3在生成质量、细节表现以及运行效率上有了显著提升,尤其在细腻的图像渲染和复杂的场景构建方面表现出色。SD3模型…...
SpringBoot调用外部接口的几种方式
SpringBoot调用外部接口的几种方式 使用FeignClient调用1、在使用方引入依赖2、服务接口调用方2.1、在启动类上加上EnableFeigncliens注解2.2、编写Feign接口调用服务controller层2.3、服务接口调用service层 3、服务接口提供者4、说明 使用RestTemplate调用1、引入依赖2、Rest…...
MySQL:information_schema查找某个表的主键是否在数据的其他位置出现之二
上一篇: MySQL:information_schema查找某个表的主键是否在数据的其他位置出现之一-CSDN博客 摘要 遍历数据库每一张表的每一个字段,是否存在字符串search_term 正文 源码 import pymysql from datetime import datetime# 测试函数 if __n…...
Linux进程和计划任务管理
目录 一、进程基本概念 1.进程 2.程序和进程的关系 二、查看进程信息 1.ps命令 1.1 ps aux命令 1.2 ps -elf 命令 2. top 命令 3.pgrep 命令 4.jobs 命令 三、查看进程树 四、进程的启动方式 1.手动启动 2.调度启动 五、终止进程的运行 1.CtrlC组合键 2.kill、kil…...
【Angular18】封装自定义组件
1. 准备组件 2. 创建打包文件夹及部分配置文件 创建 文件夹app-legalentities-root拷贝组件源文件到新的文件夹app-legalentities中创建文件 .npmrc registry发布地址always-authtrue创建文件 ng-package.json {"$schema": "./node_modules/ng-packagr/ng-pac…...
【流媒体】RTMPDump—RTMP_ConnectStream(创建流连接)
目录 1. RTMP_ConnectStream函数1.1 读取packet(RTMP_ReadPacket)1.2 解析packet(RTMP_ClientPacket)1.2.1 设置Chunk Size(HandleChangeChunkSize)1.2.2 用户控制信息(HandleCtrl)1…...
MySQL学习3之锁机制
一、什么是锁粒度? 锁粒度(Lock Granularity)是指在数据库中锁定数据资源的最小单位。锁粒度决定了锁定操作的范围,即锁定的是整个数据库、整个表、表中的某个分区、表中的某一页还是表中的某一行。 在MySQL中常见的锁粒度有&am…...
2004-2023年上市公司过度负债数据(含原始数据+计算结果)
2004-2023年上市公司过度负债数据(含原始数据计算结果) 1、时间:2004-2023年 2、来源:上市公司年报 3、指标:证券代码、证券简称、统计截止日期、是否剔除ST或*ST股、是否剔除当年新上市、已经退市或被暂停退市的公…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...
