【图像重建】基于matlab正则化图像超分辨重建【含Matlab源码 1882期】
一、正则化图像超分辨重建简介
利用图像非局部不连续性测度的概念,建立了面向图像超分辨的非局部正则化能量泛函和相应的变分框架.理论分析了该框架与目前关于双边滤波等一类广义邻域滤波器和经典的变分偏微分方程模型之间的联系.推导了该非局部泛函约束的变分模型最优解满足的积分形式欧拉-拉格朗日方程,并研究了其最速下降流满足的若干重要性质.基于图理论,设计了图像超分辨的自适应加权迭代算法.最后通过选择不同势函数的非局部正则化泛函进行图像去噪、去马赛克效应和图像超分辨处理,性能分析表明:相同势函数下,非局部正则化方法优于同类局部正则化方法,峰值信噪比提高0.5~1.0dB.
二、部分源代码
clear
close all
clc
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Demo file for deconvtv
% Image 'salt and pepper' noise removal
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Prepare images
f_orig = im2double(imread('./data/lena_color_512.png'));
[rows,cols,frames] = size(f_orig);
H = fspecial('gaussian', [9 9], 2);
g = imfilter(f_orig, H, 'circular');
g = imnoise(g, 'salt & pepper', 0.05);
% Setup parameters (for example)
opts.rho_r = 5;
opts.rho_o = 100;
opts.beta = [1 1 0];
opts.print = true;
opts.alpha = 0.7;
opts.method = 'l1';
% Setup mu
mu = 20;
% Main routine
tic
out = deconvtv(g, H, mu, opts);
toc
PSNR_output = psnr(out.f,f_orig);
fprintf('\nPSNR = %3.2f dB \n', PSNR_output);
% Display results
figure(1);
imshow(g);
set(get(gca, 'Title'), 'String', 'input');
figure(2);
imshow(out.f);
set(get(gca, 'Title'), 'String', ['PSNR = ', num2str(PSNR_output),'dB']);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
三、运行结果
四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 蔡利梅.MATLAB图像处理——理论、算法与实例分析[M].清华大学出版社,2020.
[2]杨丹,赵海滨,龙哲.MATLAB图像处理实例详解[M].清华大学出版社,2013.
[3]周品.MATLAB图像处理与图形用户界面设计[M].清华大学出版社,2013.
[4]刘成龙.精通MATLAB图像处理[M].清华大学出版社,2015.
[5]肖亮,韦志辉.图像超分辨率重建的非局部正则化模型与算法研究[J].计算机学报. 2011,34(05)
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
文章来源: qq912100926.blog.csdn.net,作者:海神之光,版权归原作者所有,如需转载,请联系作者。
原文链接:qq912100926.blog.csdn.net/article/details/125287885
- 点赞
- 收藏
- 关注作者
评论(0)