首页 游戏 软件 资讯 排行榜 专题
首页
AI
基于Paddle复现Neighbor2Neighbor降噪网络

基于Paddle复现Neighbor2Neighbor降噪网络

热心网友
65
转载
2025-07-17
本文介绍基于Paddle复现Neighbor2Neighbor自监督图像去噪方法。该方法通过随机邻域子采样生成训练对,结合正则化损失训练模型,复现模型在BSD300测试集PSNR 30.91、SSIM 0.877,还包含数据集处理、环境依赖及训练验证流程等内容。

基于paddle复现neighbor2neighbor降噪网络 - 游乐网

基于Paddle复现《Neighbor2Neighbor: Self-Supervised Denoising from Single Noisy Images》

1.简介

近年来,由于神经网络的快速发展,图像降噪也从中获得了巨大的好处。然而,由于需要大量的噪声-干净的图像对来进行模型的监督训练,限制了这些模型的推广。虽然已经有一些尝试训练一个只有单个噪声图像的图像去噪模型,但现有的自监督去噪方法存在网络训练效率低、有用信息丢失或依赖于噪声建模等问题。在这篇论文中,作者提出了一种非常简单但有效的方法,可以训练仅含噪声图像的图像去噪模型,名为Neighbor2Neighbor。 首先,提出一种随机邻域子采样器来生成训练图像对。具体的说,用于训练的输入和输出是从同一噪声图像中的子采样图像,满足了成对图像的对应像素是相邻的,同时彼此是相似的。其次,在第一阶段生成的子图片对去训练网络,并使用正则化器作为额外的损失以获得更好的性能。

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网

上图是Neighbor2Neighbor架构概述。(a)训练的完整视图。通过噪声图片使用相邻子采样器生成一对图片。降噪网络分别使用g1(y)和g2(y)作为输入和目标。损失包含两个部分,左边部分,计算网络输出和噪声目标之间的Lrec。右边部分,考虑到子采样噪声图像和真实值之间的差异,进一步添加了损失Lreg。应该提到的是,出现两次的邻域子采样器(绿色)代表的是同一个邻域子采样器。(b)使用训练后的网络进行推理。

2.复现精度

在BSD300测试集的测试效果如下表,达到验收指标,PSNR: 30.79, SSIM:0.873。

每一个epoch的精度可以在train.log或A_log_BSD300.csv中查看。

3.数据集

下载地址:

https://aistudio.baidu.com/aistudio/datasetdetail/137360

数据集下载解压后需要进行预处理。执行以下命令。

In [ ]
%cd /home/aistudio/data/!tar xvf /home/aistudio/data/data137360/ILSVRC2012_img_val.tar%cd /home/aistudio/Neighbor2Neighbor_Paddle/!python dataset_tool.py --input_dir /home/aistudio/data/ILSVRC2012_img_val --save_dir /home/aistudio/data/Imagenet_val
登录后复制

4.环境依赖

PaddlePaddle == 2.2.0

5.快速开始

模型训练

运行一下命令进行模型训练,在训练过程中会对模型进行评估,同时训练日志保存在train.log中。训练过程中的每一次评估指标都保存在result/unet_gauss25_b4e100r02/目录中。

In [ ]
!python -u train.py --data_dir=/home/aistudio/data/Imagenet_val/ \--val_dirs=./validation --noisetype=gauss25 --save_model_path=./results \--log_name=unet_gauss25_b4e100r02 --increase_ratio=2
登录后复制

参数介绍:

data_dir:数据集路径

val_dirs:测试集路径

noisetype:噪声类型,根据验收指标,目前只支持gauss25。

save_model_path:模型保存路径

log_name:验证结果保存路径

increase_ratio:损失函数中Lambda的系数

模型验证

除了可以再训练过程中验证模型精度,还可以是val.py脚本加载模型验证精度,执行以下命令。

In [6]
!python val.py --model_path best_model.pdparams
登录后复制
W0409 16:44:58.220067 32686 device_context.cc:447] Please NOTE: device: 0, GPU Compute Capability: 7.0, Driver API Version: 10.1, Runtime API Version: 10.1W0409 16:44:58.224027 32686 device_context.cc:465] device: 0, cuDNN Version: 7.6.Loading pretrained model from best_model.pdparamsThere are 50/50 variables loaded into UNet.[EVAL] BSD300: psnr:30.910791861936413 ssim:0.8766264295802032
登录后复制

单张图片预测

本项目提供了单张图片的预测脚本,可生成降噪图片。使用方法如下:

In [ ]
%cd /home/aistudio/Neighbor2Neighbor_Paddle/!python predict.py --image_path demo/42012_noise.webp --model_path best_model.pdparams --save_dir ./demo/
登录后复制

参数说明:

image_path:需要预测的图片

model_path: 模型路径

save_dir: 输出图片保存路径

预测样例:

基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网 基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网 基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网
从左到右分别是clear、nosie、denoise
基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网 基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网 基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网
从左到右分别是clear、nosie、denoise

模型导出

模型导出可执行以下命令:

In [ ]
!python export_model.py --model_path best_model.pdparams --save_dir ./output/
登录后复制

参数说明:

model_path: 模型路径

save_dir: 输出图片保存路径

Inference推理

可使用以下命令进行模型推理。该脚本依赖auto_log, 请参考下面TIPC部分先安装auto_log。infer命令运行如下:

In [ ]
%cd /home/aistudio!git clone https://gitee.com/Double_V/AutoLog%cd /home/aistudio/AutoLog/!pip3 install -r requirements.txt!python3 setup.py bdist_wheel!pip3 install ./dist/auto_log-1.2.0-py3-none-any.whl
登录后复制In [ ]
!python infer.py --use_gpu=False --enable_mkldnn=False --cpu_threads=2 \--model_file=output/model.pdmodel --batch_size=2 \--input_file=validation/BSD300/test --enable_benchmark=True \--precision=fp32 --params_file=output/model.pdiparams \--save_dir output/inference_img
登录后复制

参数说明:

use_gpu:是否使用GPU

enable_mkldnn:是否使用mkldnn

cpu_threads: cpu线程数

model_file: 模型路径

batch_size: 批次大小

input_file: 输入文件路径

enable_benchmark: 是否开启benchmark

precision: 运算精度

params_file: 模型权重文件,由export_model.py脚本导出。

save_dir: 保存推理预测图片的路径

TIPC基础链条测试

该部分依赖auto_log,需要进行安装,安装方式如下:

auto_log的详细介绍参考https://github.com/LDOUBLEV/AutoLog。

In [ ]
%cd /home/aistudio/Neighbor2Neighbor_Paddle/!bash test_tipc/prepare.sh test_tipc/configs/N2N/train_infer_python.txt 'lite_train_lite_infer'!bash test_tipc/test_train_inference_python.sh test_tipc/configs/N2N/train_infer_python.txt 'lite_train_lite_infer'
登录后复制

测试结果如截图所示:

基于Paddle复现Neighbor2Neighbor降噪网络 - 游乐网

6.代码结构与详细说明

Neighbor2Neighbor_Paddle├── A_log_BSD300.csv  # 验证模型日志├── README.md  # 说明文件├── arch_unet.py # 模型架构├── best_model.pdparams # 最优模型权重├── dataset.py # 数据集代码├── dataset_tool.py # 数据集转换文件├── export_model.py # 模型导出代码├── imgs # Readme中的图片资源文件├── infer.py # 推理代码├── param_init.py # 模型参数初始化方法├── test_tipc # TIPC 测试├── train.log # 训练日志├── train.py # 训练脚本├── utils.py # 工具├── val.py #验证脚本└── validation # 验证数据集
登录后复制

7.模型信息

来源:https://www.php.cn/faq/1411159.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

openclaw在飞书测试报错access not configured.
AI
openclaw在飞书测试报错access not configured.

常见报错解析:“Access Not Configured”故障排除指南 许多开发者和团队成员在使用OpenClaw集成飞书时,都曾遭遇过一个典型的中断提示:“access not configured”(访问未配置)。该提示会明确显示您的飞书账户ID及一组唯一的配对验证码,并指出需要联系机器人所有

热心网友
04.02
OpenClaw 常用指令速查
AI
OpenClaw 常用指令速查

OpenClaw 常用指令大全与使用详解 openclaw status:此命令是查看OpenClaw系统整体健康状态的核心指令,执行后即获取服务运行状况的全面报告,是日常运维的首要诊断工具。 openclaw gateway restart:在修改网关配置后,必须运行此指令以重启网关服务,使配置文

热心网友
04.02
OpenClaw 操控浏览器
AI
OpenClaw 操控浏览器

如何通过 OpenClaw 实现 Chrome 浏览器自动化操控 在软件开发与自动化测试领域,持续学习是常态。本文旨在详细介绍如何利用 OpenClaw 连接并控制一个已开启的 Chrome 浏览器实例,实现点击、文本输入、文件上传、页面滚动、屏幕截图以及执行 JavaScript 等自动化操作。整

热心网友
04.01
# OpenClaw QQ 机器人接入完整指南
AI
# OpenClaw QQ 机器人接入完整指南

项目概述 你是否希望将强大的 AI 助手带入日常聊天?本教程将指导你完成搭建流程,让你能在 QQ 上直接调用 OpenClaw 智能助手,实现无门槛的 AI 对话体验。 架构说明 ┌─────────────┐ ┌──────────────┐ ┌─────────────┐ │ QQ 用户 │ ─

热心网友
04.01
OpenClaw 保姆级 window部署
AI
OpenClaw 保姆级 window部署

一 下载并安装Node js,全程保持默认设置 首先,请前往Node js官方网站的下载中心:https: nodejs org zh-cn download。根据您的操作系统(Windows Mac Linux)下载对应的安装程序。运行安装向导时,整个过程非常简单,您只需连续点击“下一步”按钮

热心网友
04.01

最新APP

火柴人传奇
火柴人传奇
动作冒险 04-07
数独趣味闯关
数独趣味闯关
休闲益智 04-07
碧优蒂的世界
碧优蒂的世界
休闲益智 04-07
海岛奇兵
海岛奇兵
棋牌策略 04-07
列王的纷争:西部大陆
列王的纷争:西部大陆
棋牌策略 04-07

热门推荐

苹果折叠 iPhone Fold 渲染图再曝:后摄缩小凸起,整体更精致
科技数码
苹果折叠 iPhone Fold 渲染图再曝:后摄缩小凸起,整体更精致

苹果折叠屏手机 iPhone Fold 最新渲染图曝光:摄像头凸起优化,设计更显精致 有关苹果公司首款折叠屏 iPhone 的传闻持续受到关注。4月5日,知名爆料者 Majin Bu 在社交平台X上再度分享了一组据称是 iPhone Fold 的高清渲染图,从多角度揭示了这款备受期待设备可能的外观设

热心网友
04.07
这城有良田官府无垢队阵容推荐
游戏攻略
这城有良田官府无垢队阵容推荐

通用性首选:官府无垢队阵容深度解析 在当前版本中,若要挑选一套兼具强度与广泛适用性的阵容,以官府流派【长孙无垢】为核心的搭配方案无疑是热门之选。这套经典组合通常由长孙无垢(官府)、李一桐、李善德、李光弼,以及关羽或平安组成。其核心战斗逻辑清晰且高效:一方面,依靠长孙无垢与李光弼的技能联动,通过对目标

热心网友
04.07
洛克王国世界进化什么条件 洛克王国世界全隐藏进化条件整理
游戏攻略
洛克王国世界进化什么条件 洛克王国世界全隐藏进化条件整理

洛克王国全精灵隐藏进化条件完整攻略大全 在《洛克王国》丰富多彩的冒险世界中,除了常规的等级进化,众多精灵还埋藏着独特的“隐藏进化”路径。这些特殊的进化条件,往往是解锁精灵终极形态、完成图鉴收集的关键所在。与普通进化方式不同,隐藏进化需要触发特定的环境、时间、道具或任务条件,充满了探索与解密的乐趣。你

热心网友
04.07
燕云十六声石震通关方法-燕云十六声石震如何通关
游戏资讯
燕云十六声石震通关方法-燕云十六声石震如何通关

燕云十六声石震关卡怎么过?高效通关技巧与实战攻略详解 掌握核心机制:石震关卡难点全解析 石震关卡的核心挑战在于敌人配置:不仅数量密集,且拥有高额血量和攻击力。这些敌人并非随机分布,而是依据特定区域、巡逻路线及攻击逻辑进行部署。提前掌握不同敌人的攻击前摇、技能范围与仇恨机制,是制定有效战术的前提,真正

热心网友
04.07
英雄联盟手游安妮符文怎么搭配
游戏攻略
英雄联盟手游安妮符文怎么搭配

英雄联盟手游安妮符文终极指南:爆发流核心配置与实战策略 在英雄联盟手游的对局中,黑暗之女安妮以其强大的瞬间爆发与控制能力,始终是中单位置的热门选择。虽然操作看似简单易懂,但想要真正掌握这位火焰法师的精髓,打出毁天灭地的效果,一套科学高效的符文搭配是不可或缺的基石。正确的符文选择,能让她从温顺的火苗化

热心网友
04.07