• 大小: 2.76MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-14
  • 语言: Matlab
  • 标签: BM3D  MATLAB  

资源简介

function [PSNR, y_est] = BM3D(y, z, sigma, profile, print_to_screen,N2,N2_wiener,Ns,Ns_wiener,tau_match) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % BM3D is an algorithm for attenuation of additive white Gaussian noise from % grayscale images. This algorithm reproduces the results from the article: % % [1] K. Dabov, A. Foi, V. Katkovnik, and K. Egiazarian, "Image Denoising % by Sparse 3D Transform-Domain Collaborative Filtering," % IEEE Transactions on Image Processing, vol. 16, no. 8, August, 2007. % preprint at http://www.cs.tut.fi/~foi/GCF-BM3D. % % % FUNCTION INTERFACE: % % [PSNR, y_est] = BM3D(y, z, sigma, profile, print_to_screen) % % ! The function can work without any of the input arguments, % in which case, the internal default ones are used ! % % BASIC USAGE EXAMPLES: % % Case 1) Using the default parameters (i.e., image name, sigma, etc.) % % [PSNR, y_est] = BM3D; % % Case 2) Using an external noisy image:

资源截图

代码片段和文件信息

function [PSNR y_est] = BM3D(y z sigma profile print_to_screenN2N2_wienerNsNs_wienertau_match)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%  BM3D is an algorithm for attenuation of additive white Gaussian noise from 
%  grayscale images. This algorithm reproduces the results from the article:
%
%  [1] K. Dabov A. Foi V. Katkovnik and K. Egiazarian “Image Denoising 
%      by Sparse 3D Transform-Domain Collaborative Filtering“ 
%      IEEE Transactions on Image Processing vol. 16 no. 8 August 2007.
%      preprint at http://www.cs.tut.fi/~foi/GCF-BM3D.
%
%
%  FUNCTION INTERFACE:
%
%  [PSNR y_est] = BM3D(y z sigma profile print_to_screen)
%
%  ! The function can work without any of the input arguments 
%   in which case the internal default ones are used !

%  BASIC USAGE EXAMPLES:
%
%     Case 1) Using the default parameters (i.e. image name sigma etc.)

%      [PSNR y_est] = BM3D;

%     Case 2) Using an external noisy image:
%
%      % Read a grayscale image and scale its intensities in range [01]
%      y = im2double(imread(‘Cameraman256.png‘)); 
%      % Generate the same seed used in the experimental results of [1]
%      randn(‘seed‘ 0);
%      % Standard deviation of the noise --- corresponding to intensity 
%      %  range [0255] despite that the input was scaled in [01]
%      sigma = 25;
%      % Add the AWGN with zero mean and standard deviation ‘sigma‘
%      z = y + (sigma/255)*randn(size(y));
%      % Denoise ‘z‘. The denoised image is ‘y_est‘ and ‘NA = 1‘ because 
%      %  the true image was not provided
%      [NA y_est] = BM3D(1 z sigma); 
%      % Compute the putput PSNR
%      PSNR = 10*log10(1/mean((y(:)-y_est(:)).^2))
%      % show the noisy image ‘z‘ and the denoised ‘y_est‘
%      figure; imshow(z);   
%      figure; imshow(y_est);

%     Case 3) If the original image y is provided as the first input 
%      argument then some additional information is printed (PSNRs 
%      figures etc.). That is “[NA y_est] = BM3D(1 z sigma);“ in the
%      above code should be replaced with:

%      [PSNR y_est] = BM3D(y z sigma);


%  INPUT ARGUMENTS (OPTIONAL):
%
%     1) y (matrix M x N): Noise-free image (needed for computing PSNR)
%                           replace with the scalar 1 if not available.
%     2) z (matrix M x N): Noisy image (intensities in range [01] or [0255])
%     3) sigma (double)  : Std. dev. of the noise (corresponding to intensities
%                          in range [0255] even if the range of z is [01])
%     4) profile (char)  : ‘np‘ --> Normal Profile 
%                          ‘lc‘ --> Fast Profile
%     5) print_to_screen : 0 --> do not print output information (and do 
%                                not plot figures)
%                          1 --> print information and plot figures
%
%  OUTPUTS:
%     1) PSNR (double)          : Output PSNR (dB) only if the original 
%                         

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

     文件      22841  2014-08-30 13:26  BM3D\BM3D.m

     文件      17116  2009-06-17 19:54  BM3D\BM3DDEB.m

     文件      17668  2009-06-17 19:58  BM3D\BM3DSHARP.m

     文件     200704  2007-01-17 19:17  BM3D\bm3d_thr.dll

     文件     180038  2009-06-17 18:08  BM3D\bm3d_thr.mexa64

     文件     198707  2009-05-27 15:31  BM3D\bm3d_thr.mexglx

     文件      58592  2010-04-29 20:49  BM3D\bm3d_thr.mexmaci

     文件     200704  2007-01-17 19:17  BM3D\bm3d_thr.mexw32

     文件     195584  2008-10-17 19:52  BM3D\bm3d_thr.mexw64

     文件     151552  2008-11-18 22:34  BM3D\bm3d_thr_color.dll

     文件     110712  2009-06-17 18:08  BM3D\bm3d_thr_color.mexa64

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

     文件      42176  2010-04-29 20:49  BM3D\bm3d_thr_color.mexmaci

     文件     151552  2008-11-18 22:34  BM3D\bm3d_thr_color.mexw32

     文件     124928  2008-10-17 20:32  BM3D\bm3d_thr_color.mexw64

     文件     217088  2008-11-19 00:14  BM3D\bm3d_thr_colored_noise.dll

     文件     175956  2009-06-17 18:08  BM3D\bm3d_thr_colored_noise.mexa64

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

     文件     148772  2010-04-29 20:49  BM3D\bm3d_thr_colored_noise.mexmaci

     文件     217088  2008-11-19 00:14  BM3D\bm3d_thr_colored_noise.mexw32

     文件     196608  2008-10-17 00:06  BM3D\bm3d_thr_colored_noise.mexw64

     文件     188416  2008-11-18 22:11  BM3D\bm3d_thr_sharpen_var.dll

     文件     144444  2009-06-17 18:08  BM3D\bm3d_thr_sharpen_var.mexa64

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

     文件     136524  2010-04-29 20:49  BM3D\bm3d_thr_sharpen_var.mexmaci

     文件     188416  2008-11-18 22:11  BM3D\bm3d_thr_sharpen_var.mexw32

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

     文件     196608  2007-03-12 05:03  BM3D\bm3d_thr_video.dll

     文件     204696  2009-06-17 18:08  BM3D\bm3d_thr_video.mexa64

     文件     166577  2008-11-20 17:11  BM3D\bm3d_thr_video.mexglx

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

评论

共有 条评论