SINetv2:Concealed Object Detection——论文简述

2024-03-11 20:30

本文主要是介绍SINetv2:Concealed Object Detection——论文简述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、简介

目标检测可以分为三个类别:通用目标检测(语义分割、全景分割)、突出目标检测和伪装目标检测。

与上一篇文章一样,同样是伪装目标检测,但是取得了更好的效果。

数据集采用COD10k,每张图片采用六种标注:属性(如下表所示)、类别(super-&sub-class)、bounding boxes、object
annotation、instance annotation 和 edge annotation。
在这里插入图片描述
较v1增加了neighbor connection decoder(NCD) 和 group-reversal attention (GRA)。

本论文完成的是目标层面的检测,而不是实例分割。

二、模型

在这里插入图片描述
模型分为两个部分:搜索和确认。

2.1 搜索阶段

2.1.1 特征抽取

backbone是res2net50。

2.1.2 Texture Enhanced Module (TEM)

在这里插入图片描述
对应代码中的 Receptive Field Block,其中标准的 (2i - 1) x (2i - 1) 大小的卷积操作可以分为 1 x (2i - 1) 和 (2i - 1) x 1 大小的两个连续卷积操作,从而在不减小表征能力的前提下提高推理速度。

2.1.3 Neighbor Connection Decoder (NCD)

低层级的特征由于更大的空间分辨率,会消耗更多的计算资源,但是表现不佳,本论文采用最后三层特征,而不是将所有特征金字塔送入 NCD 中。

NCD 解决的问题是如何保持同一层内语义的一致性,以及如何在各层之间架起上下文的桥梁。

对送入 NCD 的三层特征再做一次处理,对应如下代码中的 xi_1(i = 1, 2, 3),然后再是 NCD 操作。
在这里插入图片描述

    def forward(self, x1, x2, x3):x1_1 = x1  # f5x2_1 = self.conv_upsample1(self.upsample(x1)) * x2  # f4x3_1 = self.conv_upsample2(self.upsample(x2_1)) * self.conv_upsample3(self.upsample(x2)) * x3  # f3x2_2 = torch.cat((x2_1, self.conv_upsample4(self.upsample(x1_1))), 1)x2_2 = self.conv_concat2(x2_2)x3_2 = torch.cat((x3_1, self.conv_upsample5(self.upsample(x2_2))), 1)x3_2 = self.conv_concat3(x3_2)x = self.conv4(x3_2)x = self.conv5(x)return x

2.2 确认阶段

如下代码注释所示,标注了该模型示意图的确认阶段的节点。

# Neighbourhood Connected DecoderS_g = self.NCD(x4_rfb, x3_rfb, x2_rfb)  # C6S_g_pred = F.interpolate(S_g, scale_factor=8, mode='bilinear')    # Sup-1 (bs, 1, 44, 44) -> (bs, 1, 352, 352)# ---- reverse stage 5 ----guidance_g = F.interpolate(S_g, scale_factor=0.25, mode='bilinear')  # r1,5ra4_feat = self.RS5(x4_rfb, guidance_g)  # r4,5S_5 = ra4_feat + guidance_g   # C5S_5_pred = F.interpolate(S_5, scale_factor=32, mode='bilinear')  # Sup-2 (bs, 1, 11, 11) -> (bs, 1, 352, 352)# ---- reverse stage 4 ----guidance_5 = F.interpolate(S_5, scale_factor=2, mode='bilinear')  # r1,4ra3_feat = self.RS4(x3_rfb, guidance_5)  # r4,4S_4 = ra3_feat + guidance_5  # C4S_4_pred = F.interpolate(S_4, scale_factor=16, mode='bilinear')  # Sup-3 (bs, 1, 22, 22) -> (bs, 1, 352, 352)# ---- reverse stage 3 ----guidance_4 = F.interpolate(S_4, scale_factor=2, mode='bilinear')  # r1,3ra2_feat = self.RS3(x2_rfb, guidance_4)  # r4,3S_3 = ra2_feat + guidance_4  # C3S_3_pred = F.interpolate(S_3, scale_factor=8, mode='bilinear')   # Sup-4 (bs, 1, 44, 44) -> (bs, 1, 352, 352)
2.2.1 Reverse Guidance

在这里插入图片描述
在这里插入图片描述

2.2.2 Group-Reversal Attention (GRA)

就是两个 chunk 和 cat 操作。
在这里插入图片描述

这篇关于SINetv2:Concealed Object Detection——论文简述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/798982

相关文章

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想?哪些是 BERT 的创新? 1标题 + 作者 BERT: Pre-trainin

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

[论文笔记]LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale

引言 今天带来第一篇量化论文LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale笔记。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 大语言模型已被广泛采用,但推理时需要大量的GPU内存。我们开发了一种Int8矩阵乘法的过程,用于Transformer中的前馈和注意力投影层,这可以将推理所需

时间序列|change point detection

change point detection 被称为变点检测,其基本定义是在一个序列或过程中,当某个统计特性(分布类型、分布参数)在某时间点受系统性因素而非偶然因素影响发生变化,我们就称该时间点为变点。变点识别即利用统计量或统计方法或机器学习方法将该变点位置估计出来。 Change Point Detection的类型 online 指连续观察某一随机过程,监测到变点时停止检验,不运用到

2024 年高教社杯全国大学生数学建模竞赛 C 题 农作物的种植策略 参考论文 无水印

持续更新中,2024年数学建模比赛思路代码论文都会发布到专栏内,只需订阅一次!  完整论文+代码+数据结果链接在文末!  订阅后可查看参考论文文件 第一问 1.1 问题重述 这个问题围绕的是华北山区的某乡村,在有限的耕地条件下,如何制定最优的农作物种植策略。乡村有 34 块露天耕地和 20 个大棚,种植条件包括粮食作物、蔬菜、水稻和食用菌。除了要考虑地块的面积、种植季节等,还要确保