【CVPR2021】Dynamic Region-Aware Convolution

2024-03-04 01:20

本文主要是介绍【CVPR2021】Dynamic Region-Aware Convolution,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

请添加图片描述

论文:https://arxiv.org/pdf/2003.12243.pdf

代码:https://github.com/shallowtoil/DRConv-PyTorch (非官方实现)

这个论文的核心词是:动态网络。作者认为,传统卷积对于不同样本使用相同的 filter,如果能够对不同区域的特征使用不同的卷积核可以显著提升特征表达能力。如下图所示,把图像分割为不同区域,对不同区域采用不同的卷积核,可以提高特征表达能力。下图左边是对目标和背景采用不的卷积核,右边是对人脸不同部分采用不同的卷积核。

请添加图片描述

为了实现这一目标,作者提出了 dynamic region-aware conv,如下图所示,包括两个步骤:

  • 第一步,生成 guided mask,将特征分割为若干个区域;
  • 第二步,每个区域中,生成一个定制的 filter 进行卷积(filter 可以根据输入的图像动态调整)

在第一步中,如何分割就相当关键了。作者是通过卷积来实现的,使用卷积生成 m m m 个通道的 guided feature 。图中包括背景、眼睛、脸、牌子、嘴五个区域,因此 m = 5 m=5 m=5。分割是通过 argmax 来实现。

动态网络大多会采用 argmax 方法,前向传播用的是 hardmax ,反向传播用的是 softmax 近似。

生成卷积核的步骤如下图所示,将输入特征自适应池化成 k × k k\times k k×k,然后使用两个连续的 1x1 卷积处理,第一个卷积使用 sigmoid 激活,第二个卷积分组为 m m m,不使用激活。

实验部分有个有趣的发现是,模型规模越小,该方法提升越明显 ,这是因为DRConv在空间维上提高了语义表达能力,对于表达能力较弱的小模型,帮助更为明显。

这个论文还有一个终极问题: feature map 每个区域对应的卷积核都不一样,不清楚如何实现这种分区域的卷积?

最简单的方式是,各个卷积核对 feature 都进行卷积,然后过滤掉不用的区域,然后合并结果。由于作者没有公开代码,不清楚实际是如何实现的。

这篇关于【CVPR2021】Dynamic Region-Aware Convolution的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes 优势 1、构建了一个用于监督原始视频去噪的基准数据集。为了多次捕捉瞬间,我们手动为对象s创建运动。在高ISO模式下捕获每一时刻的噪声帧,并通过对多个噪声帧进行平均得到相应的干净帧。 2、有效的原始视频去噪网络(RViDeNet),通过探

青云QingCloud 推出 Region 服务,帮企业轻松构建多活架构

理想情况下,企业通过使用云的方式来消除地域对业务的影响,就像我们在使用水电时,不需要关心发电厂在哪里。但是,一般来说,不同地域之间,只能通过公网联通。 为帮助用户便捷地构建高可用的业务架构,青云QingCloud 推出 Region 服务,通过对基础网络架构进行升级,实现区域( Region )内的可用区( Availability Zone )之间内网高速互联,全面提升整体服务能力。

【tensorflow 使用错误】tensorflow2.0 过程中出现 Error : Failed to get convolution algorithm

如果在使用 tensorflow 过程中出现 Error : Failed to get convolution algorithm ,这是因为显卡内存被耗尽了。 解决办法: 在代码的开头加入如下两句,动态分配显存 physical_device = tf.config.experimental.list_physical_devices("GPU")tf.config.experiment

Spring源码学习--Aware相关接口(beanNameAware接口/BeanFactoryAware接口/ApplicationContextAware接口)

可以先这样理解在Spring中以Aware结尾的接口的功能 看到Spring源码中接口以Aware结尾的接口(XXXAware)在Spring中表示对XXX可以感知,通俗点解释就是:如果在某个类里面想要使用spring的一些东西,就可以通过实现XXXAware接口告诉Spring,Spring看到后就会给你送过来,而接收的方式是通过实现接口唯一方法set-XXX.比如:有一个类想要使用当前

【硬刚ES】ES基础(十三)Dynamic Template和Index Template

本文是对《【硬刚大数据之学习路线篇】从零到大数据专家的学习指南(全面升级版)》的ES部分补充。

Halcon选择一堆region中面积第N大的region的算法实现

以下图为例: 比如我想把面积第2小的那个“小正方形”选择出来,算法代码如下: 1 read_image (Yuan, 'C:/Users/happy xia/Desktop/yuan.png')2 binary_threshold (Yuan, Region, 'max_separability', 'dark', UsedThreshold)3 connection (Regio

《Learning To Count Everything》CVPR2021

摘要 论文提出了一种新的方法来解决视觉计数问题,即在给定类别中仅有少量标注实例的情况下,对任何类别的对象进行计数。将计数问题视为一个少样本回归任务,并提出了一种新颖的方法,该方法通过查询图像和查询图像中的少量示例对象来预测图像中所有感兴趣对象的存在密度图。此外,还提出了一种新颖的适应策略,使网络能够在测试时仅使用新类别中的少量示例对象来适应任何新的视觉类别。为了支持这一任务,作者还引入了一个包含

Detection简记3-Region Proposal by Guided Anchoring

创新点 1.新的anchor 分布策略:Guided Anchoring 2.feature adaption module,根据潜在的anchor精调特征 总结 Guided Anchoring:流程如图所示 特征图F1接两个分支:位置预测分支产生物体可能存在的位置的概率图,形状预测分支预测物体的形状,独立于位置。根据两个分支的输出,得到anchor。 位置预测分支: 1X1的卷积+si

Detection简记2-DAFE-FD: Density Aware Feature Enrichment for Face Detection

创新点 1.使用密度估计模型增强检测中的特征图 总结 整个流程还是很清晰的。 conv1-3的特征图经过密度估计模块由检测器D1进行检测。 D2-4分别是四个检测器。 FFM是特征融合模块,将不同层不同大小的特征融合。 FFM网络结构如下: 首先使用1X1的卷积减少两组特征的厚度到128,然后使用双线性插值统一两组特征图的尺寸,然后相加。类似于cvpr2017的SSH。 多尺度检测器的网

Spark动态资源分配-Dynamic Resource Allocation

关键字:spark、资源分配、dynamic resource allocation Spark中,所谓资源单位一般指的是executors,和Yarn中的Containers一样,在Spark On Yarn模式下,通常使用–num-executors来指定Application使用的executors数量,而–executor-memory和–executor-cores分别用来指定每个ex