FMR-NET:用于弱光图像增强的快速多尺度残差网络(已更新三类预训练模型)

本文主要是介绍FMR-NET:用于弱光图像增强的快速多尺度残差网络(已更新三类预训练模型),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

之前上传的代码存在一定问题,目前已重新更新并上传了三类新的预训练模型供大家使用

paper     Github     CSDN下载

动机:

不按摘要来形式来写,本文的动机在于一个,减少模型参数量,加快运行速度,以及取得还不错的效果。因此,就存在两个方面的技术问题:第一,如何降低参数量;第二,如何降低内存访问的次数(这个观点从FasterNET就可以看出,很多文章也在提这个点);第三,如何取得还不错的增强效果。

因此,我自己思考的是两个:第一个是输入通道的通道数量应该小(特征冗余很多;相较于FasterNet的局部卷积;直接减少通道感觉也行);第二个在于特征提取的能力必须很强(1.基本会使用大量残差,但是残差其实是加大了内存访问次数的,因此也不能太多;2.必须加入多尺度的环节,但是许多的多尺度卷积会增大整个网络的复杂度);第三个是推理速度的问题(合理的残差结构和通道叠加,拓扑推理速度会很快)

所以,我们提出了如下的网络结构:

网络结构

对于整个网络而言,最关键的技术,在于MRB这个模块的构建。因此我们后面做了消融实验去验证它。首先,这个模块有两类思想:1.特征叠加的思想。单一通道的并联操作,在拓扑推理中运行速度是按照推理计算最大的卷积核为标准的,因此可以并联许多不同类型的核;2.双重的残差设计。具体可以看一下原文。

为了尽可能地轻量化,我们做了一个非常简略的通道注意力模块,同时,在MMFF-NET这篇文章中,虽然利用特征点成作增亮效果更好;但是为了更加迅速,Zero-DCE的操作蚕食FLOPs最小的。因此我们还是使用的这类策略。

整个网络非常简单,非常方便训练和改造,也非常方便大家部署+即插即用。

展示效果:

我们全新的代码中,提供了3类全新的预训练模型。分别是使用LOL,FiveK(艺术家C)和LOL+FiveK,三个版本。具体效果如下:

原图如下:

三类预训练的效果其实都还不错。主要看您针对于什么模型。如果您需要自己训练模型,直接使用自己的有监督学习数据集即可。

对比实验

实验部分我们做了两类实验。一个是MRB的消融实验。这里的消融实验我感觉更多是做的模块性能的一个对比试验。在这里我们比较了不同常用多尺度模块的性能,并且使用PSNR/SSIM比较了谁更牛逼。(肯定是我们的模块最好了=_=)同时我们还和其他算法进行了比较。

欢迎引用我的算法+代码:

感谢各位的支持。

Chen, Yuhan, et al. "FMR-Net: a fast multi-scale residual network for low-light image enhancement." Multimedia Systems 30.2 (2024): 73.

这篇关于FMR-NET:用于弱光图像增强的快速多尺度残差网络(已更新三类预训练模型)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

MySQL追踪数据库表更新操作来源的全面指南

《MySQL追踪数据库表更新操作来源的全面指南》本文将以一个具体问题为例,如何监测哪个IP来源对数据库表statistics_test进行了UPDATE操作,文内探讨了多种方法,并提供了详细的代码... 目录引言1. 为什么需要监控数据库更新操作2. 方法1:启用数据库审计日志(1)mysql/mariad

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

MybatisX快速生成增删改查的方法示例

《MybatisX快速生成增删改查的方法示例》MybatisX是基于IDEA的MyBatis/MyBatis-Plus开发插件,本文主要介绍了MybatisX快速生成增删改查的方法示例,文中通过示例代... 目录1 安装2 基本功能2.1 XML跳转2.2 代码生成2.2.1 生成.xml中的sql语句头2

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re