eql_obj.m
来自「实现PET/SPECT 幻影图像regression的matlab源代码 al」· M 代码 · 共 38 行
M
38 行
function obj = eql_obj(xs, G, yi, ci, ri, R, mask)%function obj = eql_obj(xs, G, yi, ci, ri, R, mask)% compute quadratically penalized emission Poisson likelihood% for each "column" of x (but x can be multi-dim if mask provided)%% Copyright May 1999, Jeff Fesslerif nargin < 3, help(mfilename), error(mfilename), endif ~isvar('ci') | isempty(ci) ci = ones(size(yi(:)));endif ~isvar('ri') | isempty(ri) ri = zeros(size(yi(:)));endif ~isvar('R'), R = []; endif nargin == 7 dims = size(xs); xs = reshape(xs, prod(dims(1:(end-1))), dims(end)); xs = xs(find(mask(:)), :);endlike = zeros(ncol(xs),1);penal = zeros(ncol(xs),1);for kk=1:ncol(xs) ticker(mfilename, kk, ncol(xs)) x = xs(:,kk); yp = ci .* (G * x) + ri; % predicted measurements like(kk) = sum(yi .* log(yp) - yp); if ~isempty(R) if isstruct(R) penal(kk) = R.penal(R, x); else penal(kk) = norm(R*x)^2/2; % norm(C * x).^2 / 2; end endendobj = like - penal;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?