【图像去噪】基于双立方插值和稀疏表示实现图像去噪matlab源码
【图像去噪】基于双立方插值和稀疏表示实现图像去噪matlab源码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 内容介绍
本文解决了从单个低分辨率输入图像生成超分辨率 (SR) 图像的问题。我们从压缩感知的角度来解决这个问题。低分辨率图像被视为高分辨率图像的下采样版本,假设其补丁相对于原型信号原子的过完备字典具有稀疏表示。压缩感知的原理保证了在温和的条件下,稀疏表示可以正确地从下采样信号中恢复出来。我们将证明稀疏性的有效性作为规范否则不适定的超分辨率问题的先验。我们进一步表明,从与输入图像具有相似统计性质的训练图像中随机选择的一小组原始补丁通常可以作为一个好的字典,因为计算的表示是稀疏的,而恢复的高分辨率图像具有竞争力甚至质量优于其他 SR 方法生成的图像。
2 仿真代码
% =========================================================================
% Simple demo codes for image super-resolution via sparse representation
%
% Reference
% =========================================================================
clear all; clc;
% read test image
im_l = imread(’Data/Testing/input.bmp’);
% set parameters
lambda = 0.2; % sparsity regularization
overlap = 4; % the more overlap the better (patch size 5x5)
up_scale = 2; % scaling factor, depending on the trained dictionary
maxIter = 20; % if 0, do not use backprojection
% load dictionary
load(’Dictionary/D_1024_0.15_5.mat’);
% change color space, work on illuminance only
im_l_ycbcr = rgb2ycbcr(im_l);
im_l_y = im_l_ycbcr(:, :, 1);
im_l_cb = im_l_ycbcr(:, :, 2);
im_l_cr = im_l_ycbcr(:, :, 3);
% image super-resolution based on sparse representation
[im_h_y] = ScSR(im_l_y, 2, Dh, Dl, lambda, overlap);
[im_h_y] = backprojection(im_h_y, im_l_y, maxIter);
% upscale the chrominance simply by
"bicubic"
[nrow, ncol] = size(im_h_y);
im_h_cb = imresize(im_l_cb, [nrow, ncol], ’bicubic’);
im_h_cr = imresize(im_l_cr, [nrow, ncol], ’bicubic’);
im_h_ycbcr = zeros([nrow, ncol, 3]);
im_h_ycbcr(:, :, 1) = im_h_y;
im_h_ycbcr(:, :, 2) = im_h_cb;
im_h_ycbcr(:, :, 3) = im_h_cr;
im_h = ycbcr2rgb(uint8(im_h_ycbcr));
% bicubic interpolation for reference
im_b = imresize(im_l, [nrow, ncol], ’bicubic’);
% read ground truth image
im = imread(’Data/Testing/gnd.bmp’);
% compute PSNR for the illuminance channel
bb_rmse = compute_rmse(im, im_b);
sp_rmse = compute_rmse(im, im_h);
bb_psnr = 20*log10(255/bb_rmse);
sp_psnr = 20*log10(255/sp_rmse);
% show the images
figure,
subplot(131),imshow(im_l);title(’原图’)
subplot(132),imshow(im_h);
title([’PSNR for 稀疏表示’,num2str( sp_psnr)]);
subplot(133), imshow(im_b);
title([’PSNR for 双立方插值’,num2str(bb_psnr)]);
3 运行结果
4 参考文献
[1]王国权, 张扬, 李彦锋,等. 一种基于稀疏表示的图像去噪算法[J]. 工业仪表与自动化装置, 2013.
[2]刘美娟. 基于MATLAB的图像去噪研究[C]// 挑战与机遇:2010高校GIS论坛. 0.
[3]郭晓峰, 陈钊正, 刘圣卿,等. 一种基于图像稀疏表达的图像去噪方法及系统:, CN109727219A[P]. 2019.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
