暗光增强——Zero-DCE网络推理测试

news2025/1/21 22:09:44

目录

  • 一、Zero-DCE方法
    • 1.1 网络优点
    • 1.2 网络适用场景
    • 1.3 网络不适用场景
  • 二、源码包
  • 三、测试
  • 四、测试结果
  • 五、推理速度
  • 六、总结

一、Zero-DCE方法

Zero-DCE(Zero-Reference Deep Curve Estimation)是一种用于低光照增强的网络。

1.1 网络优点

无需参考数据:Zero-DCE 不需要任何配对或非配对的数据进行训练,这避免了过拟合的风险。

轻量级网络:Zero-DCE 使用了一个轻量级的网络(DCE-Net)来预测一个像素级的,高阶的曲线。

实时运行:Zero-DCE 的推理速度极快,甚至可以在手机上实时运行。

优秀的增强效果:Zero-DCE 的提亮效果优于其他方法,训练速度和推理速度更是冠绝一方。

1.2 网络适用场景

低光照图像增强:Zero-DCE 是为低光照图像增强设计的,因此它在这个场景下表现得非常好。

实时图像处理:由于 Zero-DCE 的推理速度非常快,它可以用于需要实时图像处理的应用,如手机摄像头、实时视频流等。

数据少的情况:由于 Zero-DCE 不需要任何配对或非配对的数据进行训练,所以它适合于数据少的情况。

1.3 网络不适用场景

高光照图像增强:Zero-DCE 主要是为低光照图像增强设计的,因此它可能不适合高光照图像增强的场景。

需要精确色彩再现的应用:虽然 Zero-DCE 能够提高图像的亮度,但它可能会改变图像的色彩。因此,对于需要精确色彩再现的应用,如医学图像处理、艺术作品修复等,Zero-DCE 可能不是最佳选择。

二、源码包

这里给出官网地址和我自己的源码包,我在官网基础上没修改多少代码。

官网下载:Zero-DCE

我提供的源码包:添加链接描述,提取码:ttzn

论文地址:论文

下载解压后的样子如下:

在这里插入图片描述

官网提供的模型权重在snapshots路径下:

在这里插入图片描述

三、测试

在运行脚本前要先在测试集文件夹同级目录下的result文件夹中创建和测试集文件夹名一样的空文件夹,用与存放测试结果。如下:

在这里插入图片描述

然后在test_data文件夹中的各个文件夹中放入自己低分辨率的图片即可运行脚本,如下:

在这里插入图片描述

测试脚本我分了两个,一个是GPU推理,一个是CPU推理,如下,都加有推理测试时间的代码:
在这里插入图片描述

四、测试结果

测试结果自动保存到data\resul文件夹下。

下面是部分测试场景,左图为暗光图,右图为Zero-DCE模型增强后的结果:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、推理速度

我自己电脑处理器为:12th Gen Intel® Core™ i7-12700H 2.30 GHz,显卡为Nvidia GeForce RTX 3050。

测试图像的分辨率640*480左右。

GPU平均推理速度为:2ms/fps。

在这里插入图片描述

CPU平均推理速度为:2980ms/fps。

在这里插入图片描述

六、总结

以上就是Zero-DCE网络推理测试的过程,注意该网络的适用情况。后续还会出其它暗光增强算法,从多角度对比不同算法处理的结果。

总结不易,多多支持,谢谢!

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

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

相关文章

华为商城秒杀时加密验证 device_data 的算法研究

前言 之前华为商城放出 Mate60 手机时, 想给自己和家人抢购一两台,手动刷了好几天无果后,决定尝试编写程序,直接发送 POST 请求来抢。通过抓包和简单重放发送后,始终不成功。仔细研究,发现 Cookie 中有一个名为 devic…

提升效率:使用注解实现精简而高效的Spring开发

IOC/DI注解开发 1.0 环境准备1.1 注解开发定义bean步骤1:删除原XML配置步骤2:Dao上添加注解步骤3:配置Spring的注解包扫描步骤4:运行程序步骤5:Service上添加注解步骤6:运行程序知识点1:Component等 1.2 纯注解开发模式1.2.1 思路分析1.2.2 实现步骤步骤1:创建配置类…

基于ssm的教师上课系统+vue论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

117基于matlab的短时傅里叶变换(STFT)、小波变换(WT)、同步压缩变换(SST)、瞬态提取变换(TET)进行时频分析

基于matlab的短时傅里叶变换(STFT)、小波变换(WT)、同步压缩变换(SST)、瞬态提取变换(TET)进行时频分析。程序已调通,可直接运行。 117时频分析短时傅里叶变换 (xiaohong…

eve环境虚拟机和电脑如何传送文件

一.桥接 (实现电脑和虚拟机在同一网段) 虚拟机上网盘设置 二.属性---文件共享设置 1打开属性,点击共享 2.添加共享人为全部人,并修改权限为读写模式 3.点击高级共享,选定此文件夹 4.点击网络和共享中心,划…

c语言:把二维数组降至一维|练习题

一、题目 把二维数组降为一围数组 如图&#xff1a; 二、代码截图【带注释】 三、源代码【带注释】 #include <stdio.h> int main() { int arr2[3][3];//设置二维数组 int arr1[10];//设置一维数组 int z0;//一维数组自增量 printf("输入一个二维数…

【源码】-MyBatis-如何系统地看源码

写在前面 前段时间做过一个项目&#xff0c;期间用到了动态数据源dynamic-datasource&#xff0c;经历了dbcp2的数据库连接池没有生效到排查定位、MyBatis多种数据库产品兼容、手写MyBatis拦截器等事情。 花费了好久&#xff0c;一直在打磨这篇文章&#xff08;不知道花费这么长…

DevEco Studio4.0 Beta2集成ArkUI-X(开发鸿蒙,安卓.ios应用)/ACE Tools脚手架

ArkUI-X简介 ArkUI-X进一步将ArkUI扩展到了多个OS平台&#xff1a;目前支持OpenHarmony、HarmonyOS、Android、 iOS&#xff0c;后续会逐步增加更多平台支持。开发者基于一套主代码&#xff0c;就可以构建支持多平台的精美、高性能应用 该框架对应的IDE版本为 4.0 Beta2 &…

代码随想录刷题 | Day1

今日学习目标 一、基础 数组 array类 模板类vector 数组是存放在连续内存空间上的相同类型数据的集合。 数组可以方便的通过下标索引的方式获取到下标下对应的数据。 需要两点注意的是 数组下标都是从0开始的。 数组内存空间的地址是连续的 而且大家如果使用C的话&…

Leetcode的AC指南 —— 哈希法/双指针:15. 三数之和

摘要&#xff1a; Leetcode的AC指南 —— 15. 三数之和。题目介绍&#xff1a;给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且…

腱鞘囊肿,不就是个水泡嘛?不!可别小瞧了它

腱鞘囊肿&#xff0c;很多人并不陌生&#xff0c;因为它的发病率比较高&#xff0c;不少人都有过腱鞘囊肿的经历。 有的人觉得不美观&#xff0c;有的人害怕癌变&#xff0c;有的人担心影响功能能&#xff0c;有的人经医生用力挤破好转&#xff0c;有的人经穿刺抽液治愈&#x…

使用element中el-cascader级联选择器动态懒加载以及回显 (单选)

<template><!-- 新增||修改弹框 --><el-dialog :close-on-click-modal"false" :close-on-press-escape"false" :title"title" :visible.sync"open"width"800px" append-to-body><el-form ref"for…

Unity | 快速修复Animation missing错误

目录 一、背景 二、效果 三、解决办法 一、背景 最近在做2D 骨骼动画相关的Demo&#xff0c;我自己使用Unity引擎进行骨骼绑定并创建了anim后&#xff0c;一切正常&#xff0c;anim也能播放。但是昨天我修改Obj及子物体的名称&#xff08;由中文改为英文&#xff0c;如&…

RabbitMQ 核心概念(交换机、队列、路由键),队列类型等介绍

RabbitMQ 核心概念(交换机、队列、路由键)&#xff0c;队列类型等介绍 RabbitMQ 是一个消息队列系统&#xff0c;它的核心概念包括交换机&#xff08;Exchange&#xff09;、队列&#xff08;Queue&#xff09;和路由键&#xff08;Routing Key&#xff09;&#xff0c;它们一起…

OpenStack云计算(-) 简介与部署Keystone

一.OpenStack简介 什么是云计算:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务) 云计算所包含的几个层次服务&#xff1a; SaaS ( Software as a Service ) :把在线软件作…

LLM提示词工程学习_Day01

LLM提示词工程学习_Day01 安装学习环境基础Conda环境安装安装Python安装所需的包Jupyter Notebook 安装获取OpenAI API KEY&#xff0c;并写入工程目录里的.env文件进入Jupyter&#xff0c;先跑一段代码 安装学习环境 基础Conda环境安装 conda环境安装&#xff0c;miniconda也…

omlox定位标准(二)——定位核心

上一篇文章中介绍了关于omlox hub相关内容&#xff0c;可以用于整合多种API接口&#xff0c;便于实现统一的应用&#xff0c;本文中介绍omlox core&#xff0c;介绍了基础设施、定位技术、定位引擎等内容。 2.omlox core zone and air-interface 随着越来越多的业务应用基于室…

基于ssm的航空票务推荐系统的设计与实现论文

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理&#xff0c;然而&#xff0c;随着近些年信息技术的迅猛发展&#xff0c;让许多比较老套的信息管理模式进行了更新迭代&#xff0c;航班信息因为其管理内容繁杂&#xff0c;管理数量繁多导致手工进行处理不能满足广大…

[C++] : 贪心算法专题(第一部分)

1.柠檬水找零&#xff1a; 1.思路一&#xff1a; 柠檬水找零 class Solution { public:bool lemonadeChange(vector<int>& bills) {int file0;int ten 0;for(auto num:bills){if(num 5) file;else if(num 10){if(file > 0)file--,ten;elsereturn false;}else{i…

读算法霸权笔记07_筛选

1. 美国残疾人法案 1.1. 1990年 1.2. 公司在招聘时使用身体检查是非法的 1.3. 有某些心理健康问题的人被“亮了红灯”&#xff0c;他们因此没能找到一份正常的工作&#xff0c;过上正常的生活&#xff0c;这就使其进一步被社会孤立&#xff0c;而这正是《美国残疾人法案》要…