CONTROLLING VISION-LANGUAGE MODELS FOR MULTI-TASK IMAGE RESTORATION

CONTROLLING VISION-LANGUAGE MODELS FOR MULTI-TASK IMAGE RESTORATION (Paper reading)

Ziwei Luo, Uppsala University, ICLR under review(6663), Cited:None, Stars: 350+, Code, Paper.

1. 前言

像CLIP这样的视觉语言模型已经显示出对零样本或无标签预测的各种下游任务的巨大影响。然而,当涉及到图像恢复等低水平视觉时,由于输入损坏,它们的性能会急剧下降。在本文中,我们提出了一种退化感知视觉语言模型(DA-CLIP),以更好地将预训练的视觉语言模型转移到低级视觉任务中,作为图像恢复的多任务框架。更具体地说,DA-CLIP训练一个额外的控制器,该控制器调整固定的CLIP图像编码器以预测高质量的特征嵌入。通过交叉关注将嵌入集成到图像恢复网络中,我们能够引导模型学习高保真度图像重建。控制器本身还将输出与输入的实际损坏相匹配的退化特征,从而为不同的退化类型生成自然分类器。此外,我们构建了一个具有合成字幕的混合退化数据集,用于DA-CLIP训练。我们的方法在退化特定和统一的图像恢复任务上都取得了最先进的性能,显示了用大规模预训练的视觉语言模型促进图像恢复的有前途的方向。

2. 整体思想

ALL in one的图像复原模型,可以用分类器对不同输入图像做分类,然后分类得到的一些输出作为条件来指导One这个模型对特定类型任务复原。这篇文章的思想也是一样的。他们使用类似于ControlNet的方法,对CLIP做微调,使CLIP可以根据输入LQ图像,得到HQ的内容编码和预测LQ的降质类型编码。这两个编码作为其他模型的条件实现All in one。思想是很老旧的,方法也是ControlNet的,但是确实work。具体的其他疑问见第6小节。

3. 介绍

在这里插入图片描述
现有的大规模预训练的视觉语言模型(VLM)对图像恢复(IR)等low-level视觉任务的影响有限,可能是因为它们没有捕捉到“模糊”和“噪声”等图像退化类型之间的细粒度差异。因此,现有的VLM经常使图像特征与退化文本不对齐。这并不奇怪,考虑到VLM通常在不同的网络规模数据集上进行训练,而大多数图像恢复模型是在相对较小的数据集上训练的,这些数据集是为特定任务策划的,没有相应的图像-文本对

传统图像恢复方法通常只是简单地学习逐像素生成图像,而不利用任务知识,这通常需要对特定退化类型的同一模型进行重复训练。然而,最近的一项工作集中在统一图像恢复上,在混合退化数据集上训练单个模型,并隐式地对恢复过程中的退化类型进行分类。虽然结果令人印象深刻,但它们仍然局限于少数退化类型和与之相关的特定数据集。特别是,它们没有利用VLM中嵌入的大量信息。

在本文中,我们将大规模预训练的视觉语言模型CLIP与图像恢复网络相结合,提出了一个可应用于退化特定和统一图像恢复问题的多任务框架。具体来说,为了解决损坏的输入和干净的captions之间的特征不匹配问题,我们提出了一种图像控制器(Image Controller),该控制器调整VLM的图像编码器,以输出与干净的caption对齐的高质量(HQ)内容嵌入。同时,控制器本身也预测退化嵌入以匹配真实退化类型。这种新的框架,我们称之为退化感知CLIP(DA-CLIP),将VLM的人类级知识融入到通用网络中,从而提高图像恢复性能并实现统一的图像恢复。

为了训练DA-CLIP从低质量(LQ)输入中学习高质量特征和退化类型,我们为十个不同的图像恢复任务构建了一个大型混合退化数据集。具体来说,我们使用BLIP,一个自举的视觉语言框架,为所有HQ图像生成合成字幕,然后将LQ图像与字幕和相应的退化类型匹配为图像-文本退化对。一旦经过训练,我们的DA-CLIP就可以准确地对十种不同的退化类型进行分类,并可以很容易地集成到现有的恢复模型中,帮助在不同的退化中产生视觉上吸引人的结果,如图1所示。

4. 方法

在这里插入图片描述

4.1 退化感知CLIP( DA-CLIP)

我们方法的核心是控制预训练的CLIP模型,以从损坏的图像中输出高质量的图像特征,同时预测退化类型。如图2所示,图像内容嵌入 e c I e^I_c ecI与干净的标题嵌入 e c T e^T_c ecT相匹配。此外,由控制器预测的图像退化嵌入 e d I e^I_d edI指定输入的损坏类型,即来自文本编码器的相应退化嵌入 e d T e^T_d edT。然后可以将这些特征集成到其他图像恢复模型中,以提高它们的性能。

我们原本的CLIP是清晰图像匹配本文,但是你现在输入的是损坏图像,这就会导致你的潜在图像内容无法正确匹配GT文本,这里用Image Controller对CLIP的图像编码器微调,使之适应损坏图像。此外,你CLIP的额外输入还有一个降质类型,这个是Image Controller来额外预测的。

4.2 Image Controller

在这里插入图片描述

图像控制器是CLIP图像编码器的副本,但使用一些零初始化连接进行包装,以向编码器添加控制。它操纵所有编码器块的输出以控制图像编码器的预测。在本文中,我们使用ViT作为编码器和控制器的默认主干。图3(a)说明了控制过程,其中控制器的输出由两部分组成:图像退化嵌入 e d I e_d^I edI和隐藏控件 h c h_c hc。注意,后者包含来自变换器块的所有输出,这些输出随后被添加到相应的编码器块以控制它们的预测。变换器块之间的连接是简单的密集神经网络,所有参数都初始化为零,这在训练过程中逐渐影响图像编码器。由于与VLM中使用的网络规模数据集相比,我们的训练数据集很小,因此这种控制策略在保持原始图像编码器能力的同时减轻了过拟合。

我们冻结预训练的CLIP模型的所有权重,只微调图像控制器。为了使退化嵌入空间具有判别性和良好的分离性,我们使用对比目标来学习嵌入匹配过程。设N表示训练批中成对嵌入(来自文本编码器和图像编码器/控制器)的数量。对比损失定义为:

在这里插入图片描述

然后为了优化内容和降质嵌入,我们使用以下共同目标:
L c ( w ) = L c o n ( e c I , e c T ; w ) + L c o n ( e d I , e d T ; w ) L_c(w) = L_{con}(e^I_c, e^T_c;w) + L_{con}(e^I_d, e^T_d;w) Lc(w)=Lcon(ecI,ecT;w)+Lcon(edI,edT;w)
这个损失函数的意思就是,先让CLIP的文本编码器对GT描述和降质类型编码得到 e c T e_c^T ecT e d T e_d^T edT,然后图二中的输入LQ得到输出 e c I e_c^I ecI e d I e_d^I edI。他们做对比学习进行对齐,就可以实验LQ输入匹配HQ的captions和types的编码。

4.3 DA-CLIP用于图像复原

在这里插入图片描述

简单介绍下IR- SDE,它是一个专用于复原的扩散模型,对于不同任务都需要从头训练一个特定的模型。主要思想和这篇文章一模一样,但是IR- SDE更早点。

我们使用IR-SDE(如上图)作为图像恢复的基本框架。它采用了类似于DDPM的U-Net架构,但删除了所有自注意层。为了将干净的内容嵌入注入扩散过程,我们引入了一种交叉注意力机制,从预先训练的VLM中学习语义指导。考虑到图像恢复任务中输入大小的变化以及将注意力应用于高分辨率特征的成本的增加,为了提高样本效率,我们只在U-Net的底部块中使用交叉注意力。

另一方面,预测的退化嵌入对于统一图像恢复是有用的,其中目标是用单个模型处理多种退化类型的低质量图像。如图1所示,我们的DA-CLIP准确地对不同数据集和各种退化类型的退化进行了分类,这对于统一的图像恢复至关重要。此外,为了利用这些退化嵌入,我们将它们与即时学习模块相结合,以进一步改进结果,如图3(b)所示。这里的prompt应该就是content embedding

5. 实验

·数据集的选择
在这里插入图片描述


·benchmark数据集上的对比
在这里插入图片描述


·可视化实验
在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

6. 讨论

这篇文章好像就做了这么个事:找到一个图像复原的模型,LQ编码并加在crossattn中,从头训练这个模型。审稿意见请看这里。

CLIP是否有必要?或者说直接用分类器是否可以?或者content有用吗?
在这里插入图片描述
这是作者的消融实验,其实Content对性能影响不大我感觉,因为你的模型只需要根据不同的conditions调用参数完成特定任务就可以了,degradation embedding已经可以做到分类不同任务了,而且你的模型以及不是生成模型了,content确实是多余,在消融实验中LPIPS和FID的提升简直微不足道。此外,degradation embedding是否有必要呢?分类器不可以吗?如果用CLIP没必要,那就相当于作者什么也没做。。

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

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

相关文章

AutoDIR: Automatic All-in-One Image Restoration with Latent Diffusion

AutoDIR: Automatic All-in-One Image Restoration with Latent Diffusion (Paper reading) Yitong Jiang, The Chinese University of Hong Kong, arXiv23, Code, Paper 1. 前言 我们提出了一种具有潜在扩散的一体化图像恢复系统,名为AutoDIR,它可以…

西南科技大学信号与系统A实验三(线性连续时间系统的分析)

一、实验目的 1.掌握用 matlab 分析系统时间响应的方法 2.掌握用 matlab 分析系统频率响应的方法 3.掌握系统零、极点分布与系统稳定性关系 二、实验原理 1. 系统函数 H(s) 系统函数:系统零状态响应的拉氏变换与激励的拉氏变换之比. H(s)=R(s)/E(s) 在 matlab 中可采用…

图片伪装,将RAR文件隐藏到图片里

下载链接 效果图: 代码: ECHO OFF TITLE PtoR MODE con COLS55 LINES25 color 0A:main cls echo.当前时间:%date% %time% echo.欢迎使用图片伪装,本脚本可以将RAR文件隐藏到图片里. echo.set /p "imagefile①请拖入图像文件…

数据仓库数据管理模型

数据仓库分为贴源层、数据仓库层、数据服务层,有人叫做数仓数据模型,或者叫"数据管理模型”。 我们为什么要进行数据分层管理,下图的优点介绍已经说得比较明确,再补充几点: 保障数据一致性:上层的数…

最简单的Python程序员编辑器——学习Python的第二篇

第二章 基础 安装python 按照上一期的教程安装,如果有什么问题可以提出阿莱 安装完之后,在电脑的程序中查找SHELL 这里是Win10,win11你也是到程序菜单查找。 你可以把把它点击右键,保存到桌面上,或者固定到开始菜单…

数组元素积的符号

数组元素积的符号 描述 : 已知函数 signFunc(x) 将会根据 x 的正负返回特定值: 如果 x 是正数,返回 1 。如果 x 是负数,返回 -1 。如果 x 是等于 0 ,返回 0 。 给你一个整数数组 nums 。令 product 为数组 nums 中所有元素值的…

leetcode 283. 移动零

代码&#xff1a; class Solution {public void swap(int[] nums,int m,int n){int tmpnums[m];nums[m]nums[n];nums[n]tmp;}public void moveZeroes(int[] nums) {int cur0;int dest-1;int nnums.length;for(;cur<n;cur){if(nums[cur]!0){dest;swap(nums,cur,dest);}}} } …

数字系列——数字经济(2)​

上次呢&#xff0c;已经为大家捋了什么是数字经济&#xff1f;、数字经济的特点有哪些&#xff1f;和数字经济的构成&#xff0c;对于数字经济有了基础性的了解&#xff0c;今天继续为大家捋一捋。 数字经济的发展 1.互联网的普及 互联网作为数字经济的坚实基础&#xff0c;其…

香港身份、香港永居身份、香港护照区别,三种证件之间是什么关系?

香港身份、香港永居身份、香港护照区别&#xff0c;三种证件之间是什么关系&#xff1f; 在港“通常性”住满7年之后&#xff0c;可以申请永居身份&#xff01; 香港身份&#xff1a;也可以称之为临时身份&#xff0c;无论通过香港优才计划、高才通计划、专才计划或者留学拿身份…

基于QT的俄罗斯方块游戏设计与实现

基于QT的俄罗斯方块游戏设计与实现 摘要&#xff1a;信息时代正处于高速发展中&#xff0c;而电子游戏已经成为人生活中或不可少的消磨工具之一。科技时代在不断地高速发展中&#xff0c;游戏相关编程设计也随着发展变得越来越重要&#xff0c; 俄罗斯方块游戏是一款古老传遍世…

引领Serverless构建之路,亚马逊云科技re:Invent 2023首日主题演讲重磅发布

在每年的亚马逊云科技re:lnvent大会&#xff0c;由Peter DeSantis带来的《周一晚间直播》是re:lnvent大会的第一个并让人值得期待的主题演讲。作为亚马逊云科技高级副总裁&#xff0c;Peter发布了数据库和应用领域的三项Serverless创新&#xff0c;使客户能够更快、更轻松地扩展…

Java最难的语法<泛型>

时间过得很快&#xff0c;我们马上就进入了&#xff0c;Java最难语法的学习&#xff0c;加油吧&#xff01; 1.包装类 想要学好泛型就要了解包装类。 在Java中&#xff0c;由于基本类型不是继承自Object&#xff0c;为了在泛型代码中可以支持基本类型&#xff0c;Java给每个…

基于springBoot实现的学生成绩在线管理

一、系统架构 前端&#xff1a;html | js | css | jquery | bootstrap 后端&#xff1a;springboot | ibatis 环境&#xff1a;jdk1.7 | mysql | maven 二、代码及数据库 三、功能介绍 01. 登录页 02. 管理员-首页 03. 管理员-学生管理 04. 管理员-教师管理 05. 管理员-班级管…

任务管理流程及任务管理工具

Leangoo领歌是一款永久免费的专业的敏捷开发管理工具&#xff0c;提供端到端敏捷研发管理解决方案&#xff0c;涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo支持敏捷研发管理全流程&#xff0c;包括小型团队敏捷开发&#xff0c;规模化敏捷SAFe&#xff0c;Scr…

【LeetCode】每日一题 2023_11_29 无限集中的最小数字(哈希/堆)

文章目录 刷题前唠嗑题目&#xff1a;无限集中的最小数字题目描述代码与解题思路偷看大佬题解 结语 刷题前唠嗑 LeetCode&#xff1f;启动&#xff01;&#xff01;&#xff01; 今天的题目也比较的简单&#xff0c;因为数据量不大&#xff0c;所以什么做法都能过的去 题目&a…

主流之选!Galaxybase荣获工信部赛宝信创解决方案全国三等奖

喜报&#xff01;“创邻图智能方案”再获工信部官方认可&#xff01; 11月23日&#xff0c;由工业和信息化部电子第五研究所和中国通信企业协会联合主办的“第二届中国赛宝信息技术应用创新优秀解决方案征集活动”结果正式公布&#xff0c;创邻科技Galaxybase智能风控解决方案…

leetcode刷题详解十一

⭕️583. 两个字符串的删除操作 思路&#xff1a;核心代码就是最长公共子序列&#xff0c;但是需要注意的是结果 就是如果说公共子序列为0&#xff0c;则需要两个字符串长度的才行 如果有&#xff0c;就是 n m ∗ 2 d p [ n ] [ m ] nm*2dp[n][m] nm∗2dp[n][m] int minDist…

【LeetCode刷题】数组篇1

&#x1f387;数组简单题Part &#x1f308; 开启LeetCode刷题之旅 &#x1f308; 文章目录 &#x1f387;数组简单题Part&#x1f370;1.两数之和&#x1f451;思路分析1.暴力法2.哈希表法 &#x1f370;26.删除有序数组中的重复项&#x1f451;思路分析1.双指针2.利用vector…

Trapcode Suite 2024.0.2

Trapcode Suite是一款用于在After Effects中模拟和建模3D粒子和效果的软件。 该软件包包含11种不同的工具&#xff0c;可以帮助用户模拟火、水、烟、雪等粒子效果&#xff0c;以及创建有机视觉效果和3D元素。它还支持在AE与PR 2022插件&#xff0c;使得用户可以轻松地在后期制作…

11月第4周榜单丨飞瓜数据B站UP主排行榜(哔哩哔哩平台)发布!

飞瓜轻数发布2023年11月20日-11月26日飞瓜数据UP主排行榜&#xff08;B站平台&#xff09;&#xff0c;通过充电数、涨粉数、成长指数、带货数据等维度来体现UP主账号成长的情况&#xff0c;为用户提供B站号综合价值的数据参考&#xff0c;根据UP主成长情况用户能够快速找到运营…