6.3 DETR与GLIP:新一代目标检测技术详解

6.3 DETR与GLIP:新一代目标检测技术详解

引言

在前两节中,我们学习了视觉问答(VQA)和视觉定位(Grounding)技术,这些技术都依赖于准确的目标检测作为基础。传统的目标检测方法如Faster R-CNN、YOLO等虽然性能优秀,但存在一些固有的局限性,如需要复杂的后处理步骤(如NMS)和手工设计的锚框机制。

DETR(DEtection TRansformer)和GLIP(Grounding Language-Image Pre-training)作为新一代目标检测技术,通过引入Transformer架构和语言-视觉联合预训练,为目标检测领域带来了革命性的变化。在本节中,我们将深入探讨这两种技术的原理、架构和实现方法。

DETR:DEtection TRansformer

DETR的核心思想

DETR摒弃了传统目标检测方法中的锚框机制和后处理步骤,采用端到端的Transformer架构直接预测目标的边界框和类别。其核心创新包括:

  1. 集合预测:将目标检测视为集合预测问题
  2. Transformer架构:使用Transformer进行特征交互
  3. 二分匹配损失:通过匈牙利算法进行标签分配

图像输入

CNN骨干网络

位置编码

Transformer编码器

对象查询

Transformer解码器

预测头

边界框和类别

DETR架构详解

importtorchimporttorch.nnasnnimporttorch.nn.functionalasFimportnumpyasnpclassDETR(nn.Module):def__init__(self,num_classes=91,num_queries=100,d_model=256,nhead=8,num_encoder_layers=6,num_decoder_layers=6):super(DETR,self).__init__()self.num_queries=num_queries self.d_model=d_model# CNN骨干网络(通常使用ResNet)self.backbone=self._build_backbone()# 位置编码self.position_embedding=PositionEmbeddingSine(d_model//2)# Transformerself.transformer=Transformer(d_model=d_model,nhead=nhead,num_encoder_layers=num_encoder_layers,num_decoder_layers=num_decoder_layers)# 对象查询self.query_embed=nn.Embedding(num_queries,d_model)# 输入投影self.input_proj=nn.Conv2d(2048,d_model,kernel_size=1)# 预测头self.class_embed=nn.Linear(d_model,num_classes+1)# +1 for no-object classself.bbox_embed=MLP(d_model,d_model,4,3)def_build_backbone(self):# 简化的骨干网络(实际使用ResNet)returnnn.Sequential(nn.Conv2d(3,64,7,stride=2,padding=3),nn.ReLU(),nn.MaxPool2d(2,2),nn.Conv2d(64,128,3,padding=1),nn.ReLU(),nn.Conv2d(128,256,3,padding=1),nn.ReLU(),nn.Conv2d(256,512,3,padding=1),nn.ReLU(),nn.Conv2d(512,2048,3,padding=1),nn.ReLU())defforward(self,images):# 骨干网络特征提取features=self.backbone(images)# (batch, 2048, H, W)# 位置编码pos=self.position_embedding(features)# (batch, d_model, H, W)# 投影到Transformer维度src=self.input_proj(features)# (batch, d_model, H, W)# 展平空间维度batch_size,channels,height,width=src.shape src=src.flatten(2).permute(2,0,1)# (H*W, batch, d_model)pos=pos.flatten(2).permute(2,0,1)# (H*W, batch, d_model)# 对象查询query_embed=self.query_embed.weight.unsqueeze(1).repeat(1,batch_size,1)# (num_queries, batch, d_model)# Transformer编码器-解码器tgt=torch.zeros_like(query_embed)# (num_queries, batch, d_model)memory=self.transformer.encoder(src,pos=pos)hs=self.transformer.decoder(tgt,memory,query_pos=query_embed,pos_enc=pos)# 预测outputs_class=self.class_embed(hs)# (num_decoder_layers, batch, num_queries, num_classes+1)outputs_coord=self.bbox_embed(hs).sigmoid()# (num_decoder_layers, batch, num_queries, 4)out={'pred_logits':outputs_class[-1],'pred_boxes':outputs_coord[-1]}returnoutclassPositionEmbeddingSine(nn.Module):def__init__(self,num_pos_feats=64,temperature=10000,normalize=False,scale=None

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

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

相关文章

2026年江苏省考面试培训企业推荐,中政公考靠谱之选 - 工业品牌热点

在江苏省考面试的备考赛道上,选择一家靠谱的培训机构,就像为冲刺阶段配备了精准的导航与强劲的引擎,直接关系到能否在千军万马中突出重围。面对市场上鱼龙混杂的机构,如何找到真正能提升面试能力、助力上岸的良师益…

2025年AI超级员工企业用户口碑排行,AI员工/AI超级员工/AI企业员工/AI智能员工供应商口碑推荐榜 - 品牌推荐师

行业洞察:AI超级员工市场迎来爆发式增长 随着人工智能技术的快速发展,AI超级员工正成为企业数字化转型的重要推动力。据行业数据显示,2024年全球AI超级员工市场规模已突破千亿元,预计到2025年将保持30%以上的年均增…

如何在Java中实现线程间的通信?

一、线程间通信的核心场景最典型的场景是生产者 - 消费者模型:生产者线程:生产数据(往共享容器里放数据)消费者线程:消费数据(从共享容器里取数据)通信需求:容器满时生产者等待&…

AI 写论文哪个软件最好?实测封神!虎贲等考 AI 凭硬核实力领跑全场

毕业季的论文战场硝烟四起,“AI 写论文哪个软件最好” 的灵魂拷问,成了无数学生的每日必问。有人踩坑 “虚构文献生成器”,查重率居高不下;有人被 “AI 痕迹检测” 难住,辛苦写的论文被判违规;还有人在多个…

Conda 常用命令整理

环境管理 管理独立的 Python 运行环境,解决项目间依赖冲突。创建环境 # 创建名为 myenv 的新环境 conda create -n myenv# 创建并指定 Python 版本 conda create -n myenv python=3.9激活/切换环境 # 进入 myenv 环境…

AI 写论文哪个软件最好?实测虎贲等考 AI:毕业论文的智能通关王炸

毕业季的论文赛道上,“AI 写论文哪个软件最好” 的灵魂拷问,总能在高校互助群里刷屏。有人踩坑通用 AI 的 “文献幻觉”,有人栽在单一工具的 “功能割裂”,还有人被查重和 AIGC 检测的双重门槛难住。作为深耕论文写作科普的测评博…

6.4 Cross-Attention机制:视觉与语言如何深度融合

6.4 Cross-Attention机制:视觉与语言如何深度融合 引言 在前三节中,我们学习了视觉问答(VQA)、视觉定位(Grounding)以及DETR和GLIP等新一代目标检测技术。这些技术的核心都依赖于一个关键机制——跨模态注意力(Cross-Attention),它使得视觉和语言模态能够进行深层次…

spring传播机制事务相关

spring传播机制事务相关一、REQUIRED 核心规则(一句话记住) 有则加入,无则新建 完整严谨描述:当一个被 @Transactional 标记的目标方法执行时,先检查当前执行环境是否已经存在事务; 如果当前已有事务 → 该方法不…

别墅装修怎么选入户门?2025-2026别墅入户门选购终极指南:十大品牌权威排名揭晓 - 匠子网络

body { font-family: "Microsoft YaHei", sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-width: 1200px; margin: 0 auto; padding: 20px } h1 { text-align: center; color: rgba(139, 6…

7.1 NL2SQL核心技术:让AI听懂你的自然语言查询

7.1 NL2SQL核心技术:让AI听懂你的自然语言查询 在人工智能时代,让计算机理解人类的自然语言并执行相应的操作一直是我们的终极目标之一。其中,将自然语言转换为SQL查询(NL2SQL)是一项非常重要的任务,它能够使非技术人员通过简单的自然语言指令来查询数据库,而无需掌握复…

有人吃NMN像换了个人,有人却没啥变化!盼生派带你搞懂NMN真相 - 速递信息

42岁的李女士没有任凭岁月摆布,没有断崖衰老,没有被人猜错年龄,她心里都很得意。这得益她改变了思路,才彻底告别了“抗衰焦虑”。曾经靠浓妆遮盖的法令纹变浅了,熬夜后第二天也不会昏沉乏力,就连体检报告上的各项…

AI 写论文哪个软件最好?实测虎贲等考 AI:毕业论文的智能通关密码

毕业季的论文战场,“AI 写论文哪个软件最好” 的灵魂拷问,总能在各大高校的互助群里刷屏。不少同学踩坑无数:有的工具生成内容空洞无物,有的文献引用漏洞百出,有的查重结果与学校标准脱节。作为深耕论文写作科普的测评…

云数潮:每天三分钟,让普通人参与数字经济 - 速递信息

在数字经济成为时代发展重要方向的当下,真正的关键不在于技术本身,而在于——普通人是否真正拥有可执行的参与入口。 如果只有概念而缺乏可行路径,数字经济终究难以实现普惠。 云数潮(YunData Wave),正是在这一背…

虎贲等考 AI:重塑学术写作范式的智能全流程解决方案

在学术研究数字化转型的浪潮下,论文写作不再是孤军奋战的苦旅。虎贲等考 AI 智能写作平台—— 一款深度融合人工智能技术的专业论文写作辅助工具,以 “真实赋能、智能高效、合规严谨” 为核心定位,构建起从开题构思到答辩定稿的全链条学术服务…

毕业生必看:论文AI率太高被退回?5招搞定降AI全攻略 - 还在做实验的师兄

论文AI率太高被导师打回来?别慌。这篇攻略教你5招搞定:先搞清楚检测原理,再用手动+工具组合拳处理。核心推荐嘎嘎降AI(达标率99.26%)和比话降AI(知网专攻),能把AI率从70%+降到10%以下。毕业生必看:论文AI率太…

bind接口的address详解

QUdpSocket::bind() 接口中的 address 参数(类型为 QHostAddress)用于指定 本地 哪个网络接口(IP 地址)来监听 UDP 数据报。这个参数对 socket 的行为有决定性影响,下面从原理、常用值、使用场景和注意事项四个方面详细…

Kimi写的内容AI率太高?这几款工具帮你降到10%以下 - 还在做实验的师兄

Kimi支持超长文本输入,写文献综述很方便,但生成内容AI率普遍在70%-85%。Kimi自己改只能降到30%-40%,而且容易改偏原意。要想降到10%以下,必须用专业降AI工具:嘎嘎降AI(性价比高)、比话降AI(效果稳定)最靠谱。…

端口的本质是什么

端口(Port)的本质是操作系统用于区分同一台主机上不同网络通信进程或服务的逻辑标识符。它不是物理设备,而是一个 16 位的整数(0~65535),与 IP 地址结合使用,构成“套接字地址(Socke…

聊聊2026年果汁生产线资深厂商,上望机械制造靠谱吗? - 工业品牌热点

2026年饮料行业消费升级加速,健康化、个性化需求驱动果汁市场规模持续扩容,高效果汁生产线已成为企业提升产能效率、保障产品品质、抢占市场份额的核心载体。无论是中小微饮料厂的初创建厂需求,还是成熟品牌的产能升…

Kimi降AI效果怎么样?月之暗面AI助手降论文AI率实测 - 还在做实验的师兄

Kimi作为月之暗面出品的AI助手,长文本处理能力强,但用它降AI效果有限。实测反复改写3轮,AI率从82%只能降到65%左右。想真正把AI率降到学校要求的20%以下,还是需要专业工具:嘎嘎降AI(4.8元,达标率99.26%)或比话…