当前位置: 首页 > news >正文

ECCV 2024前沿科技速递:GLARE-基于生成潜在特征的码本检索点亮低光世界,低光环境也能拍出明亮大片!

在计算机视觉与图像处理领域,低光照条件下的图像增强一直是一个极具挑战性的难题。暗淡的光线不仅限制了图像的细节表现,还常常引入噪声和失真,极大地影响了图像的质量和可用性。然而,随着ECCV 2024(欧洲计算机视觉会议)的盛大召开,一项名为GLARE的创新技术横空出世,为低光图像增强带来了前所未有的突破。

GLARE是一种新型的基于生成式隐层特征的码本检索的低光照增强网络,大量实验证明GLARE在多个基准数据集和真实数据上的卓越性能,以及GLARE在低光照目标检测任务中的有效性进一步验证了其在高层次视觉应用中的适用性。

(a)在LOL数据集上眩光显著优于SOTA方法。

(b)GLARE可以在LOL(上)和真实世界(下)图像上生成吸引人的结果。

相关链接

论文地址:https://arxiv.org/pdf/2407.12431

代码地址:https://github.com/LowLevelAI/GLARE

论文阅读

GLARE:通过基于生成潜在特征的码本检索进行低光图像增强

摘要

大多数现有的低光图像增强 (LLIE) 方法要么直接将低光 (LL) 映射到正常光 (NL) 图像,要么使用语义或照明图作为指导。然而,LLIE 的病态性质和从受损输入中进行语义检索的难度限制了这些方法,尤其是在极低光照条件下。

为了解决这个问题,我们通过基于生成性潜在特征的码本检索 (GLARE) 提出了一种新的 LLIE 网络,其中使用矢量量化 (VQ) 策略从未退化的 NL 图像中得出码本先验。更重要的是,我们开发了一个生成性可逆潜在正则化流 (I-LNF) 模块来将 LL 特征分布与 NL 潜在表示对齐,从而保证码本中的正确代码检索。此外,我们还设计了一种新颖的自适应特征转换 (AFT) 模块,该模块具有可供用户调整的功能,包括自适应混合块 (AMB) 和双解码器架构,可进一步提高保真度,同时保留码本先验提供的真实细节。

大量实验证实了 GLARE 在各种基准数据集和真实数据上的卓越性能。它作为低光物体检测任务中的预处理工具的有效性进一步验证了 GLARE 适用于高级视觉应用。

方法

除了引入外部 NL 码本来指导低光到正常光 (LL-NL) 映射之外,我们工作的创新之处还在于独特的可逆潜在归一化流 (I-LNF) 和自适应特征变换 (AFT) 模块,它们旨在最大限度地发挥 NL 码本先验的潜力并生成高保真度的真实结果。方法概览上图所示,训练可分为三个阶段。

  • 在第一阶段,我们在数千张清晰的 NL 图像上对 VQGAN 进行预训练,以构建全面的 VQ 码本。

  • 在第二阶段,利用 LL-NL 对训练 I-LNF 模块,实现 LL 和 NL 特征之间的分布变换。

  • 在第三阶段,使用包含固定 NL 解码器 (NLD)、自适应混合块 (AMB) 和多尺度融合解码器 (MFD) 的 AFT 模块来增强细粒度细节,同时保持码本带来的自然度。

效果

LOL、LOL-v2-real、LOL-v2-synthetic、SDSD-indoor和SDSD-outdoor数据集的定量比较。与目前的SOTA方法相比,我们的GLARE实现了卓越的性能。

基于LOL数据集的视觉比较。我们的方法可以有效地增强可见性,并产生具有视觉吸引力的结果。

llo-v2-real(上)和llo-v2-synthetic(下)数据集的视觉比较。以前的方法遭受严重的色彩失真或细节不足,而我们的眩光表现良好,没有这些问题。

对真实世界数据集的定量比较。这些结果可以从原始论文中获得,也可以使用其最佳LOL权重进行测试。↓:值越小表示质量越好。

对未配对的真实数据集进行跨数据集评估的可视化结果。这四幅图像分别来自DICM、LIME、MEF和NPE。我们的眩光产生更令人愉快的结果,没有噪音或伪影。

AFT对lol的目视消融结果。我们的带有AFT模块的眩光能够生成具有改进的边缘敏锐度和轮廓清晰度的结果,以及更丰富的细节纹理。

消融实验

ExDark数据集上基于增强的低光目标检测视觉对比与检测结果以往的增强方法在使用预处理模块进行对象检测时,都会遇到对象丢失的问题。相比之下,利用我们的眩光增强的图像使YOLO-v3能够以高置信度健壮地检测目标,并且我们增强的图像具有更好的视觉质量。

结论

针对低光照增强-LLIE,提出了一种名为 GLARE 的新方法。鉴于 LLIE 的不适定性所导致的不确定性和模糊性,我们利用使用 VQGAN 从清晰且曝光良好的图像中获得的正常光照码本来指导 LL-NL 映射。为了更好地挖掘码本先验的潜力,采用可逆潜在归一化流来生成与 NL 潜在表示对齐的 LL 特征,以最大化码向量在码本中正确匹配的概率。最后,引入具有双解码器架构的 AFT 模块,灵活地将信息提供给解码过程,从而进一步提高增强结果的保真度,同时保持感知质量。大量实验表明,我们的 GLARE 在 5 个配对数据集和 4 个真实世界数据集上的表现明显优于当前的 SOTA 方法。在低光物体检测方面的卓越性能使我们的 GLARE 成为高级视觉任务中的有效预处理工具。

相关文章:

ECCV 2024前沿科技速递:GLARE-基于生成潜在特征的码本检索点亮低光世界,低光环境也能拍出明亮大片!

在计算机视觉与图像处理领域,低光照条件下的图像增强一直是一个极具挑战性的难题。暗淡的光线不仅限制了图像的细节表现,还常常引入噪声和失真,极大地影响了图像的质量和可用性。然而,随着ECCV 2024(欧洲计算机视觉会议…...

前端低代码必备:FrontendBlocks 4.0版本重磅发布,助力Uniapp-X原生APP开发

项目介绍 本软件是一款强大的所见即所得前端页面设计器,是低代码开发领域的基础设施,生成的代码不依赖于任何框架,实测可以将前端布局工作的耗时减少80%以上,最关键的是,它实现了人人都可以写前端页面的梦想。 不用写…...

如何将PyCharm 中使用 PDM 管理的 Django 项目迁移到 VS Code 并确保一切正常工作?

嗨,我是兰若姐姐,相信很多小伙伴都遇到过这种情况,使用pycharm用习惯了,想换个编辑器,比如换成vscode,今天就告诉大家,如果轻松切换到vscode 步骤 1:在 VS Code 中打开项目 打开 V…...

认识Android Handler

“Android Handler” 通常指的是 Android 开发中的 Handler 类,它是 Android SDK 的一部分,用于管理消息队列和线程之间的通信。它在 Android 开发中非常有用,特别是在计划消息和可运行对象(Runnables)在未来某个时间点…...

如何在 Ubuntu VPS 上安装 Cassandra 并运行单节点集群

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 介绍 Cassandra,或者说 Apache Cassandra,是一个高度可扩展的开源数据库系统,在多节点设置上能够实…...

Golang | Leetcode Golang题解之第316题去除重复字母

题目&#xff1a; 题解&#xff1a; func removeDuplicateLetters(s string) string {left : [26]int{}for _, ch : range s {left[ch-a]}stack : []byte{}inStack : [26]bool{}for i : range s {ch : s[i]if !inStack[ch-a] {for len(stack) > 0 && ch < stack…...

pxe的实验

首先搭好实验环境、 如果没有安装好图形&#xff0c;则需要用yum groups list找到有“GUI”的然后用yum groups " " 把含有GUI的复制到双引号里安装 然后再执行init 5 打开图形 Kickstart 如果dnf用不了改成yum 然后在用yum install httpd -y 安装好http的软件 之后…...

复杂智能软件系统开发

软件开发技术总是伴随着计算技术的时代问题向前发展,随着智能计算时代的到来,软件界需要回应智能软件开发的问题。 大型机时代,软件开发的主要问题是软件开发的效率和质量问题,用机器指令或汇编语言编写软件,效率低、质量差。随着高级程序设计语言的出现及其自动编译技术…...

kickstart自动安装脚本

当安装Linux操作系统时&#xff0c;安装过程会需要回答很多关于设定的问题 这些问题必须手动选择&#xff0c;否则无法进行安装。当只安装1台Linux系统&#xff0c;手动选择设定工作量比较轻松&#xff0c;当安装多台Linux&#xff0c;这些设定需要重复多次&#xff0c;这些重复…...

linux运维一天一个shell命令之grep详解

一、概念 grep 是 Linux 和 Unix 系统中一个非常常用的命令行工具&#xff0c;用于搜索文本文件中的特定模式。它支持正则表达式&#xff0c;并能在文件中快速查找匹配的行 二、正则表达式 1.概念 正则表达式&#xff08;Regular Expressions&#xff0c;简称 regex 或 reg…...

COMSOL金属氢化物-放氢过程

在此记录下放氢过程的软件设置思路 1、采用的是"达西定律""层流" 物理场&#xff0c;其中"层流"物理场选择了”弱可压缩流动“&#xff0c;这里主要是选择”可压缩流动“的话&#xff0c;算出来的瞬时流量值跟实测差距太大了。 2、设置"达西…...

(四)软件性能测试

1. 性能测试包含的方法有哪些&#xff08;至少列举5种&#xff09;&#xff1f; 正确回答通过率&#xff1a;69.0%[ 详情 ] 推荐指数&#xff1a; ★★★★★ 试题难度&#xff1a; 中级 性能测试大致分为以下六类 1、验收性能测试&#xff1a; 通过模拟生产运行的业务压力量…...

萱仔大模型学习记录5-langchain实战

前面我的bertlora微调已经跑出了不错的结果&#xff0c;我也学会了如何在bert上使用Lora进行微调&#xff0c;我后续会补充一个医疗意图识别的项目于这个系列&#xff0c;现在这个医疗意图识别代码还暂时不准备公开。我就继续按照我的计划学习一番LangChain。 LangChain是一个用…...

安装使用netron

1.安装netron pip install netron2.使用以下命令,然后打开浏览器查看。 netron netron --host 0.0.0.0 --port 6780 netron "model_path" --host 0.0.0.0 --port 67803.在jupyterlab中使用 github有人推荐的方法&#xff0c;jupyterlab部署在本地的可以用…...

JDFrame 一款比 Java 8 Stream 更灵活的数据处理工具

一、JDFrame 介绍 在大数据处理领域&#xff0c;Apache Spark以其强大的分布式计算能力和丰富的数据处理API而广受好评。然而&#xff0c;在许多日常的软件开发场景中&#xff0c;我们面临的数据量可能并不需要Spark这样的分布式系统来处理。相反&#xff0c;我们更希望有一种…...

《Android系统开发中高级定制专栏导读》

《Android系统开发中高级定制专栏导读》 欢迎来到【Android系统开发中高级定制‘】专栏&#xff01;在这里&#xff0c;将深入探讨Android系统开发与定制的方方面面&#xff0c;涵盖从系统接口定制、权限管理、系统应用配置、驱动入门配置等多个领域。无论你是刚接触Android系…...

LeetCode 114. 二叉树展开为链表

更多题解尽在 https://sugar.matrixlab.dev/algorithm 每日更新。 组队打卡&#xff0c;更多解法等你一起来参与哦&#xff01; LeetCode 114. 二叉树展开为链表&#xff0c;难度中等。 DFS 解题思路&#xff1a;先用 DFS 遍历二叉树&#xff0c;将树的结果存放在 List 中&am…...

78.子集

给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 &#xff1a;总 // 注释的都为后来思考不必要的 class Solution {List<List<Integer…...

历史标签如何时间迁移?

本文解析的论文是&#xff1a; Lin, C.; Du, P.; Samat, A.; Li, E.; Wang, X.; Xia, J. Automatic Updating of Land Cover Maps in Rapidly Urbanizing Regions by Relational Knowledge Transferring from GlobeLand30. Remote Sens. 2019, 11, 1397. https://doi.org/10.33…...

Jenkins参数化构建

目录 一. 准备ansible 二. Gitlab新建子项目 三. Jenkins建立任务&#xff0c;进行初步配置 四. 导入nginx主机的公钥 五. 配置ansible执行脚本 六. 构建测试 一. 准备ansible 在jenkins主机中安装ansible [rootjenkins ~]# yum install -y epel-release [rootjenkins…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载&#xff0c;仅供自学使用&#xff0c;侵权必究&#xff0c;如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案

这个问题我看其他博主也写了&#xff0c;要么要会员、要么写的乱七八糟。这里我整理一下&#xff0c;把问题说清楚并且给出代码&#xff0c;拿去用就行&#xff0c;照着葫芦画瓢。 问题 在继承QWebEngineView后&#xff0c;重写mousePressEvent或event函数无法捕获鼠标按下事…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

GraphQL 实战篇:Apollo Client 配置与缓存

GraphQL 实战篇&#xff1a;Apollo Client 配置与缓存 上一篇&#xff1a;GraphQL 入门篇&#xff1a;基础查询语法 依旧和上一篇的笔记一样&#xff0c;主实操&#xff0c;没啥过多的细节讲解&#xff0c;代码具体在&#xff1a; https://github.com/GoldenaArcher/graphql…...

Python常用模块:time、os、shutil与flask初探

一、Flask初探 & PyCharm终端配置 目的: 快速搭建小型Web服务器以提供数据。 工具: 第三方Web框架 Flask (需 pip install flask 安装)。 安装 Flask: 建议: 使用 PyCharm 内置的 Terminal (模拟命令行) 进行安装,避免频繁切换。 PyCharm Terminal 配置建议: 打开 Py…...

车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...

高分辨率图像合成归一化流扩展

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 1 摘要 我们提出了STARFlow&#xff0c;一种基于归一化流的可扩展生成模型&#xff0c;它在高分辨率图像合成方面取得了强大的性能。STARFlow的主要构建块是Transformer自回归流&#xff08;TARFlow&am…...

关于 ffmpeg设置摄像头报错“Could not set video options” 的解决方法

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/148515355 长沙红胖子Qt&#xff08;长沙创微智科&#xff09;博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV…...