亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? denoi_bls_gsm.m

?? 基于小波域隱馬爾可夫模型的圖像降噪
?? M
字號:
function im_d = denoi_BLS_GSM(im, sig, PS, blSize, parent, boundary, Nsc, Nor, covariance, optim, repres1, repres2, seed);

% [im_d,im,SNR_N,SNR,PSNR] = denoi_BLS_GSM(im, sig, ft, PS, blSize, parent, boundary, Nsc, Nor, covariance, optim, repres1, repres2, seed);
%
%	im:	input noisy image
%	sig:	standard deviation of noise
%	PS:	Power Spectral Density of noise ( fft2(autocorrelation) )
%			NOTE: scale factors do not matter. Default is white.
%	blSize: 2x1 or 1x2 vector indicating local neighborhood
%		([sY sX], default is [3 3])
%   parent: Use parent yes/no (1/0)
%	Nsc:	Number of scales
%   Nor:  Number of orientations. For separable wavelets this MUST be 3.
%   covariance: Include / Not Include covariance in the GSM model (1/0)
%   optim: BLS / MAP-Wiener(2-step) (1/0)
%   repres1: Possible choices for representation:
%           'w':    orthogonal wavelet
%                   (uses buildWpyr, reconWpyr)
%                   repres2 (optional):
%                      haar:              - Haar wavelet.
%                      qmf8, qmf12, qmf16 - Symmetric Quadrature Mirror Filters [Johnston80]
%                      daub2,daub3,daub4  - Daubechies wavelet [Daubechies88] (#coef = 2N, para daubN).
%                      qmf5, qmf9, qmf13: - Symmetric Quadrature Mirror Filters [Simoncelli88,Simoncelli90]
%           'uw':   undecimated orthogonal wavelet, Daubechies, pyramidal version 
%                   (uses buildWUpyr, reconWUpyr).
%                   repres2 (optional): 'daub<N>', where <N> is a positive integer (e.g., 2)
%           's':    steerable pyramid [Simoncelli&Freeman95].
%                   (uses buildSFpyr, reconSFpyr)
%           'fs':   full steerable pyramid [Portilla&Simoncelli02].
%                   (uses buildFullSFpyr2, reconsFullSFpyr2)       
%   seed (optional):    Seed used for generating the Gaussian noise (when ft == 0)
%                       By default is 0.
%
%   im_d: denoising result

% Javier Portilla, Univ. de Granada, 5/02
% revision 31/03/2003
% revision 7/01/2004
% Last revision 15/11/2004

if ~exist('blSize'),
	blSzX = 3;	% Block size
	blSzY = 3;
else
	blSzY = blSize(1);
	blSzX = blSize(2);
end

if (blSzY/2==floor(blSzY/2))|(blSzX/2==floor(blSzX/2)),
   error('Spatial dimensions of neighborhood must be odd!');
end   

if ~exist('PS'),
    no_white = 0;   % Power spectral density of noise. Default is white noise
else
	no_white = 1;
end

if ~exist('parent'),
	parent = 1;
end

if ~exist('boundary'),
	boundary = 1;
end

if ~exist('Nsc'),
	Nsc = 4;
end

if ~exist('Nor'),
	Nor = 8;
end

if ~exist('covariance'),
        covariance = 1;
end

if ~exist('optim'),
        optim = 1;
end

if ~exist('repres1'),
        repres1 = 'fs';
end

if ~exist('repres2'),
        repres2 = '';
end

if (((repres1=='w') | (repres1=='uw')) & (Nor~=3)),
    warning('For X-Y separable representations Nor must be 3. Nor = 3 assumed.');
    Nor = 3;
end    

if ~exist('seed'),
        seed = 0;
end

[Ny Nx] = size(im);

% We ensure that the processed image has dimensions that are integer
% multiples of 2^(Nsc+1), so it will not crash when applying the 
% pyramidal representation. The idea is padding with mirror reflected
% pixels (thanks to Jesus Malo for this idea).

Npy = ceil(Ny/2^(Nsc+1))*2^(Nsc+1);
Npx = ceil(Nx/2^(Nsc+1))*2^(Nsc+1);

if Npy~=Ny | Npx~=Nx,
    Bpy = Npy-Ny;
    Bpx = Npx-Nx;
    im = bound_extension(im,Bpy,Bpx,'mirror');
    im = im(Bpy+1:end,Bpx+1:end);	% add stripes only up and right
end   


% size of the extension for boundary handling
if (repres1 == 's') | (repres1 == 'fs'),
    By = (blSzY-1)*2^(Nsc-2);
    Bx = (blSzX-1)*2^(Nsc-2);
else        
    By = (blSzY-1)*2^(Nsc-1);
    Bx = (blSzX-1)*2^(Nsc-1);
end    

if ~no_white,       % White noise
    PS = ones(size(im));
end

% As the dimensions of the power spectral density (PS) support and that of the
% image (im) do not need to be the same, we have to adapt the first to the
% second (zero padding and/or cropping).

PS = fftshift(PS);
isoddPS_y = (size(PS,1)~=2*(floor(size(PS,1)/2)));
isoddPS_x = (size(PS,2)~=2*(floor(size(PS,2)/2)));
PS = PS(1:end-isoddPS_y, 1:end-isoddPS_x);          % ensures even dimensions for the power spectrum
PS = fftshift(PS);

[Ndy,Ndx] = size(PS);   % dimensions are even

delta = real(ifft2(sqrt(PS)));      
delta = fftshift(delta);
aux = delta;
delta = zeros(Npy,Npx);
if (Ndy<=Npy)&(Ndx<=Npx),
    delta(Npy/2+1-Ndy/2:Npy/2+Ndy/2,Npx/2+1-Ndx/2:Npx/2+Ndx/2) = aux;
elseif (Ndy>Npy)&(Ndx>Npx),   
    delta = aux(Ndy/2+1-Npy/2:Ndy/2+Npy/2,Ndx/2+1-Npx/2:Ndx/2+Npx/2);
elseif (Ndy<=Npy)&(Ndx>Npx),   
    delta(Npy/2+1-Ndy/2:Npy/2+1+Ndy/2-1,:) = aux(:,Ndx/2+1-Npx/2:Ndx/2+Npx/2);
elseif (Ndy>Npy)&(Ndx<=Npx),   
    delta(:,Npx/2+1-Ndx/2:Npx/2+1+Ndx/2-1) = aux(Ndy/2+1-Npy/2:Ndy/2+1+Npy/2-1,:);
end 

if repres1 == 'w',
    PS = abs(fft2(delta)).^2;
    PS = fftshift(PS);    
    % noise, to be used only with translation variant transforms (such as orthogonal wavelet)
    delta = real(ifft2(sqrt(PS).*exp(j*angle(fft2(randn(size(PS)))))));
end    

%Boundary handling: it extends im and delta
if boundary,
    im = bound_extension(im,By,Bx,'mirror');
    if repres1 == 'w',
        delta = bound_extension(delta,By,Bx,'mirror');
    else    
        aux = delta;
        delta = zeros(Npy + 2*By, Npx + 2*Bx);
        delta(By+1:By+Npy,Bx+1:Bx+Npx) = aux;
    end    
else
	By=0;Bx=0;
end

delta = delta/sqrt(mean2(delta.^2));    % Normalize the energy (the noise variance is given by "sig")
delta = sig*delta;                      % Impose the desired variance to the noise

save('bb.mat');
% main
t1 = clock;
if repres1 == 's',  % standard steerable pyramid
    im_d = decomp_reconst(im, Nsc, Nor, [blSzX blSzY], delta, parent,covariance,optim,sig);
elseif repres1 == 'fs', % full steerable pyramid    
    im_d = decomp_reconst_full(im, Nsc, Nor, [blSzX blSzY], delta, parent, covariance, optim, sig);    
elseif repres1 == 'w',  % orthogonal wavelet    
    if ~exist('repres2'),
        repres2 = 'daub1';
    end    
    filter = repres2;
    im_d = decomp_reconst_W(im, Nsc, filter, [blSzX blSzY], delta, parent, covariance, optim, sig);
elseif repres1 == 'uw',    % undecimated daubechies wavelet
    if ~exist('repres2'),
        repres2 = 'daub1';
    end
    if repres2(1:4) == 'haar',
        daub_order = 2;
    else    
        daub_order = 2*str2num(repres2(5));
    end    
    im_d = decomp_reconst_WU(im, Nsc, daub_order, [blSzX blSzY], delta, parent, covariance, optim, sig);
else
    error('Invalid representation parameter. See help info.');    
end    
t2 = clock;
elaps = t2 - t1;
elaps(4)*3600+elaps(5)*60+elaps(6); % elapsed time, in seconds

im_d = im_d(By+1:By+Npy,Bx+1:Bx+Npx);   
im_d = im_d(1:Ny,1:Nx);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线一区二区三区| 国产乱色国产精品免费视频| 久久久久久影视| 日韩无一区二区| 欧美一区二区免费| 日韩欧美不卡一区| 精品久久久久久久久久久久包黑料| 欧美日韩一区小说| 91精品欧美久久久久久动漫| 久久久另类综合| 国产色产综合色产在线视频| 国产调教视频一区| 国产精品欧美极品| 亚洲最快最全在线视频| 香蕉久久一区二区不卡无毒影院 | 欧美影院一区二区| 欧美高清视频不卡网| 91精品国产福利| 久久一区二区三区国产精品| 中文字幕av一区二区三区免费看 | 欧美性高清videossexo| 欧美伊人久久久久久久久影院| 欧美在线你懂的| 91精品国产免费久久综合| 精品国产一区二区三区av性色 | 成+人+亚洲+综合天堂| 91在线视频在线| 欧美日本一区二区在线观看| 欧美sm极限捆绑bd| 国产精品久久久久毛片软件| 亚洲综合丁香婷婷六月香| 麻豆精品一区二区av白丝在线 | 久久久亚洲高清| 日韩美女久久久| 日本v片在线高清不卡在线观看| 精品一区二区三区在线播放| 成人手机在线视频| 欧美高清hd18日本| 亚洲欧美综合色| 麻豆久久久久久久| 在线观看av一区二区| 精品精品国产高清a毛片牛牛 | 精品一区二区av| 色8久久人人97超碰香蕉987| 欧美va亚洲va国产综合| 日韩理论片一区二区| 激情偷乱视频一区二区三区| 色婷婷亚洲一区二区三区| 欧美tk—视频vk| 天天色综合成人网| 色婷婷久久综合| 国产欧美一区二区精品性| 国产在线精品一区二区三区不卡 | 91高清视频在线| 久久精品亚洲乱码伦伦中文| 天堂av在线一区| 91精品福利视频| 国产女同互慰高潮91漫画| 美美哒免费高清在线观看视频一区二区 | 国产主播一区二区三区| 欧美性高清videossexo| 国产精品高潮久久久久无| 久久国产精品99久久久久久老狼| 91同城在线观看| 国产精品久99| 粗大黑人巨茎大战欧美成人| 精品理论电影在线观看| 蜜桃av一区二区三区电影| 欧美日韩国产精品自在自线| 曰韩精品一区二区| 91看片淫黄大片一级在线观看| 欧美国产成人精品| 福利电影一区二区三区| 久久久精品日韩欧美| 国产一区中文字幕| 久久久久久久久97黄色工厂| 久久精品国产99国产| 日韩欧美久久一区| 久久99最新地址| 久久免费精品国产久精品久久久久 | 久久久久国产精品厨房| 韩国三级在线一区| 国产视频亚洲色图| 成人sese在线| 亚洲主播在线播放| 欧美电影在哪看比较好| 免费观看91视频大全| 精品国产人成亚洲区| 国产精品一二三四五| 国产精品国产三级国产普通话三级 | 国产婷婷色一区二区三区四区| 狠狠色狠狠色合久久伊人| 欧美精品一区二区不卡| 风流少妇一区二区| 亚洲乱码国产乱码精品精小说| 色噜噜狠狠一区二区三区果冻| 亚洲午夜久久久久久久久久久| 欧美理论片在线| 精品亚洲欧美一区| 亚洲人成精品久久久久久| 欧美日韩高清在线播放| 美女一区二区在线观看| 亚洲国产高清在线观看视频| 91丝袜美女网| 日韩成人午夜精品| 国产欧美日韩综合精品一区二区| 成人av影视在线观看| 亚洲国产另类av| 精品国产区一区| 在线视频中文字幕一区二区| 日韩中文欧美在线| 国产精品激情偷乱一区二区∴| 在线视频一区二区三| 国产一区二区不卡在线| 亚洲黄网站在线观看| 久久蜜桃av一区二区天堂 | av福利精品导航| 婷婷综合另类小说色区| 国产清纯在线一区二区www| 欧洲日韩一区二区三区| 精东粉嫩av免费一区二区三区| 国产精品国产三级国产aⅴ中文| 欧美日韩一区二区三区四区五区| 国产精品一区二区x88av| 亚洲国产精品麻豆| 97se亚洲国产综合在线| 亚洲免费观看高清完整版在线观看| 久久精品国产99久久6| 午夜精品久久久久| 久久99国内精品| 欧洲av一区二区嗯嗯嗯啊| 99精品久久99久久久久| 一本到三区不卡视频| 欧美日韩中文国产| 日韩一区二区三| 国产亚洲污的网站| 中文字幕亚洲欧美在线不卡| 亚洲乱码日产精品bd| 日韩专区欧美专区| 狠狠色狠狠色综合日日91app| 成人激情免费网站| 在线观看成人免费视频| 欧美成人官网二区| 国产精品美女久久久久久久久| 亚洲六月丁香色婷婷综合久久 | 蜜桃久久av一区| 国产成人高清在线| 欧美视频在线播放| 久久亚洲春色中文字幕久久久| 国产精品久久久久婷婷| 五月综合激情日本mⅴ| 国产一区在线看| 色综合天天综合网国产成人综合天 | 久久精品网站免费观看| 亚洲乱码中文字幕综合| 久久99国产精品久久99| 成人黄动漫网站免费app| 欧美色视频在线| 国产日韩高清在线| 午夜一区二区三区视频| 国产91精品一区二区| 欧美日韩精品免费| 国产精品国产馆在线真实露脸| 天堂成人国产精品一区| jiyouzz国产精品久久| 91精品国产入口| 亚洲视频1区2区| 国产福利一区在线| 51久久夜色精品国产麻豆| |精品福利一区二区三区| 极品少妇xxxx精品少妇| 欧美视频完全免费看| 中文字幕在线一区免费| 精品一区二区三区免费观看 | 亚洲欧洲三级电影| 国内外精品视频| 欧美一卡2卡3卡4卡| 亚洲精品伦理在线| 国产成人免费高清| 精品国产污网站| 免费视频一区二区| 欧美日韩二区三区| 亚洲一区二区成人在线观看| 成人精品一区二区三区中文字幕| 26uuu另类欧美亚洲曰本| 日韩电影在线观看网站| 欧美日韩一二区| 亚洲欧美另类久久久精品| 豆国产96在线|亚洲| www国产精品av| 国内久久婷婷综合| 精品国产一区二区在线观看| 免费不卡在线视频| 欧美一区二区黄| 蜜桃精品视频在线| 精品精品国产高清一毛片一天堂| 三级在线观看一区二区| 4438x成人网最大色成网站| 亚洲成人三级小说| 欧美精品aⅴ在线视频|