【图像恢复】基于交替乘子方法(ADMM)图像恢复算法研究[固定点收敛和应用](Matlab代码实现)

news2024/12/27 13:42:14

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、数据、文献


💥1 概述

文献来源:

即插即用的ADMM图像恢复算法:固定点收敛和应用

交替方向乘子方法(ADMM)是一种广泛用于解决图像恢复中约束优化问题的算法。在许多有用的特性中,ADMM算法的一个关键特点是其模块化结构,允许将任何现成的图像去噪算法插入到ADMM算法的子问题中。由于其插件式的特性,这种类型的ADMM算法被称为“即插即用ADMM”。即插即用ADMM在最近的一些论文中展示了有希望的实证结果。然而,目前尚不清楚在什么条件下以及使用哪种去噪算法才能保证其收敛性。此外,由于即插即用ADMM使用了特定的变量分割方式,对于常见的高斯和泊松图像恢复问题是否可以进行快速实现也不清楚。本文提出了一种具有可证明的固定点收敛性的即插即用ADMM算法。我们证明了对于满足一种被称为有界去噪器的渐近准则的任何去噪算法,即插即用ADMM在连续方案下收敛到一个固定点。我们还针对超分辨率和单光子成像两个图像恢复问题提出了快速实现。我们将即插即用ADMM与各类最先进的算法进行了比较,并展示了算法的有希望的实验结果。

原文摘要:

Abstract:

Alternating direction method of multiplier (ADMM) is a widely used algorithm for solving constrained optimization problems in image restoration. Among many useful features, one critical feature of the ADMM algorithm is its modular structure, which allows one to plug in any off-the-shelf image denoising algorithm for a subproblem in the ADMM algorithm. Because of the plug-in nature, this type of ADMM algorithms is coined the name “Plug-and-Play ADMM.” Plug-and-Play ADMM has demonstrated promising empirical results in a number of recent papers. However, it is unclear under what conditions and by using what denoising algorithms would it guarantee convergence. Also, since Plug-and-Play ADMM uses a specific way to split the variables, it is unclear if fast implementation can be made for common Gaussian and Poissonian image restoration problems. In this paper, we propose a Plug-and-Play ADMM algorithm with provable fixed-point convergence. We show that for any denoising algorithm satisfying an asymptotic criteria, called bounded denoisers, Plug-and-Play ADMM converges to a fixed point under a continuation scheme. We also present fast implementations for two image restoration problems on superresolution and single-photon imaging. We compare Plug-and-Play ADMM with state-of-the-art algorithms in each problem type and demonstrate promising experimental results of the algorithm.

📚2 运行结果

部分代码:

%add path to denoisers
addpath(genpath('./denoisers/BM3D/'));
addpath(genpath('./denoisers/TV/'));
addpath(genpath('./denoisers/NLM/'));
addpath(genpath('./denoisers/RF/'));

%read test image
z = im2double(imread('./data/House256.png'));

%construct A matrix, deblurring as an example
dim = size(z);
h = fspecial('gaussian',[9 9],1);
A = @(z,trans_flag) afun(z,trans_flag,h,dim);

%reset random number generator
rng(0);

%set noies level
noise_level = 10/255;

%calculate observed image
y = A(z(:),'transp') + noise_level*randn(prod(dim),1);
y = proj(y,[0,1]);
y = reshape(y,dim);

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码、数据、文献

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

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

相关文章

form 表单恢复初始数据

写表单的时候&#xff0c;想做到&#xff0c;某个操作时&#xff0c;表单恢复初始数据 this.$options.data().form form 是表单的对象 <template><div><el-dialog title"提示" :visible.sync"dialogVisible"><el-form :model"…

前端学习记录~2023.7.30~JavaScript重难点实例精讲~第4章 对象

第 4 章 对象 前言4.1 对象的属性和访问方式4.1.1 对象的属性&#xff08;1&#xff09;数据属性&#xff08;2&#xff09;访问器属性 4.1.2 属性的访问方式&#xff08;1&#xff09;使用.访问属性&#xff08;2&#xff09;使用[]访问属性&#xff08;3&#xff09;两者的不…

虫情测报灯的功能优势

KH-CQPest虫情测报灯是一款利用现代光、电、数控集成的虫情测报仪器。它可以通过光学/药物诱虫方式实现自动诱虫&#xff0c;并将诱捕的害虫进行无公害红外远程自动处理&#xff0c;在完成杀虫、虫体分散、拍照、运输等作业后&#xff0c;KH-CQPest虫情测报灯会自动将监测到的虫…

Clone函数

概述 Clone函数是一种用于复制的计算机函数。在程序编写中&#xff0c;除了自定义一个拷贝构造函数来实现对象复制外&#xff0c;还可以实现一个clone函数。这需要借助编译器实现的一个隐藏拷贝构造函数&#xff0c;这样的做法&#xff0c;更省心。 中文名clone函数外文名clon…

ELF program/section segment解析

ELF program/section segment解析 1 elf program segment1.1 elf program header1.2 ELF32和ELF64示例1.2.1 ELF32 program segment1.2.2 ELF64 program segment 1.3 elf program segment数据流向图 2 elf section2.1 eld section header2.2 ELF32和ELF64示例2.2.1 ELF32 secti…

带你玩转双链表

文章目录 前言一、双链表的思路二、带头循环双链表的实现分析二、带头循环双链表的实现11.带头循环双链表实现头文件总览2.带头循环双链表的初始化3.带头循环双链表的插入4.带头循环双链表的打印和销毁5.带头循环双链表的查找和删除 三、带头循环双链表的实现21.带头循环双链表…

软考高级之系统架构师之数据通信与计算机网络

概念 OSPF 在划分区域之后&#xff0c;OSPF网络中的非主干区域中的路由器对于到外部网络的路由&#xff0c;一定要通过ABR(区域边界路由器)来转发&#xff0c;既然如此&#xff0c;对于区域内的路由器来说&#xff0c;就没有必要知道通往外部网络的详细路由&#xff0c;只要由…

文章被限流了?上不了热榜?

文章目录 惨&#xff01;惨&#xff01;&#xff01;惨&#xff01;&#xff01;&#xff01;热榜&#x1f525;热榜&#x1f525;&#x1f525;热榜&#x1f525;&#x1f525;&#x1f525;粉丝破万INSCODE AI 创作 1INSCODE AI 创作 2INSCODE AI 创作 3联系客服 最近不知道C…

Mybatis Plus条件构造器LambdaQueryWrapper

官网地址 Mybatis Plus条件构造器LambdaQueryWrapper 目前数据库数据情况&#xff0c;User表 iduser_namebirthdaysexaddress1张12023-08-10男123163.com2李12023-08-10女222163.com3张22023-08-10女999163.com4张32023-08-10男9994qq.com ## 简单介绍 如何使用各种场景 方法…

Flink源码之TaskManager启动流程

从启动命令flink-daemon.sh可以看出TaskManger入口类为org.apache.flink.runtime.taskexecutor.TaskManagerRunner TaskManagerRunner::main TaskManagerRunner::runTaskManagerProcessSecurely TaskManagerRunner::runTaskManager //构造TaskManagerRunner并调用start()方法 …

【设计模式——学习笔记】23种设计模式——中介者模式Mediator(原理讲解+应用场景介绍+案例介绍+Java代码实现)

文章目录 案例引入案例一普通实现中介者模式 案例二 介绍基础介绍登场角色尚硅谷 《图解设计模式》 案例实现案例一&#xff1a;智能家庭类图实现 案例二&#xff1a;登录页面逻辑实现说明类图实现 总结文章说明 案例引入 案例一 普通实现 在租房过程中&#xff0c;客户可能…

10个创意网站,解决你没有灵感的问题

对于设计师来说&#xff0c;有源源不断的设计灵感&#xff0c;掌握最新的设计流行趋势是非常重要的。要提高设计修养&#xff0c;必须学习和理解优秀的设计作品。在这篇文章中&#xff0c;我们对灵感创意网站进行了分类整理&#xff0c;从中选取了10个素材优良、质量优良的灵感…

为什么过去十年AI创业失败了?

始于2010年前后的这次人工智能创业实际上是集体失败了。作为从业者我们固然可以讲它需要更长的启动周期&#xff0c;我们尽快的开始第二程就可以了&#xff0c;但就像抗日战争的时候如果没有论持久战的穿插到日寇力量薄弱区建立根据地等一系列基于过往教训的新战略&#xff0c;…

浅谈油烟净化技术分类及其优缺点

安科瑞 华楠 摘 要&#xff1a;随着我国经济水平的提高&#xff0c;餐饮业的快速发展&#xff0c;饮食油烟成为继工业排放和汽车尾气之后的第三大空气污染源&#xff0c;随着GB18483-2001的推出&#xff0c;各类油烟处理环保设备不断出现。文章从净化原理、净化效率、使用成本…

unity修改单个3D物体的重力的大小该怎么处理呢?

在Unity中修改单个3D物体的重力大小可以通过以下步骤实现&#xff1a; 创建一个新的C#脚本来控制重力&#xff1a; 首先&#xff0c;创建一个新的C#脚本&#xff08;例如&#xff1a;GravityModifier.cs&#xff09;并将其附加到需要修改重力的3D物体上。在脚本中&#xff0c…

第01天 什么是CSRF ?

✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a; 每天一个知识点 ✨特色专栏&#xff1…

vcruntime140.dll如何修复?哪个修复方法更简单

修复 vcruntime140.dll 的过程确实是一次让我有些头疼的经历。起初&#xff0c;当我在使用某个程序时&#xff0c;突然出现了一个错误提示&#xff0c;指出 vcruntime140.dll 文件丢失或损坏。这让我感到困惑&#xff0c;因为我并不清楚这个文件的作用和重要性&#xff0c;以及…

Textnow注册防封,如何免费获取收发信息的美国手机号

TextNow和Google voice一样&#xff0c;是美国的一款免费的网络通信应用程序&#xff0c;可用于免费收发短信和无限制拨打电话&#xff0c;对于那些希望节省通讯费用的人&#xff0c;尤其是那些需要在跨境商务通讯频繁、跨境推广需要短信收发的用户来说&#xff0c;TextNow非常…

VsCode美化 - VsCode自定义 - VsCode自定义背景图

VsCode美化 - VsCode自定义 - VsCode自定义背景图&#xff1a;添加二次元老婆图到VsCode 前言 作为一个二刺螈&#xff0c;VsCode用久了&#xff0c;总觉得少了些什么。是啊&#xff0c;高效的代码生产工具中怎么能没有老婆呢&#xff1f; 那就安装一个VsCode插件把老婆添加…

【Spring专题】Spring之Bean的生命周期源码解析——上(扫描生成BeanDefinition)

目录 前言阅读指引阅读建议 课程内容一、生成BeanDefinition1.1 简单回顾1.2 概念回顾1.3 核心方法讲解 二、方法讲解2.1 ClassPathBeanDefinitionScanner#scan2.2 ClassPathBeanDefinitionScanner#doScan2.3 ClassPathScanningCandidateComponentProvider#findCandidateCompon…