《Few-shot Object Counting with Similarity-Aware Feature Enhancement》CVPR2023

news2024/9/27 5:54:13

摘要

论文提出了一种新颖的学习模块,该模块包含一个相似性比较模块(Similarity Comparison Module, SCM)和一个特征增强模块(Feature Enhancement Module, FEM)。通过比较支持图像和查询图像的投影特征,生成一个得分图,然后通过在样本维度和空间维度上的归一化,得到可靠的相似性图。然后,利用这些相似性作为权重系数,增强查询特征。这种设计鼓励模型更多地关注查询图像中与支持图像相似的区域,从而实现更清晰的不同对象之间的边界。通过在各种基准和训练设置上的广泛实验,论文证明了其方法超过了现有的最先进方法。

概述

拟解决的问题: 论文旨在解决少样本目标计数问题,即在只有少量支持图像的情况下,对查询图像中的目标对象进行计数。这与大多数现有研究不同,因为现有研究假设测试阶段要计数的目标对象已被训练数据覆盖。

few-shot目标计数:希望找到查询图像中出现少量支持图像描述的示例对象的数量。除了训练阶段包含的对象外,我们还期望模型在测试阶段处理新类而无需重新训练。

三种不同的方法:基于特征的方法、基于相似性的方法,以及本文提出的相似性感知特征增强块(Similarity-Aware Feature Enhancement block,简称SAFEBlock):

  • a 展示了基于特征的方法,其中查询特征与池化后的支持特征进行连接,然后通过一个回归头(Regress Head)来识别两个特征是否足够接近。然而,池化操作忽略了支持图像的空间信息,这可能导致特征比较不够可靠。
  • b 展示了基于相似性的方法,通过从原始特征生成相似性图作为回归对象。但是,相似性信息不如特征信息丰富,这使得在查询图像中密集排列的对象之间难以识别出清晰的边界。
  • c 展示了本文提出的SAFEBlock,它由两个主要部分组成:相似性比较模块(Similarity Comparison Module,简称SCM)和特征增强模块(Feature Enhancement Module,简称FEM)。

拓展阅读

回归头的结构和功能

  1. 卷积层序列:通常包括多个卷积层,用于处理和提取增强特征映射中的空间信息。
  2. 激活函数:如Leaky ReLU,用于增加网络的非线性处理能力,帮助捕捉更复杂的模式。
  3. 上采样(Upsampling):通过如双线性插值(bilinear interpolation)等上采样方法,将特征映射的分辨率提升到与原始查询图像相同的尺寸。这是因为在特征提取过程中,通常会通过池化或卷积步长的改变来降低特征映射的尺寸,因此需要上采样来恢复到原始尺寸。
  4. 最终输出层:最后一个卷积层将特征映射到单个通道,输出最终的密度图。

创新之处

  1. 提出了一种新颖的相似性感知特征增强模块(SAFECount),该模块整合了特征和相似性的优势,通过利用相似性作为指导来增强特征。
  2. 引入了相似性比较模块(SCM),通过学习特征投影并比较这些投影特征来生成得分图,从而获得可靠的相似性图。
  3. 引入了特征增强模块(FEM),使用相似性作为权重系数,将支持特征融合到查询特征中,使增强的查询特征更加关注与样本目标相似的区域。

方法

  • 使用支持图像和查询图像的特征,通过SCM生成得分图,然后归一化生成相似性图。
  • FEM利用相似性图作为权重,将支持特征融合到查询特征中,增强查询特征。
  • 通过特征提取器和回归头,将增强的查询特征转换为密度图,用于目标计数。
  • 允许SAFECount模块堆叠,以进一步提高性能。

框架中的核心块,称为相似性感知特征增强块。我们将支持特征和查询特征分别表示为 f_{S}\in \mathbb{R}^{K\times C\times H_{S}\times W_{S}}f_{Q}\in \mathbb{R}^{C\times H_{Q}\times W_{Q}},其中 K 是支持图像的数量。相似度比较模块 (SCM) 首先将 f_{S}f_{Q} 投影到比较空间,然后在每个空间位置比较这些投影特征,得到分数图 R_{0}。然后,R_{0} 沿样本维度和空间维度进行归一化,得到可靠的相似度图 R。以下特征增强模块(FEM)首先通过用 R 加权 f_{S} 得到相似度加权特征 f_{R},然后设法将 f_{R} 融合到 f_{Q} 中,产生增强特征 f_{Q}^{'}。通过这样做,关于与支持图像相似的区域的特征是“突出显示的”,这有助于模型在密集填充的对象之间获得可区分的边界。最后,密度图从 f_{Q}^{'} 回归。 

3.1 相似性比较模块(SCM)

目的:通过比较支持图像和查询图像的特征,生成一个表示它们之间相似度的得分图(score map),然后将其转换为一个可靠的相似性图(similarity map)。

学习特征投影:使用1x1卷积层将支持特征 f_{S}​ 和查询特征 f_{Q} 投影到比较空间。

特征比较:通过将投影后的查询特征 f_{Q}​ 与支持特征 f_{S}​ 进行卷积操作来生成得分图 R_{0},在这里,支持特征被用作卷积核(kernel),这意味着每个空间位置的卷积运算都是与支持特征的相应部分进行比较:​

其中 g(⋅) 表示特征投影,即1x1卷积层后接层归一化(Layer Normalization)。

得分归一化:将 R_{0}​ 沿样本维度和空间维度进行归一化,生成相似性图 R。

最终相似性图 R 由 R_{EN}​ 和 R_{SN}​ 逐元素相乘得到:

 3.2 特征增强模块(FEM)

目的:利用SCM生成的相似性图 R 作为权重系数,将支持特征 f_{S}​ 融合到查询特征 f_{Q}​ 中,以增强查询特征。

加权特征聚合:使用相似性图 R 作为权重,通过卷积操作将支持特征 f_{S}​ 聚合成相似性加权特征 f_{R}​。

其中 flip(⋅) 表示将输入张量水平和垂直翻转,以保留空间结构。 

可学习的特征融合:将 f_{R}​ 融合到 f_{Q}​ 中,生成增强的查询特征 f_{Q}^{'}

其中 h(⋅) 是由两个卷积层构成的网络。

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

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

相关文章

运维变革:迎接数字化转型的挑战

在数字化转型的浪潮中,我们的技术架构和实现方式正经历着前所未有的变革。这一变革不仅重塑了业务形态,也对运维体系和运维组织模式产生了深远影响。近期,在与众多客户探讨“十四五”规划时,运维变革成为一个无法回避的重要话题。…

海外广告投放矩阵:如何选择合适的平台?

跨境电商的旺季即将来临,对于卖家们来说,如何进行有效的营销推广至关重要。在多渠道广告覆盖的策略下,选择合适的平台成为关键。那么,哪些平台是跨境旺季营销的首选呢? 一、社交媒体平台 1、Instagram 以图片和短视频…

React 通用后台管理项目

React 通用后台管理项目 项目介绍 本项目是基于React的通用后台管理系统,整体系统有数据可视化展示,数据基本的增删改查功能。项目使用 Create React App创建,主语言为JavaScript。在使用React框架过程中通过hook进行页面逻辑编写。后端接口…

使用SQL语句查询MySQL数据表

6.1 创建单表基本查询 1&#xff0e;Select 语句的语法格式及其功能 &#xff08;1&#xff09;Select 语句的一般格式。 Select < 字段名称或表达式列表 > From < 数据表名称或视图名称 > [ Where < 条件表达式 > ] [ Group By < 分组的字段名称…

web前端-HTML常用标签案例

体育新闻&#xff1a; 代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title&g…

轻翼AI 1.1版本发布!多轮对话、多模态等等你期待的全都有

轻翼 AI 是一款低门槛的 AI 智能体搭建平台。即便是没有任何编程基础的人&#xff0c;也可以通过轻翼 AI 快速搭建出各种由LLM&#xff08;大语言模型&#xff09;驱动的企业级AI智能体。 智能体&#xff1a;拥有独立人设和岗位职责&#xff0c;熟悉企业知识且能够调用技能&…

下载Mongodb 4.2.25 版本教程

1、MongoDB 安装包的下载链接 Download MongoDB Community Server | MongoDB 进入如下截图&#xff1a; 2、查找历史版本 往下拉&#xff0c;点击“...”,找到”Archived releases”,点击进入 、 3、下载Mongodb 4.2.25 版本 找到如下图4.2.25版本下载链接&#xff0c;点击就可…

Python爬虫使用实例-漫kzhan

环境配置 pip install shutil parsel pillow pypdf1/ 单个章节 singleChapter 需要获取参数&#xff1a;chapter_id与comic_id&#xff0c;可能要sign和uid 获取请求地址 urlhttps://comic.mkzhan.com/chapter/content/v1/ # 请求地址获取请求参数 data{chapter_id:499…

LiveQing视频点播流媒体RTMP推流服务功能-支持大疆等无人机RTMP推流支持OBS推流一步一步搭建RTMP视频流媒体服务示例

LiveQing支持大疆等无人机RTMP推流支持OBS推流一步一步搭建RTMP视频流媒体服务示例 1、流媒体服务搭建2、推流工具准备3、创建鉴权直播间4、获取推流地址5、配置OBS推流6、推流及播放7、获取播放地址7.1 页面查看视频源地址7.2 接口查询 8、相关问题8.1、大疆无人机推流花屏 9、…

湖南(竞品调研)源点咨询 品牌进行有效竞争对手分析之浅见

在做品牌竞品调研时&#xff0c;首先在选择对标品牌的时候定要选择同赛道的&#xff0c;其次要深入地做好调研&#xff0c;搜集同品类、同赛道的品牌、门店调研。 同时&#xff0c;对竞品的调研一定要全面的分析他们的优势、劣势&#xff0c;充分学习他们身上的优点&#xff0…

2024 年全国大学生数学建模竞赛论文资料

获取比赛资料&#xff0c;请关注WX&#xff1a;“小何数模”&#xff01; &#xff08;需要完整B、C和E题资料请关注WX&#xff1a;“小何数模”&#xff01;&#xff0c;获取资料链接&#xff01;&#xff09; 经过团队努力&#xff0c;今年国赛数学建模B、C和E题完整论文资…

【mysql】mysql之主从部署以及介绍

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》&#xff1a;python零基础入门学习 《python运维脚本》&#xff1a; python运维脚本实践 《shell》&#xff1a;shell学习 《terraform》持续更新中&#xff1a;terraform_Aws学习零基础入门到最佳实战 《k8…

高压喷雾车的功能与应用_鼎跃安全

在一次森林火灾中&#xff0c;位于山区的一个小型度假村附近突然起火&#xff0c;由于山风强劲&#xff0c;火势迅速蔓延&#xff0c;消防部门立即调派多辆高压喷雾车赶往现场。在扑救过程中&#xff0c;传统消防车难以进入崎岖的山路&#xff0c;但高压喷雾车凭借其高机动性顺…

调度台在现代社会中发挥哪些重要作用

在当今这个高度信息化、快节奏的社会中&#xff0c;调度台作为各行各业运行管理的中枢神经&#xff0c;正发挥着日益重要的作用。它不仅是一个物理上的工作平台&#xff0c;更是信息汇聚、指令发出、资源调配的核心节点&#xff0c;对于保障社会正常运转、提升服务效率、应对突…

百度智能云向量数据库创新和应用实践分享

本文整理自第 15 届中国数据库技术大会 DTCC 2024 演讲《百度智能云向量数据库创新和应用实践分享》 在 IT 行业&#xff0c;数据库有超过 70 年的历史了。对于快速发展的 IT 行业来说&#xff0c;一个超过 70 年历史的技术&#xff0c;感觉像恐龙一样&#xff0c;非常稀有和少…

JVM系列(六) -对象的创建过程

一、摘要 在之前的文章中,我们介绍了类加载的过程和 JVM 内存布局相关的知识。本篇我们综合之前的知识,结合代码一起推演一下对象的真实创建过程,以及对象创建完成之后在 JVM 中是如何保存的。 二、对象的创建 在 Java 中,创建对象的方式有很多种,比如最常见的通过new …

【SpringBoot】使用Redis

目录 0. 安装Redis 1. 导入依赖 2. 配置Redis 3. idea连接Redis 4. 使用Redis简单实现记录访问次数 1. 配置拦截器 2. 定义拦截器 3. 控制器类 0. 安装Redis 我使用的是本地Redis服务器&#xff0c;安装过程。安装完成后启动Redis服务。 1. 导入依赖 <!-- red…

SQL常见100面试题解析

文章目录 内容简介SQL 初级查询SQL 高级查询设计与开发总结 内容简介 本文介绍并分析了常见的 100 道 SQL 面试题&#xff0c;主要分为三个模块&#xff1a;SQL 初级查询、SQL 高级查询以及数据库设计与开发。内容结构如下图所示&#xff1a; 本文主要使用三个示例表&#xf…

Github 2024-09-06 Java开源项目日报Top10

根据Github Trendings的统计,今日(2024-09-06统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目9TypeScript项目2非开发语言项目1JavaGuide - Java 程序员学习和面试指南 创建周期:2118 天开发语言:Java协议类型:Apache License …

Java队列详细解释

队列 一、什么是队列&#xff08;Queue&#xff09; java队列是一种线性数据结构&#xff0c;它的特点是先进先出。在队列中&#xff0c;元素的添加&#xff08;入队&#xff09;操作在队尾进行&#xff0c;而元素的移除&#xff08;出队&#xff09;操作则在队头进行。因此&a…