⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lambdacurve.m

📁 一种基于压缩感知技术的图像重建程序
💻 M
字号:
function [lambda,grid] = LambdaCurve(mu,tau,sigma,t)
% LambdaCurve: Radon-Nikodym Calculation
%   [lambda,grid] = LambdaCurve(mu,tau,sigma,t)
% Synopsis
%   mu      array(S,1)
%   tau     array(S,1)
%   sigma   array(S,1)
%   t       positive float
% Result
%   prob    probability
% 
% This function computes the curve
%      lambda(z) =  p_s[z|mu,tau,sigma / phi_s[z|mu,tau]
%      % Illustra
%      p_s[z] = dens[ Z_s |  |Z_i| < t sigma(i), i=1,...,S-1 ]
% Here
%      (Z_i: 1 <= i <= S) is a multivariate normal vector
%      mean Z_i = mu(i)
%      Cov(Z_i,Z_j) = tau^2(max(i,j))

S = length(sigma);
scale=max(sigma(:));
%grid = (-128*256):((256*128)-1); grid = grid ./256; dgrid = grid(2)-grid(1);
grid = (-128*256):((256*128)-1); grid = grid .* (7*scale)./(256*256); dgrid = grid(2)-grid(1);
f = 0*grid+1;
if S > 1,
    for s=1:S,
        if s < S,
        	g = MutilateDensity(grid,f,-t*sigma(s),t*sigma(s));
            kern = MakeTransKernel(grid,mu((s+1):-1:s),tau((s+1):-1:s));
            f = real(FunConv(g,reverse(kern)));
        end
        if (s == S),
            dens = NormalDens(grid,mu(s),tau(s)); dens = dens ./sum(dens);
            bot =  sum(f .* dens);
%             lambda = (f.*dens)./bot;
            lambda = (f)./bot;

        end
    end
end

%
% Copyright (c) 2006. David Donoho
%  

%
% Part of SparseLab Version:100
% Created Tuesday March 28, 2006
% This is Copyrighted Material
% For Copying permissions see COPYING.m
% Comments? e-mail sparselab@stanford.edu
%

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -