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

4K-Resolution Photo Exposure Correction at 125 FPS with ~8K Parameters

MSLTNet开源 | 4K分辨率+125FPS+8K的参数量,怎养才可以拒绝这样的模型呢?

错误的曝光照片的校正已经被广泛使用深度卷积神经网络或Transformer进行广泛修正。尽管这些方法具有令人鼓舞的表现,但它们通常在高分辨率照片上具有大量的参数数量和沉重的计算浮点运算(FLOPs)。

在本文中,作者提出了一个极轻量级(仅有约8K参数)的多尺度线性变换(MSLT)网络,该网络采用多层感知架构,可以在125帧每秒(FPS)的速度下,使用泰坦RTX GPU处理4K分辨率sRGB图像。

具体来说,提出的MSLT网络首先使用拉普拉斯金字塔技术将输入图像分解为高和低频层,然后依次通过像素自适应线性变换来纠正不同层,这种实现方式是通过高效的双边网格学习或1×1卷积来实现的。在两个基准数据集上的实验表明,作者的MSLT在照片曝光校正方面与最先进的水平相比具有高效性。大量的消融实验验证了作者的贡献的有效性。

代码:https://github.com/Zhou-Yijie/MSLTNet

1 Introduction

智能手机摄像头的普及使人们像摄影师一样捕捉日常生活场景。然而,快门速度、焦距光圈比和/或ISO值设置不准确可能导致捕捉到的照片曝光不正确,视觉质量下降。为了以视觉上可取的方式正确调整照片曝光,对于边缘设备开发高效的曝光校正方法至关重要。

在过去的几十年里,提出了低光增强方法和过曝校正方法来分别调整欠曝和过曝图像的亮度。然而,低光增强方法在矫正过曝图像时几乎无法实现,而过曝校正方法在矫正欠曝图像时则无法正常工作。

高动态范围(HDR)调色映射方法也可以在一定程度上调整内容的不正确曝光,但主要是通过在曝光不正确区域的局部细节增强以及动态范围减少来实现。最后,所有这些方法都不适合曝光校正,因为曝光校正需要在图像中的不正确曝光进行全局调整。

近年来,基于卷积神经网络(CNN)或Transformer的曝光校正方法或也出现了几种。例如,多尺度曝光校正(MSEC)使用拉普拉斯金字塔技术和UNet架构进行层次曝光校正。后来,[48]的工作利用局部颜色分布先验(LCDP)来定位和增强不正确曝光区域。

基于注意力的照明自适应Transformer(IAT)在Transformer架构下估计与图像信号处理器(ISP)相关的参数。尽管这些曝光校正的卷积神经网络或Transformer具有令人鼓舞的表现,但它们通常受到大量参数数量和计算成本的限制。

为了在提高模型效率的同时产生视觉上令人满意的结果,本文提出了一种极轻量级的多尺度线性变换(MSLT)网络,用于高分辨率图像曝光校正。具体来说,作者首先通过拉普拉斯金字塔技术将输入图像分解为高频和低频层,以实现从粗到细的曝光校正。然后作者设计简单的线性变换网络逐步校正这些层,消耗较少的参数数量和计算成本。对于低频层,作者采用双边网格学习(BGL)框架,在不良曝光和正确曝光图像对之间学习像素级仿射变换。

为了在BGL中学习上下文感知的变换系数,作者提出了一种无参数的上下文感知特征分解(CFD)模块,并将其扩展为多尺度仿射变换。对于高频层,作者通过两个通道的1×1卷积层简单地学习像素级校正Mask。

得益于使用多层感知(MLP)进行从粗到细的曝光校正,作者的最大网络MSLT++有8098个参数,只需要0.14G和3.67ms来处理一个的图像,使用RTX GPU。

作为比较,基于CNN的MSEC、LCDP和基于Transformer的IAT的参数数量分别为约7015K、约282K和约86.9K,对应的FLOPs/速度分别为73.35G/240.46ms、17.33G/507.67ms和22.96G/153.96ms。在两个基准数据集上的实验表明,作者的MSLTs在定量和定性方面都优于最先进的曝光校正方法。如图1所示,在ME数据集上的性能比较结果。

作者主要的贡献可以总结如下:

1. 开发了具有最多8098个参数的多尺度线性变换网络,在运行4K分辨率(3840X2160X3)图像时,最多可达到125 FPS,并具有有效的曝光校正性能。

2.为了加速多尺度分解,设计了一个双边网格网络(BGN)来像素级校正低频层的曝光。

3.通过使用通道级MLP而不是CNN或Transformer来实现BGN,以赋予作者的MSLTs较小的参数数量和计算成本。

4.提出了一种上下文感知特征分解(CFD)模块,用于在作者的BGN中学习层次变换系数,以实现有效的曝光校正。

2 Related Work

Image Exposure Correction Methods

曝光校正任务类似于低光图像增强、过曝校正和HDR调色映射等任务,但又有不同。据作者所知,MSEC是第一个基于深度学习的曝光校正方法。该方法将图像分解为高频和低频部分,并逐步校正曝光错误。然而,MSEC有超过700万个参数,在高分辨率图像上的效率不足。

Local Color Distributions Prior(LCDP)利用局部颜色分布来统一处理欠曝和过曝,大约有282K个参数,需要巨大的计算成本,17.33G FLOPs,处理一个1024X1024X3X3的图像。基于Transformer的照明自适应Transformer(IAT)有大约86.9K个参数,但在高分辨率图像上存在巨大的计算成本和缓慢的推理速度。

在本文中,作者提出了一种轻量级和高效的Multi-Scale Linear Transformation(MSLT)网络,其参数数量最多为8098个,并且可以在125 FPS的速度下运行,用于校正不正确的4K分辨率图像曝光。

Image Processing MLPs

在卷积神经网络(CNNs)和Transformer的繁荣之前,多层感知(MLPs)在视觉任务中起着重要的作用。MLP为基础的网络再次引起了研究人员注意,因为它们具有简单性。MLP-Mixer是一种纯粹基于MLP的网络,没有卷积或自注意力。后来,ResMLP被提出,它只使用线性层和GELU非线性。gMLP的工作利用具有gating的MLP来实现与Transformer在图像分类上相似的结果。Ding等人提出了一种再参数化技术来提高MLP在图像分类上的能力。最近开发的MAXIM是一种多轴MLP为基础的网络,用于通用图像处理任务。

在本文中,作者开发了一种非常高效的曝光校正网络,该网络主要利用通道MLPs(而不是空间MLPs)来全局感知图像的曝光信息。

Light-weight Image Enhancement Networks

为了追求轻量级和高效的模型,一种简单的方法是将模型应用于低分辨率输入,然后将输出放大到高分辨率。但高频细节会丢失。为此,Laplacian Pyramid分解被用来保留高频信息。另一种方法是学习一个近似算子,并将其应用于下采样输入,然后将这个算子应用于原始图像。这样的近似算子通常简单且高效。后来,这个近似洞察也被研究了,用于加速图像处理方法在图像增强、图像去雾和立体匹配等任务上的应用。

在本文中,作者设计了使用拉普拉斯金字塔技术和双边网格学习框架的轻量级和高效的图像曝光校正网络。与CNN和Transformer不同,作者的双边网格网络纯粹由通道MLP实现,消耗的参数和计算成本比CNN和Transformer少得多。

3 Proposed Method

Network Overview

Low-Frequency Layer Correction

照明信息主要存在于低频中,因此作者更关注低频层的有效曝光校正。受到在高效图像处理上的成功启发,作者采用双边网格学习来校正低频层的曝光。

如图2所示,作者的双边网格网络包含三个部分:

  1. 学习引导图;

  2. 估计仿射系数的双边网格;

  3. 系数变换。

如图3(a)所示,上下文感知特征是通过将原始特征通道乘以全局平均池化和全局标准池化计算的平均值和标准差得到的。作者将CFD扩展为一个层次化的特征分解(HFD)模块,通过将三个共享参数的CFD和SFE模块堆叠在一起,如图3(c)所示。

目标是学习一个16x16x72的仿射系数3D双边网格,其中每个12个通道表示一个3x4仿射矩阵。作者通过通道级的1x1卷积来实现层次化的特征分解(HFD)模块,以进行空间一致性和像素自适应亮度调整。在ReLU之前,三个共享参数的1x1卷积(如图3(c)所示),具有较少的参数数量和计算成本。

如图4所示的校正强度热图与输入图像 I 的上下文密切相关。这表明作者的MSLT确实实现了像素自适应的曝光校正。

 

 

 

在SICE上,作者的MSLTs与MSECs具有可比性能,但比IAT和FECNet稍逊一筹。然而,作者的MSLTs在效率方面优于所有比较方法,如表3所示。

在图6中,作者提供了ME数据集中的"Manor"和SICE数据集中的"Mountain"的校正图像,分别由比较方法生成。更多视觉比较结果可参见补充文件。

在过曝的"Manor"图像上,可以看出Zero-DCE,SCI,LPTN和Channel-MLP很难减弱曝光。作者的MSLTs在云、墙壁和草坪的细节上比LCDP和IAT更好。校正后的MSEC图像对比度过高,不够真实。在欠曝的"Mountain"图像上,作者的MSLTs在整体亮度和绿叶细节方面都优于其他方法。

 

 

 

在作者的MSLT+和MSLT++中,作者引入可学习3X3的卷积核,步长为2用于Laplacian金字塔分解中的下采样,以及步长为1的3X3卷积核 followed by 双线性插值用于Laplacian金字塔重构中的上采样。

相关文章:

4K-Resolution Photo Exposure Correction at 125 FPS with ~8K Parameters

MSLTNet开源 | 4K分辨率125FPS8K的参数量,怎养才可以拒绝这样的模型呢? 错误的曝光照片的校正已经被广泛使用深度卷积神经网络或Transformer进行广泛修正。尽管这些方法具有令人鼓舞的表现,但它们通常在高分辨率照片上具有大量的参数数量和沉…...

网络初识:局域网广域网网络通信基础

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、局域网LAN是什么?二、广域网是什么:三. IP地址四.端口号五.认识协议5.1五元组 总结 前言 一、局域网LAN是什么? 局域网…...

JVM之jps虚拟机进程状态工具

jps虚拟机进程状态工具 1、jps jps:(JVM Process Status Tool),虚拟机进程状态工具,可以列出正在运行的虚拟机进程,并显示虚拟机执 行主类(Main Class,main()函数所在的类)的名称&#xff0c…...

C++实现顺序栈的基本操作(扩展)

#include <stdio.h> typedef char ElemType; #define StackSize 100 /*顺序栈的初始分配空间*/ typedef struct { ElemType data[StackSize]; /*保存栈中元素*/int top; /*栈顶指针*/ } SqStack; void InitStack(SqStack &st) {st.top-1; } …...

用python写一个简单的爬虫

爬虫是一种自动化程序&#xff0c;用于从互联网上获取数据。它能够模拟人类浏览网页的行为&#xff0c;访问网页并提取所需的信息。爬虫在很多领域都有广泛的应用&#xff0c;例如数据采集、信息监控、搜索引擎索引等。 下面是一个使用Python编写的简单爬虫示例&#xff1a; …...

分布式追踪

目录 文章目录 目录自定义指标1.删除标签2.添加指标3.禁用指标 分布式追踪上下文传递Jaeger 关于我最后最后 自定义指标 除了 Istio 自带的指标外&#xff0c;我们还可以自定义指标&#xff0c;要自定指标需要用到 Istio 提供的 Telemetry API&#xff0c;该 API 能够灵活地配…...

make -c VS make -f

make 是一个用于构建&#xff08;编译&#xff09;项目的工具&#xff0c;它通过读取一个名为 Makefile 的文件来执行构建任务。make 命令有很多选项和参数&#xff0c;其中包括 -c 和 -f。 make -c&#xff1a; 作用&#xff1a;指定进入指定的目录并执行相应的 Makefile。 示…...

Unity 代码控制Color无变化

Unity中&#xff0c;我们给Color的赋值比较常用的方法是&#xff1a; 1、使用预定义颜色常量&#xff1a; Color color Color.white; //白色 Color color Color.black; //黑色 Color color Color.red; //红色 Color color Color.green; //绿色 Color color Color.blue; …...

【Erlang进阶学习】2、匿名函数

受到其它一些函数式编程开发语言的影响&#xff0c;在Erlang语言中&#xff0c;将函数作为一个对象&#xff0c;赋予其“变量”的属性&#xff0c;即为我们的匿名函数 或 简称 fun&#xff0c;它具有以下特性&#xff1a; &#xff08;匿名函数&#xff1a;不是定义在Erlang模…...

肖sir__mysql之视图__009

mysql之视图 一、什么是视图 视图是一个虚拟表&#xff08;逻辑表&#xff09;&#xff0c;它不在数据库中以存储形式保存&#xff08;本身包含数据&#xff09;&#xff0c;是在使用视图的时候动态生成。 二、视图作用 1、查询数据库中的非常复的数据 例如&#xff1a;多表&a…...

FPGA falsh相关知识总结

1.存储容量是128M/8 Mb16MB 2.有256个sector扇区*每个扇区64KB16MB 3.一页256Byte 4.页编程地址0256 5&#xff1a;在调试SPI时序的时候一定注意&#xff0c;miso和mosi两个管脚只要没发送数据就一定要悬空&#xff08;处于高组态&#xff09;&#xff0c;不然指令会通过两…...

升辉清洁IPO:广东清洁服务“一哥”还需要讲好全国化的故事

近日&#xff0c;广东物业清洁服务“一哥”升辉清洁第四次冲击IPO成功&#xff0c;拟于12月5日在香港主板挂牌上市。自2021年4月第一次递交招股书&#xff0c;时隔两年半&#xff0c;升辉清洁终于拿到了上市的门票。 天眼查显示&#xff0c;升辉清洁成立于2000年&#xff0c;主…...

Python自动化办公:PDF文件的分割与合并

我们平时办公中&#xff0c;可能需要对pdf进行合并或者分割&#xff0c;但奈何没有可以白嫖的工具&#xff0c;此时python就是一个万能工具库。 其中PyPDF2是一个用于处理PDF文件的Python库&#xff0c;它提供了分割和合并PDF文件的功能。 在本篇博客中&#xff0c;我们将详细…...

破解app思路

1.会看smali代码逻辑 一.快速定位关键代码 1.分析流程 搜索特征字符串 搜索关键 api 通过方法名来判断方法的功能 2.快速定位关键代码 反编译 APK 程序 AndroidManifest.xml>包名/系统版本/组件 程序的主 activity(程序入口界面) 每个 Android 程序…...

背景特效插件:Background Effects

...

36.位运算符

一.什么是位运算符 按照二进制位来进行运算的运算符叫做位运算符&#xff0c;所以要先将操作数转换成二进制&#xff08;补码&#xff09;的形式在运算。C语言的中的位运算符有&#xff1a; 运算符作用举例结果& 按位与&#xff08;and&#xff09; 0&00; 0&10; …...

C#异常处理-throw语句

throw语句是我们手动引发异常的一个语句。 在程序执行过程中&#xff0c;当某些条件不符合我们的要求时&#xff0c;那么我们就可以使用throw语句手动抛出异常&#xff0c;那么就可以在异常发生的地方终止当前代码块的执行&#xff0c;此时我们就可以把控制权传递给调用堆栈中…...

PlantUML语法(全)及使用教程-时序图

目录 1. 参与者1.1、参与者说明1.2、背景色1.3、参与者顺序 2. 消息和箭头2.1、 文本对其方式2.2、响应信息显示在箭头下面2.3、箭头设置2.4、修改箭头颜色2.5、对消息排序 3. 页面标题、眉角、页脚4. 分割页面5. 生命线6. 填充区设置7. 注释8. 移除脚注9. 组合信息9.1、alt/el…...

231204 刷题日报

21. 合并两个有序链表 单调栈没看懂&#xff0c;晚上回家再说吧 380. O(1) 时间插入、删除和获取随机元素 今天被接雨水钉在耻辱柱&#xff0c;找时间再看吧...

PTA 7-229 sdut-C语言实验- 排序

给你N(N<100)个数,请你按照从小到大的顺序输出。 输入格式: 输入数据第一行是一个正整数N,第二行有N个整数。 输出格式: 输出一行&#xff0c;从小到大输出这N个数&#xff0c;中间用空格隔开。 输入样例: 5 1 4 3 2 5输出样例: 1 2 3 4 5 #include <stdio.h>…...

【AI】短期记忆:会话上下文管理与实现

短期记忆&#xff1a;会话上下文管理与实现 &#x1f4dd; 本章学习目标&#xff1a;本章深入探讨记忆机制&#xff0c;这是AI Agent持续执行的关键能力。通过本章学习&#xff0c;你将全面掌握"短期记忆&#xff1a;会话上下文管理与实现"这一核心主题。 一、引言&a…...

3PEAK思瑞浦 TPA3532-VS1R MSOP8 运算放大器

特性 超低输入偏置电流: -在TA25C时最大士1pA(实验室测试限值) 安 -在-40C至125C(实验室测试限值)下&#xff0c;最大30皮 低输入失调电压:250V(最大值) 集成保护缓冲器&#xff0c;最大偏移电压为200V 低电压噪声密度:18nV/vHz(在1kHz时) 宽带宽:2.1MHz 供电电压:4.5V至16V(2.…...

汽车电子系统如何重构价值:从马力到算力的产业变革

1. 从马力到算力&#xff1a;汽车价值创造的核心迁移十年前&#xff0c;如果你问一个车迷&#xff0c;一辆好车的灵魂是什么&#xff0c;答案多半会指向引擎盖下的那台机器——它的排量、气缸数&#xff0c;以及最终输出的马力。那个时代&#xff0c;机械性能是绝对的王者&…...

Spratt Skills:基于LLM规划与代码执行的OpenClaw家庭自动化架构实践

1. 项目概述&#xff1a;Spratt Skills&#xff0c;一个为OpenClaw打造的家庭自动化基础设施套件 如果你正在使用OpenClaw&#xff0c;并且已经厌倦了让LLM&#xff08;大语言模型&#xff09;去处理那些它天生就不擅长的事情——比如定时发送消息、轮询航班状态、或者可靠地写…...

软件设计师下午题训练1-3题 练习真题训练10

一、2019下1、问题1E1:帮买顾问E2:车辆交易系统E3:物流商2、问题2D1:线索表D2:订单表D3:路线表D4:合约表D5:物流商表3、问题3数据流 起点 终点物流信息 P5 …...

一图定胜负|虎贲等考 AI 科研绘图:零代码画出期刊级学术图,让论文颜值与专业度双在线

据 Nature 统计&#xff0c;超 90% 的审稿人先看图表&#xff0c;65% 的初审意见直接来自图表质量&#xff0c;一张规范、清晰、专业的学术图&#xff0c;直接影响论文录用与答辩评分。可现实是&#xff1a;Origin、Visio 难学难精通&#xff0c;PPT 做图粗糙不规范&#xff0c…...

Excel数据同步ERP/CRM太麻烦?一个Python脚本搞定多系统自动填充(基于GoBot)

Excel数据同步ERP/CRM太麻烦&#xff1f;一个Python脚本搞定多系统自动填充&#xff08;基于GoBot&#xff09; 每次月底看着财务同事在ERP系统里逐条录入Excel数据&#xff0c;市场部同事又在CRM里重复同样的操作&#xff0c;这种低效场景你一定不陌生。数据在不同系统间的孤岛…...

弯曲波触觉反馈技术:为触摸屏注入真实按键手感的工程实践

1. 项目概述&#xff1a;当触摸屏需要“手感”在2012年&#xff0c;如果你告诉一个家电设计师&#xff0c;未来的微波炉、冰箱或烤箱面板将是一块完全平整、没有任何物理凸起的玻璃或塑料板&#xff0c;他可能会皱起眉头。因为这意味着用户将失去最直接的交互反馈——那个“咔哒…...

生成式AI破解基因型-表型关联:AIPheno项目实战解析

1. 项目概述&#xff1a;当生成式AI遇见基因表型 如果你在生物信息学或者遗传育种领域工作&#xff0c;最近几年一定被“基因型-表型关联”这个老大难问题折磨过。我们手里有海量的基因组测序数据&#xff08;基因型&#xff09;&#xff0c;也积累了大量的生物体性状数据&…...

构建第二大脑的实战框架:Obsidian模板如何实现知识管理效率倍增

构建第二大脑的实战框架&#xff1a;Obsidian模板如何实现知识管理效率倍增 【免费下载链接】obsidian-template Starter templates for Obsidian 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-template 在信息过载的时代&#xff0c;知识工作者面临的核心挑战…...