资源简介

当前最成功的三种图像去噪方法Matlab运行程序比较,包括著名的BLS-GSM,Non local means以及BM3D(Block Matching 3D)方法。运行目录下的Denoising_Demo.m即可得到结果。

资源截图

代码片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Code arranged by Jiang Lei(jianglei730@gmail.com)  %
% Tested in MATLAB 7.6                               %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%% Test Denosing Methods %%%%%%%%%%%%%%%%%
%%%%%%% Read Original Image %%%%%%%%
clc;
close all;

% choose one image file to test
file_name = ‘lena1.png‘;
% file_name = ‘barco.png‘;
% file_name = ‘boat.png‘;
% file_name = ‘fingerprint.png‘;
% file_name = ‘flinstones.png‘;
% file_name = ‘house.png‘;
% file_name = ‘peppers256.png‘;

% specify noise magnitude
sig = 10;

path(path ‘.\Sample Images‘);
origin_img = imread(file_name);
% origin_img = imcrop(origin_img [50 180 50 50]);
figure imagesc(origin_img); colormap gray; axis image;
title(‘Original Image‘);
disp(‘Display Original Image‘)
disp(‘%%% Press Any Key to Continue %%%‘);
pause;
origin_img = double(origin_img);
[hw] = size(origin_img);

%%%%%%% Generate Random Noise ******
randn(‘state‘ 0);
noise = randn(size(origin_img));
noise = noise/sqrt(mean2(noise.^2));
noise_img = origin_img + sig*noise;
figure imagesc(noise_img); colormap gray; axis image; drawnow;
title(‘Noise Image‘);
disp(‘Display Noise Image‘)

%%%%%%%%%%%%%%%%%%%%%%%%%%%% BLS-GSM methods %%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp(‘ ‘);
disp(‘%%% Press Any Key to Continue %%%‘);
pause;
cd BLS-GSM;
path(path ‘.\Simoncelli_PyrTools‘);
path(path ‘.\Added_PyrTools‘);
path(path ‘.\denoising_subprograms‘);
disp(‘Testing BLS-GSM Denoising Methods...‘);
% Noise Parameters (assumed additive Gaussian and independent of the
% original image)
sig = 10;                       % standard deviation
PS = ones(size(origin_img)); % power spectral density (in this case flat i.e. white noise)
seed = 0;                       % random seed

% Pyramidal representation parameters
Nsc = ceil(log2(min(h w)) - 4);  % Number of scales (adapted to the image size)
Nor = 3;             % Number of orientations (for X-Y separable wavelets it can only be 3)
repres1 = ‘uw‘;                     % Type of pyramid (shift-invariant version of an orthogonal wavelet in this case)
repres2 = ‘daub1‘;                  % Type of wavelet (daubechies wavelet order 2N for ‘daubN‘; in this case ‘Haar‘)
% Model parameters (optimized: do not change them unless you are an advanced user with a deep understanding of the theory)
blSize = [3 3];     % n x n coefficient neighborhood of spatial neighbors within the same subband
                    % (n must be odd): 
parent = 0; % including or not (1/0) in the neighborhood a coefficient from the same spatial location
                    % and orientation as the central coefficient of the n x n neighborhood but
                    % next coarser scale. Many times helps but not always.
boundary = 1; % Boundary mirror extension to avoid boundary artifacts 
covariance = 1;     % Full covariance matrix (1) or only diagonal elem

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      21697  2009-06-17 14:55  Denoise Methods\BM3D\BM3D.m

     文件      17116  2009-06-17 14:54  Denoise Methods\BM3D\BM3DDEB.m

     文件      17668  2009-06-17 14:58  Denoise Methods\BM3D\BM3DSHARP.m

     文件     180038  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_thr.mexa64

     文件     198707  2009-05-27 10:31  Denoise Methods\BM3D\bm3d_thr.mexglx

     文件     200704  2007-01-17 14:17  Denoise Methods\BM3D\bm3d_thr.mexw32

     文件     195584  2008-10-17 14:52  Denoise Methods\BM3D\bm3d_thr.mexw64

     文件     110712  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_thr_color.mexa64

     文件     158284  2008-11-18 11:41  Denoise Methods\BM3D\bm3d_thr_color.mexglx

     文件     151552  2008-11-18 17:34  Denoise Methods\BM3D\bm3d_thr_color.mexw32

     文件     124928  2008-10-17 15:32  Denoise Methods\BM3D\bm3d_thr_color.mexw64

     文件     175956  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_thr_colored_noise.mexa64

     文件     260360  2008-11-18 11:44  Denoise Methods\BM3D\bm3d_thr_colored_noise.mexglx

     文件     217088  2008-11-18 19:14  Denoise Methods\BM3D\bm3d_thr_colored_noise.mexw32

     文件     196608  2008-10-16 19:06  Denoise Methods\BM3D\bm3d_thr_colored_noise.mexw64

     文件     144444  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_thr_sharpen_var.mexa64

     文件     235818  2008-11-18 11:49  Denoise Methods\BM3D\bm3d_thr_sharpen_var.mexglx

     文件     188416  2008-11-18 17:11  Denoise Methods\BM3D\bm3d_thr_sharpen_var.mexw32

     文件     158208  2008-10-17 12:26  Denoise Methods\BM3D\bm3d_thr_sharpen_var.mexw64

     文件     204696  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_thr_video.mexa64

     文件     166577  2008-11-20 12:11  Denoise Methods\BM3D\bm3d_thr_video.mexglx

     文件     196608  2007-03-12 00:03  Denoise Methods\BM3D\bm3d_thr_video.mexw32

     文件     193536  2008-11-19 23:25  Denoise Methods\BM3D\bm3d_thr_video.mexw64

     文件     122697  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_wiener.mexa64

     文件     129108  2009-05-27 10:31  Denoise Methods\BM3D\bm3d_wiener.mexglx

     文件     131072  2007-03-06 15:51  Denoise Methods\BM3D\bm3d_wiener.mexw32

     文件     144896  2008-10-17 14:56  Denoise Methods\BM3D\bm3d_wiener.mexw64

     文件     122779  2009-06-17 13:08  Denoise Methods\BM3D\bm3d_wiener_color.mexa64

     文件     170317  2008-11-18 11:41  Denoise Methods\BM3D\bm3d_wiener_color.mexglx

     文件     159744  2008-11-18 17:50  Denoise Methods\BM3D\bm3d_wiener_color.mexw32

............此处省略516个文件信息

评论

共有 条评论