Fast and High Quality Image Denoising via Malleable Convolution阅读笔记

2023-05-16

论文:Fast and High Quality Image Denoising via Malleable Convolution

arXiv:https://arxiv.org/abs/2201.00392

Abstract

       大部分的图像降噪网络在整幅图像上使用静态卷积核,由于图像经常由不同的视觉模式组成,因而容易产生次优解。动态卷积根据像素输入调整卷积核参数可以一定程度解决该问题,但随之计算开销也激增。文章提出一种新的卷积结构MalleConv,折中静态卷积核和动态卷积核,可在相对较小的计算开销下生成随空间变化的卷积核。该卷积核由一个预测网络在降采样的输入上得到,既保证过程的高效性,相比静态卷积核又扩大了网络感受野。

Introduction

        随着网络深度和宽度的扩展,降噪网络可以获得更丰富的视觉表征和更大的感受野,效果也不断提升。当然这也使得计算开销急剧增加并且难以优化。基于这一限制,大部分网络在全图上采用一组静态卷积核,利用空间上的平移等变性(spatial equivariance)来提升计算效率。由于图像在不同区域存在不同的视觉模式,这一方法无法适应全局多变的特征。

        针对这一问题提出了动态卷积,根据输入图像的像素生成动态变化的卷积核参数。但随着输入图像分辨率的增加,对算力的需求急剧增加,应用场景受限。

        为兼顾动态卷积和静态卷积的优点,文章提出MalleConv,这一设计的灵感源自于图像的局部平滑性与全局异质性,即在全局范围内,图像会存在诸多不同的视觉模式,但在局部范围,视觉纹理的变化是缓慢的。

        相较于逐像素动态卷积核在每个像素点计算响应,MalleConv在一个更大的区域上计算响应。具体而言,MalleConv在下采样的特征图上进行计算,借此降低计算开销。然后通过一种在线的插值将其恢复到输入特征图的大小。这样既保证了生成过程的高效快速,又无需额外的存储开销。

Related Work

        介绍图像降噪和动态卷积核相关的工作。

Method

        MalleConv使用一个轻量化的预测网络以优化内存消耗和运行时延。首先预测网络将输入特征图X \in \mathbb{R}^{H \times W \times C}通过一个 4\times 4平均池化下采样至 X^{'} \in \mathbb{R}^{\frac{H}{4} \times \frac{W}{4} \times C},再经由一系列ResNet Blocks和最大池化,输出特征图 Y \in \mathbb{R}^{\frac{H}{8} \times \frac{W}{8} \times C^{'}},C^{'}=K^2 \times C,reshape之后得到卷积核{W_{ij} \in \mathbb{R}^{K^2 \times C}}, where \ i \in \{1,2, \cdots,\frac{H}{8}\}, \ j \in \{1,2, \cdots,\frac{W}{8}\},再使用深度可分离卷积。

        将MalleConv应用到全分辨率输入的一种方法是通过双线性插值进行上采样。作者认为这一方式需要大量的预先计算和存储。为解决这一问题,文章引入一种在线的切片操作。对于高分辨率的特征图​X \in \mathbb{R}^{H\times W\times C}和低分辨率{W_{ij} \in \mathbb{R}^{K^2 \times C}}卷积核​,通过在线的插值将其恢复至输入特征图的尺寸。

        基于上述设计,同时受最近一些金字塔式结构的影响,文章提出了一个快速且高效的降噪网络MalleNet。构建金字塔式输入的方式不是直接下采样,而是采用一种space-to-channel shuffle operations的方法,缩小空间分辨率的同时增加通道数,即从B\times C\times H\times W​变为B\times CK^{2}\times \frac{H}{K}\times \frac{W}{K}​,其中K​为缩放倍率,文中取值为2,该操作进行三次,得到四个尺寸的输入,最小为64倍下采样。每个阶段由若干个Inverted Bottleneck Block组成,这一Block源自Mobilenetv2,先通过​卷积提升通道数,后深度可分离卷积提取特征,再​卷积恢复通道数。每阶段输出与下一阶段的输入concatenate进行特征融合。

Experiments

        既然MalleConv和MalleNet最主要的点在于节约计算资源的同时可以取得更好的效果,那么实验部分也是围绕这两点去展开。

        和其他动态卷积核的比较,在以DnCNN为Backbone的情况下,不同深度下时延和PSNR的比较更优秀。

        和目前的SOTA比较也有明显的优势。

         以及将MalleConv作为一个即插即用的组件的收益。

          真实噪声上的表现。

 个人总结

        文章的点在于将动态卷积核引入降噪领域并改进计算与时延上的不足,主要思路则是每次计算动态卷积核时先下采样做运算,再上采样至原尺寸。深度可分离卷积的大量运用进一步确保参数量的下降。MalleConv还可以作为一个即插即用的组件配合其他backbone使用。实验部分主要围绕效率展开,计算量小速度快,结果提升明显。个人感觉美中不足的是这些都是基于合成噪声,好奇如果在SIDD和DND上这些结果是否依旧有足够的竞争力。但和目前SOTA的网络相比,在实际应用中还是非常具有竞争力的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Fast and High Quality Image Denoising via Malleable Convolution阅读笔记 的相关文章

  • android:web服务图像替换为本地文件夹中的图像

    我进入了 Android 聊天应用程序的最后阶段 我在使用图像和网络服务时遇到了一些问题 因此 当我选择图像并将该图像发送到 Web 服务时 我从服务获取 URL 我如何将该网址转换为本地文件夹中的图像 我很困惑如何才能使其发挥作用 我想在
  • 如何获取 android.widget.ImageView 的宽度和高度?

    ImageView Actual image 60px height of ImageView
  • 让 PHP 页面输出静态图像

    我希望 PHP 能够发送 3 张图像中的 1 张 具体取决于 GET 范围 我现在有三个独立的 PNG 图像 并且希望 PHP 脚本将这些图像嵌入其中 然后返回指定的图像 所以 我想要一个 PHP 脚本而不是 3 个图像 这可能吗 我不需要
  • Google Chrome 中不缓存动态加载的图像

    使用 jQuery 加载的图像未保存在 Google Chrome 的缓存中 每次都会从服务器下载 情况 我正在使用 jQuery slimbox2 在 灯箱 中加载图片 此时没有什么特别的 我添加了一些 jQuery 代码来检测鼠标光标何
  • 在全屏 Android 中打开图像

    我的应用程序中有一个缩略图图像 我想显示全屏图像 就像它显示的那样 当您单击图库中的任何图像时 它会全屏显示 我怎样才能做到这一点 您可以启动图库应用程序本身来使用下面的代码片段查看图像 你可以尝试一下 意图intent new Inten
  • Django / PIL - 上传图像时保存缩略图版本

    这是我的 forms py class UploadImageForm forms ModelForm class Meta model UserImages fields photo 这是我的 models py class UserIm
  • 如何在android中使用parse api在parse服务器中上传图像

    我想在android中的解析云服务器中上传图像 但我无法这样做 我尝试过以下代码 Drawable drawable getResources getDrawable R drawable profilepic Bitmap bitmap
  • 使应用程序背景适合不同设备的最佳方法

    因此 我希望通过一些漂亮的背景图像等来为我的应用程序增添一点趣味 但我很好奇的是如何确保不同的机器人正确渲染 我将在文本后面设置背景 并且我需要确保它们对于每个不同的屏幕尺寸和分辨率具有相同的尺寸和位置 有这方面好的教程吗 Thanks E
  • 如何在Android中将位图转换为PNG,然后转换为base64?

    正如标题所暗示的 我试图让我的 Android 应用程序的用户从他的设备中选择一个图像 完成 然后我想缩小图像 完成 将图像压缩 转换为 png 并发送它作为 Base64 字符串发送给 API 所以我目前调整图像大小 如下所示 optio
  • React Native 中文本的图像识别

    这可能是一个疯狂的问题 但我已经看到应用程序完成了 是否有任何类型的 API 可用于识别图像中的文本 Chase 识别支票上的数字的方式 或者是否有一个 API 可用于搜索 比如谷歌 基于图像的信息 例如 如果我拍了一张企业徽标的照片 谷歌
  • react-native - 图像需要来自 JSON 的本地路径

    你好社区 我正在react native中开发一个测试应用程序 并尝试从本地存储位置获取图像 我实际在做什么 我将图像直接链接源提供给 var 并在渲染函数中调用此方法 react 0 14 8 react native 0 23 1 np
  • 图像随机损坏(但刷新后加载)并显示“资源解释为图像但使用 MIME 类型 text/html 传输”

    我目前正在开发一个简单的 php 网站 问题是 我的整个网站中的图像 发生在所有 php 文件中 随机损坏并显示错误资源解释为图像 但以 MIME 类型 text html 传输但是 如果我尝试多次刷新页面 可以再次加载图像并且错误消失 我
  • 在 Excel 中使用 VBA 设置图像透明度

    有没有办法使用 VBA 脚本对图像应用一些透明度 我录制了一个 宏 但似乎没有录制艺术效果 我已经找到了如何制作形状 但没有找到图像 这需要几个步骤 将自选图形 如矩形 放置在工作表上 使用以下方法将您的实际图片嵌入矩形中 ShapeRan
  • 删除 WebView Android 中不需要的空白

    我已经开始使用 WebView 开发应用程序 实际上我正在使用 Webview 加载图像 我喜欢使用该类的内置缩放控件 我可以成功加载图像 但我可以看到一些令人恼火的空白 我找不到删除它的方法 我的图像尺寸为 750 1000 我在下面附上
  • Java元数据读写

    是否可以以通用方式 对于所有图像类型 在 Java 中读取和写入元数据 我找到了一些示例 但它们总是特定的 例如 JPEG 或 PNG 我需要一些足够通用的东西 而不是到处都有 if else 语句 我不想重写源代码 但这是一个很好的例子
  • 如何将图像放入此 UIPickerView 中?

    我不知道如何创建一个在文本一侧带有图像的自定义 UIPickerView 我一直在寻找一种方法 我刚刚发现了这个 UIView pickerView UIPickerView pickerView viewForRow NSInteger
  • 将一幅图像合成到另一幅图像上时,RMagick 透明度不起作用

    在下面的代码中 我尝试在一些山脉的图像上覆盖一个透明的正方形 我认为它会起作用 但是通过设置background color none 它不会使图像透明 结果是左上角有一个黑色方块 所需的结果是黑色方块应该是透明的 require open
  • 如何从图像中识别车辆牌照/车牌(ANPR)? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个网站 允许用户上传汽车图像 我想放置一个隐私过滤器来检测车辆上的车牌并对其进行模糊处理 模糊不是问题 但是是否有库或组件 首选
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 动态img(或视频)标签根本不加载资源,HTTP请求处于“待处理”状态

    我尝试使用以下方法在 Web 应用程序上加载资源时遇到一些问题img or videoHTML 标签 我在我的应用程序中使用 Angular 并动态设置src的参数img标签 使用ng src src 指示 没有那么多图像和资源需要加载 在

随机推荐

  • git配置以及git-cola使用教程

    git安装 打开终端 xff0c 输入sudo apt get install git git配置 配置用户名 git config global user name 34 user name 34 配置邮箱 git config glob
  • C++ 手撸简易服务器

    本文使用上一期写的反射类 xff0c 另外我发现 lt WinSock2 h gt 这个头文件里有RegisterClass 这个结构 xff0c 还有typedef RegisterClass RegisterClassW这句话 这都能重
  • STM32CubeMX实战教程(一)——软件入门

    软件入门 前言新建工程界面简介MCU外设配置时钟树工程设置工具生成代码代码分析main cgpio cstm32f4xx it c 程序下载现象 结语 前言 STM32Cube 是一个全面的软件平台 xff0c 包括了ST产品的每个系列 平
  • STM32F4 | 定时器中断实验

    文章目录 一 STM32F429 通用定时器简介二 硬件设计三 软件设计四 实验现象五 STM32CubeMX 配置定时器更新中断功能 这一章介绍如何使用 STM32F429 的通用定时器 xff0c STM32F429 的定时器功能十分强
  • 相机标定和ORBSLAM2/VINS测试

    目录 一 相机标定1 1 标定目的1 2 常见模型介绍1 2 1 相机模型1 2 2 畸变模型 1 3 双目标定1 3 1 常见标定工具及对应使用场景1 3 2 Kalibr标定1 3 3 opencv双目标定1 3 4 basalt标定
  • matlab安装教程

    MATLAB xff08 矩阵实验室 xff09 是MATrix LABoratory的缩写 xff0c 是一款由美国The MathWorks公司出品的商业数学软件 MATLAB是一种用于算法开发 数据可视化 数据分析以及数值计算的高级技
  • 软件工程结构化分析

    需求分析的概念 需求分析是软件定义时期的最后一个阶段 xff0c 它的基本任务是准确的回答 系统必须做什么 这个问题 也就是对目标系统提出完整 准确 清晰 具体的要求 在需求分析阶段结束之前 xff0c 系统分析员应该写出软件需求规格说明书
  • 树莓派忘记密码 vnc登陆显示‘No configured security type is supported by 3.3 viewer’的问题解决办法

    树莓派忘记密码以及部署VNC 1 修改密码 需求你的树莓派有屏幕 xff0c 没有屏幕的可以百度其他解决方案了一把键盘 树莓派吃灰了很久 xff0c 最近由于有新的需求 xff0c 就拿出来玩耍一下 首先是第一个问题 xff0c 如何查看i
  • imx6ull 正点原子设备树适配韦东山的开发板 (一)顺利启动,配置led,button

    设备树在公司经常用到 有时候很多驱动编写也就是替换设备树 所以拿韦老师的板子练手设备树 这次尝试直接拿正点的设备书改成韦老师的板子能用 对比 正点原子的设备树结构图 韦东山的设备树结构图 从因为蓝色的是开发板厂商对开发板自己的优化 所以我们
  • 一文了解目标检测边界框概率分布

    一文了解目标检测边界框概率分布 概率建模 众所周知 xff0c CNN的有监督学习通常是建立在给定训练数据集之上的 xff0c 数据集的标签 也称为GT xff0c 决定了人类期望模型学习的样子 它通过损失函数 优化器等与CNN模型相连 因
  • Kalibr安装教程

    系统 xff1a Ubuntu18 04 首先 xff0c 需要安装好gcc g 43 43 cmake ros xff0c 如果没有 xff0c 可使用如下命令一键安装 sudo apt get install gcc g 43 span
  • 程序员:每一份不忘初心的情怀, 都是对技术的追求

    1 真正的情怀 xff0c 是从不矫情 这几年 情怀 大约快成了贬义 创业讲情怀 xff0c 产品讲情怀 xff0c 好像没点情怀都不好意思出门见人 我们曾经充满热情 xff0c 是一位开源软件倡导者 xff0c 我们崇尚全栈工程师才有未来
  • HTML代码简写方法

    原文链接 xff1a HTML代码简写方法 大写的E代表一个HTML标签 1 E 代表HTML标签 2 E id 代表id属性 3 E class 代表class属性 4 E attr 61 foo 代表某一个特定属性 5 E foo 代表
  • Git远程分支

    远程分支 远程分支是位于远程仓库的分支 xff0c 我们通常会用远程分支来更新本地分支 xff0c 然后在本地进行修改 xff0c 最后将修改的结果同步到远程分支上 除此之外 xff0c 我们还需要搞清楚远程跟踪分支和跟踪分支的概念 远程跟
  • STM32F4 | PWM输出实验

    文章目录 一 PWM 简介二 硬件设计三 软件设计四 实验现象五 STM32CubeMX 配置定时器 PWM 输出功能 上一章 xff0c 我们介绍了 STM32F429 的通用定时器 TIM3 xff0c 用该定时器的中断来控制 DS1
  • 基于大疆RM3508电机的串级PID(角度环+速度环)

    1 前言 最近参加ROBOCON xff0c 我负责编写传球机器人 xff0c 由于传球机构需要一个电机转固定角度来带动球 xff0c 所以便用大疆3508电机通过串级PID来实现 xff0c 不得不说3508电机还是真的强 xff0c 先
  • ROS三种通信方式之服务通信

    一 服务通信的理论模型 服务通信也是ROS中一种极其常用的通信模式 xff0c 服务通信是基于请求响应模式的 xff0c 是一种应答机制 也即 一个节点A向另一个节点B发送请求 xff0c B接收处理请求并产生响应结果返回给A 就像是服务器
  • 滑模控制理论(SMC)

    滑模控制理论 Sliding Mode Control SMC 滑膜控制理论是一种建立在现代控制理论基础上的控制理论 xff0c 其核心为李雅普诺夫函数 xff0c 滑膜控制的核心是建立一个滑模面 xff0c 将被控系统拉倒滑模面上来 xf
  • ROS OpenRAVE 常用逆解库 ikfast (应用于UR机械臂)

    ArmKine cpp include 34 armKine h 34 include lt math h gt include lt stdio h gt include lt corecrt math defines h gt defi
  • Fast and High Quality Image Denoising via Malleable Convolution阅读笔记

    论文 xff1a Fast and High Quality Image Denoising via Malleable Convolution arXiv xff1a https arxiv org abs 2201 00392 Abst