当前位置: 首页 > news >正文

2D物体检测学习

DETR

1.提出了一种新的检测思路,将目标检测任务视作为集合预测问题
2.此前的检测器大都先用手工设计的候选框预测方案,例如anchor或滑动框。这些方案也包含了其他先验知识的干涉,例如NMS等后处理方案、anchor的设计、训练时如何将检测结果与ground truth匹配等。这些手工设计的策略让人对其泛化性能会有一些怀疑。
3.DETR通过将transformer融入模型,跳过手工设计的部分,将问题转化为集合预测问题,以端到端的方式直接输出预测的(对象,框)的集合。
4.本文的方法还可以用来做segmentation任务

CNN为ResNet50和Res101

encoder结构不变,位置编码改一下(固定的更好)

decoder输入可学习的object queries,并行计算得到独立输出

FFN边框预测是用ReLU激活的3层感知机,类别预测是一个线性层+softmax预测层

得到预测结果以后,将object predictions和ground truth box之间通过匈牙利算法进行二分匹配:假如有K个目标,那么100个object predictions中就会有K个能够匹配到这K个ground truth,其他的都会和“no object”匹配成功,使其在理论上每个object query都有唯一匹配的目标,不会存在重叠,所以DETR不需要nms进行后处理

DINO grounding

根据文字描述检测指定目标

提取:Swin Transformer作为image backbone,BERT作为text backbone

多模态融合:利用Deformable Self-Attention和Self-Attention来增强image features和text features,然后利用GLIP中的image-to-text 和 text-to-image cross-attention实现特征融合

选query:,两个模态特征乘起来求最大的前Nq个

解码:Self-Attention、Image Cross-Attention、Text Cross-Attention组合

关于text prompt:mask掉不相关类别名之间的联系

DINO-X

接受文本提示、视觉提示和自定义提示作为输入,并且可以生成各个语义层面的表示,包括边界框、分割蒙版、姿势关键点和对象标题

Pro

文本提示编码器:CLIP的文本编码器

视觉提示编码器:采用了来自T-Rex2 的视觉提示编码器,将其整合以利用用户定义的箱形和点形式的视觉提示来增强物体检测。通过正弦-余弦层转换成位置嵌入。模型使用不同的线性投影分离箱形和点提示

自定义提示:通过提示微调技术覆盖更多的长尾、特定领域或功能特定场景

给定一张输入图像和用户提供的提示,无论是文本、视觉还是自定义提示嵌入,DINO-X都会在提示与从输入图像中提取的视觉特征之间进行深层特征融合,然后根据不同感知任务应用不同的头。具体实现的头部如下所述:

框头:遵循Grounding DINO,采用了语言引导的查询选择模块,接着是一个简单的MLP层来预测每个对象查询对应的边界框坐标

Mask头:遵循Mask2Former和Mask DINO的核心设计,我们通过融合1/4分辨率的主干特征和从Transformer编码器上采样的1/8分辨率特征来构建像素嵌入图。然后,我们计算Transformer解码器中的每个对象查询与像素嵌入图之间的点积以获取查询的掩膜输出

关键点头:接收DINO-X的相关检测输出,例如人或手,作为输入,并使用单独的解码器来解码物体的关键点。每个检测输出被视为一个查询并扩展为多个关键点,然后发送到多个可变形Transformer解码器层来预测所需的关键点位置及其可见性。这个过程可以视为简化的ED-Pose 算法,不需要考虑物体检测任务,而是专注于关键点检测。在DINO-X中,我们实例化了两个人物和手的关键点头,它们分别有17个和21个预定义的关键点。

语言头:语言头是一个任务可提示的生成式小型语言模型,用于增强DINO-X理解和执行超出定位任务的感知任务的能力,如物体识别、区域字幕生成、文本识别和基于区域的视觉问答(VQA)。对于DINO-X检测到的任何物体,我们首先使用RoIAlign操作符从DINO-X主干特征中提取其区域特征,结合其查询嵌入形成我们的物体令牌。然后,我们应用一个简单的线性投影以确保它们的维度与文本嵌入对齐。轻量级的语言解码器以自回归方式将这些区域表示与任务令牌集成以生成输出。可学习的任务令牌赋予语言解码器处理各种任务的能力。

Edge

更强的文本提示编码器:CLIP文本编码器

知识蒸馏:从Pro模型使用基于特征的知识蒸馏和基于响应的知识蒸馏以增强Edge模型的性能

改进的FP16推理:我们采用了一种浮点乘法的归一化技术,使得模型可以量化为FP16而不牺牲精度

相关文章:

2D物体检测学习

DETR 1.提出了一种新的检测思路,将目标检测任务视作为集合预测问题 2.此前的检测器大都先用手工设计的候选框预测方案,例如anchor或滑动框。这些方案也包含了其他先验知识的干涉,例如NMS等后处理方案、anchor的设计、训练时如何将检测结果与…...

#手动控制windows更新时间(非常安全,可随时恢复)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 第一步: 点一下暂停更新 第二步: 打开注册表,修改过期时间 ps: 若想恢复更新 , 只需要点"继续更新"...

SAP案例:珠海汉胜科技SAP S/4 HANA智能制造实践与价值实现

客户简介 珠海汉胜科技股份有限公司为高科技生产企业,成立于1985年,拥有员工近2000人。主要从事生产、销售、研发:光纤光缆、电线、电缆及附件、铝塑复合管;光纤光缆、电缆、电线生产项目的策划及技术咨询。它致力于为国内外无线电…...

计算机视觉---相机标定

相机标定在机器人系统中的作用 1.确定相机的内部参数 相机的内部参数包括焦距、主点坐标、像素尺寸等。这些参数决定了相机成像的几何关系。通过标定,可以精确获取这些参数,从而将图像中的像素坐标与实际的物理坐标建立联系。例如,已知相机…...

微信小程序的全局变量(quanjubianliang)

在微信小程序开发中,管理和使用全局变量是一种常见的需求。例如,可以通过小程序的App实例和globalData对象来实现全局变量的存储和共享。以下是详细说明: 1. 全局变量的定义 微信小程序提供了 App() 函数,其中可以定义一个 global…...

Kotlin协程Semaphore withPermit约束并发任务数量

Kotlin协程Semaphore withPermit约束并发任务数量 import kotlinx.coroutines.* import kotlinx.coroutines.sync.Semaphore import kotlinx.coroutines.sync.withPermit import kotlinx.coroutines.launch import kotlinx.coroutines.runBlockingfun main() {val permits 1 /…...

LangChain, MCP Server, Qwen-Agent等测试及问题记录

LangChain LangGraph 参考官方文档:https://langchain-ai.github.io/langgraph/tutorials/introduction/ 1. 这里使用Qwen系列模型进行测试 由于想测试通过LangGraph编排让大模型调用工具,所以首先查询支持Function Calling的大模型: https://help.a…...

学习设计模式《一》——简单工厂

一、基础概念 1.1、接口 简单的说:接口是【用来实现类的行为定义、约束类的行为】(即:定义可以做什么);接口可以包含【实例方法】、【属性】、【事件】、【索引器】或这四种成员类型的任意组合。 接口的优点&#xff1…...

51单片机实验三:数码管动态显示

目录 一、实验环境与实验器材 二、实验内容及实验步骤 1. 数码管动态扫描0-5 2. 利用余辉效应使单片机数码管“同时显示”0-5。 3. B站小仿真(动态原理显示hello) 一、实验环境与实验器材 环境:Keli,STC-ISP烧写软件,Proteus…...

[TriCore][TC3XX][用户手册] - 16.中断控制器 - IR

关键词: TC3XX 用户手册;TC3XX Interrupt Router;TC397 用户手册;TC397 中断控制器; 简介: 本篇为英飞凌 TC3XX 用户手册第 16 章翻译 - Interrupt Router (IR) 手册适用于 TC3XX(包括 TC397…...

Python语言基础教程(上)4.0

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…...

快速入门smolagents

官方教程地址:Agents - Guided tour 1. 安装 pip install smolagents[litellm] 或者 uv add smolagents[litellm] 2. 配置api key 这里我用的火山的api,注意如果是使用的火山或阿里云的这种服务商的api,model_id这里要以"openai/&qu…...

第 3 期:逆过程建模与神经网络的作用(Reverse Process)

一、从正向扩散到逆向去噪:生成的本质 在上期中我们讲到,正向扩散是一个逐步加入噪声的过程,从原始图像 x_0到接近高斯分布的 x_T​: 而我们真正关心的,是从纯噪声中逐步还原原图的过程,也就是逆过程&…...

RAG-概述

RAG 概述 RAG(Retrieval Augmented Generation, 检索增强生成)是一种技术框架,其核心在于当 LLM 面对解答问题或创作文本任务时,首先会在大规模文档库中搜索并筛选出与任务紧密相关的素材,继而依据这些素材精准指导后续…...

Python 中的数据类型有哪些

Python 中的数据类型有哪些? Python 是一种动态类型语言,支持多种内置数据类型,并且可以自定义数据类型。以下是 Python 中常见和重要的数据类型: 一、基本数据类型 整数(int) 表示整数,没有小…...

梯度下降,共轭梯度,牛顿法,拟牛顿法的收敛速度对比

一、收敛速度理论对比 方法收敛速度(一般非线性函数)收敛速度(二次凸函数)局部收敛性(接近极小点时)收敛阶梯度下降(GD)线性收敛(Linear)线性收敛&#xff0…...

深入浅出目标检测:从入门到YOLOv3,揭开计算机视觉的“火眼金睛”

目录 揭开目标检测的神秘面纱 什么是目标检测?为什么它如此重要?定义:图像分类、目标检测、目标跟踪、实例分割的区别与联系应用场景讲解目标检测的输出:边界框 (Bounding Box) 和类别 (Class)目标检测在AI领域的地位和发展趋势&…...

Odoo:免费开源的轧制品行业管理软件

Odoo免费开源的轧制品行业管理软件能够帮助建材、电线电缆、金属、造纸包装以及纺织品行业提高韧性和盈利能力,构筑美好未来。 文 | 开源智造(OSCG)Odoo金牌服务 提高供应链韧性,赋能可持续发展 如今,金属…...

51单片机实验六:通用型1602液晶操作方法

目录 一、实验环境与实验器材 二、实验内容及实验步骤 1. 目标:用C语言编程,实现在1602液晶的第一行显示“I LOVE MCU!”,在第二行显示WWW.TXMCU.COM。 2.目标:用C语言编程,实现第一行从右侧移入“Hello everyone!”…...

原型模式详解及c++代码实现(以自动驾驶感知场景为例)

模式定义 原型模式(Prototype Pattern)是一种创建型设计模式,通过克隆已有对象来创建新对象,避免重复执行昂贵的初始化操作。该模式特别适用于需要高效创建相似对象的场景,是自动驾驶感知系统中处理大量重复数据结构的…...

datasheet数据手册-阅读方法

DataSheet Datasheet(数据手册):电子元器件或者芯片的数据手册,一般由厂家编写,格式一般为PDF,内容为电子分立元器件或者芯片的各项参数,电性参数,物理参数,甚至制造材料…...

C言雅韵集:野指针

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的pa…...

2 celery环境搭建

1. 安装 Celery 及依赖 1.1 安装 Celery 使用 pip 安装 Celery(推荐 Python 3.7 环境): pip install celery1.2 选择并安装 Broker Celery 需要一个消息中间件(Broker)来传递任务。以下是两种常用 Broker 的安装方…...

alertManager部署安装、告警规则配置详解及告警消息推送

​ java接受告警请求RestController RequestMapping("/alert") Slf4j public class TestApi {private static final DateTimeFormatter FORMATTER DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");RequestMappingpublic void sendTemplate(HttpServl…...

day45——非递减数列(LeetCode-665)

题目描述 给你一个长度为 n 的整数数组 nums &#xff0c;请你判断在 最多 改变 1 个元素的情况下&#xff0c;该数组能否变成一个非递减数列。 我们是这样定义一个非递减数列的&#xff1a; 对于数组中任意的 i (0 < i < n-2)&#xff0c;总满足 nums[i] < nums[i …...

LeetCode19.删除链表的倒数第N个节点

题目 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。请用一次扫描实现 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1], n 1 输出&#xff…...

Kafka系列之:计算kafka集群topic占的存储大小

Kafka系列之:计算kafka集群topic占的存储大小 topic存储数据格式统计topic存储大小定时统计topic存储大小topic存储数据格式 单位是字节大小 size_bytes{directory="/data/datum/kafka/optics-all" } 782336计算topic存储大小脚本逻辑是: 计算指定目录或文件的大小…...

Logisim数字逻辑实训——计数器设计与应用

4位递增计数器 六进制计数器 十进制计数器 六十进制计数器 二十四进制计数器 计时器...

安卓手机如何改ip地址教程

对于安卓手机用户而言&#xff0c;ip修改用在电商、跨境电商、游戏搬砖、社交软件这些需要开多个账号的项目。因为多个设备或账号又不能在同一ip网络下&#xff0c;所以修改手机的IP地址防检测成为一个必要的操作。以下是在安卓手机上更改IP地址的多种方法及详细步骤&#xff0…...

论文阅读--Orient Anything

通过渲染3D模型来学习不同方向下物体的外观&#xff0c;并从单张和自由视角的图像中估计物体方向 1. 数据生成&#xff1a;基于 3D 渲染构建大规模方向标注数据集 - 数据来源&#xff1a; 使用 Objaverse 数据库中的高质量 3D 模型&#xff0c;进行筛选和预处理。 - 筛选规范…...

ASP.NET MVC 实现增删改查(CRUD)操作的完整示例

提供一个完整的 ASP.NET MVC 实现增删改查&#xff08;CRUD&#xff09;操作的示例。该示例使用 SQL Server 数据库&#xff0c;以一个简单的 Product 实体为例。 步骤 1&#xff1a;创建 ASP.NET MVC 项目 首先&#xff0c;在 Visual Studio 中创建一个新的 ASP.NET MVC 项目…...

ASP.NET常见安全漏洞及修复方式

Microsoft IIS 版本信息泄露 查看网页返回的 Header 信息&#xff0c;默认会包含 IIS&#xff0c;ASP.NET 版本信息&#xff1a; 隐藏 Server 标头 编辑 web.config 文件&#xff0c;在 system.webServer 节点中配置 requestFiltering 来移除Server标头&#xff1a; <sec…...

文件系统的npu和内核的npu有什么区别

我在编译rk3588的内核和文件系统时候&#xff0c;发现都编译到rknpu这个文件&#xff0c;那么文件系统的npu和内核的npu有什么根本的区别吗&#xff1f; 我可以理解为&#xff0c;文件系统下是应用程序&#xff0c;内核下是驱动程序。 功能定位 内核中的 NPU 源码 核心功能&am…...

RUI桌面TV版最新版免费下载-安卓电视版使用教程

在智能电视的使用中&#xff0c;拥有一款好用的桌面应用能极大提升体验&#xff0c;RUI桌面TV版就是这样一款实用的工具。下面为大家带来它的免费下载及安卓电视版使用教程。 一、下载步骤 首先确保你的安卓电视已连接网络。打开电视自带的应用商店&#xff0c;在搜索栏输入“…...

android的配置检查 查看安卓设备配置

Android系统属性配置与内存管理指南 在Android开发过程中&#xff0c;了解系统属性配置和内存管理机制对应用性能优化至关重要。本文将介绍如何通过adb命令查询和修改系统属性&#xff0c;以及如何合理管理应用内存。 一、adb命令查询当前堆内存信息 1. 查询所有配置 adb s…...

RHCE的简单配置

一&#xff1a;配置qq第三方客户端验证 1.安装第三方邮件客户端软件 2.mail程序登录验证qq账号 3.在qq客户端程序&#xff08;如浏览器中进入邮箱登录QQ邮箱->设置->账户&#xff09;中通过设置开启imap/smtp服 务提供第三方程序账号的授权码 4.因为需要 QQ 邮箱的 S…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(7):(1)ながら 一边。。一边 (2)。。。し。。。し。。 又……又……

日语学习-日语知识点小记-构建基础-JLPT-N4阶段&#xff08;7&#xff09;&#xff1a;&#xff08;1&#xff09;ながら 一边。。一边 &#xff08;2&#xff09;。。。し。。。し。。 又……又…… 1、前言&#xff08;1&#xff09;情况说明&#xff08;2&#xff09;工程师…...

【 图像梯度处理,图像边缘检测】图像处理(OpenCv)-part6

13 图像梯度处理 13.1 图像梯度 边缘提取是图像处理中的一个重要任务&#xff0c;其目的是检测图像中灰度值发生显著变化的区域&#xff0c;这些区域通常对应于图像中的物体边界、纹理变化或深度变化等。边缘提取的原理可以分为以下几个关键步骤&#xff1a; 1. 边缘的定义和…...

一本通 2063:【例1.4】牛吃牧草 1005:地球人口承载力估计

Topic&#xff1a; Ideas&#xff1a; 为什么把这两道题放在一起呢&#xff1f;就是因为这两道题很类似&#xff0c;都是很简单的数学题&#xff0c;只要你会列出数学等式&#xff0c;你就学会这道题了&#xff01; 下面把计算过程展示给大家 Code&#xff1a; //2025/04/18…...

下载HBuilder X,使用uniapp编写微信小程序

到官网下载HBuilder X 地址&#xff1a;HBuilderX-高效极客技巧 下载完成后解压 打开解压后的文件夹找到HBuilderX.exe 打开显示更多&#xff0c;发送到桌面快捷方式 到桌面上启动HBuilderX.exe启动应用 在工具点击插件安装 选择安装Vue3编译器 点击新建创建Vue3项目 编写项目…...

4.18---缓存相关问题(操作原子性,击穿,穿透,雪崩,redis优势)

为什么要用redis做一层缓存&#xff0c;相比直接查mysql有什么优势&#xff1f; 首先介绍Mysql自带缓存机制的问题&#xff1a; MySQL 的缓存机制存在一些限制和问题,它自身带的缓存功能Query Cache只能缓存完全相同的查询语句&#xff0c;对于稍有不同的查询语句&#xff0c…...

前端:uniapp中uni.pageScrollTo方法与元素的overflow-y:auto之间的关联

在uniapp中&#xff0c;uni.pageScrollTo方法与元素的overflow-y:auto属性之间存在以下关联和差异&#xff1a; 一、功能定位差异 ‌uni.pageScrollTo‌ 属于‌页面级滚动控制‌&#xff0c;作用于整个页面容器‌34。要求页面内容高度必须超过屏幕高度&#xff0c;且由根元素下…...

获取不到AndroidManifest中的meta-data

现象描述 最近在项目中接入穿山甲广告的sdk&#xff0c;快速实现了核心功能验证。接下来就准备规范代码正式使用&#xff0c;却掉了一个坑&#xff0c;略做记录。 穿山甲sdk提供了一个appid的参数&#xff0c;不同渠道包是不同的&#xff0c;所以将其配入了gradle的productFl…...

Python学习之Matplotlib

Python学习之Matplotlib Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形.通过Matplotlib,开发者可以仅需要几行代码,便可以生成饼图,直方图,功率谱,条形图,错误图,散点图等 1.1 图形的基本构成 一个完整的图,包括figure,a…...

Motion Tracks:少样本模仿学习中人-机器人之间迁移的统一表征

25年1月来自Cornell和Stanford的论文“MOTION TRACKS: A Unified Representation for Human-Robot Transfer in Few-Shot Imitation Learning”。 教会机器人自主完成日常任务仍然是一项挑战。模仿学习 (IL) 是一种强大的方法&#xff0c;它通过演示向机器人灌输技能&#xff…...

【Spring Boot】MyBatis入门:连接Mysql数据库、测试单元、连接的常见错误

MyBatis入门 1.什么是MyBatis&#xff1f;2.准备工作2.1.创建项目2.2.MySQL数据准备2.3.创建对应的实体类 3.写配置文件和获取数据3.1写配置文件3.2 持久层代码 4.单元测试5.连接数据库时常见的错误5.1 url 配置错误5.2 MySQL账号密码错误5.3 找不到数据库5.4 表错误5.3 云服务…...

【AI插件开发】Notepad++ AI插件开发实践:支持配置界面

一、引用 此前的系列文章已基本完成了Notepad的AI插件的功能开发&#xff0c;但是此前使用的配置为JSON配置文件&#xff0c;不支持界面配置。 本章在此基础上集成支持配置界面&#xff0c;这样不需要手工修改配置文件&#xff0c;直接在界面上操作&#xff0c;方便快捷。 注…...

《Spring Boot 测试框架指南:@SpringBootTest与Mockito的最佳实践》

大家好呀&#xff01;&#x1f44b; 今天我要和大家聊聊Spring Boot测试的那些事儿。作为一名Java开发者&#xff0c;写代码很重要&#xff0c;但写测试同样重要&#xff01;&#x1f4af; 想象一下&#xff0c;你建了一座漂亮的房子&#x1f3e0;&#xff0c;但如果没有质量检…...

《数据结构初阶》【时间复杂度 + 空间复杂度】

《数据结构初阶》【时间复杂度 空间复杂度】 前言&#xff1a;-----------------------------------------1. 什么是数据结构&#xff1f;2. 什么是算法&#xff1f; -----------------------------------------算法的时间复杂度和空间复杂度1. 为什么要引入时间复杂度和空间复…...

【深度学习—李宏毅教程笔记】Self-attention

目录 一、Self-attention 的引入 1、多样化的输入形式 2、典型的下游任务下游任务 3、传统“全连接 窗口”方法的局限 4、Self‑Attention 的引入 二、Self-attention 的架构 1、Self-attention层的框图表示 2、Self-attention 层的矩阵运算过程 三、Multi-head Self…...