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

📄 osem_sum.m

📁 实现PET/SPECT 幻影图像regression的matlab源代码 algorithms for Poisson emission tomography PET/SPECT/ Poisson
💻 M
字号:
 function Asums = osem_sum(G, yi, ci, ri, block_order)%	precompute some sums needed for OSEM%	NOT DONE!!!!!!!!!!!%	block_order is a vector of length nblock%	that specifies the starting angle for each block%	simplest case is just block_order = 1:nblock,%	but that choice is suboptimal%	if block_order is an empty matrix, then 1 block is used%	if block_order is a scalar (nblock) power of 2 != 1,%	then the "bit-reversal ordering" is used%	(nblock can be 1 to na)%%	Copyright Apr 1999, Jeff Fesslerif nargin < 3, help osem_sum, error args, end[nb, na] = size(yi);if (nargin < 4 | isempty(ci))	ci = ones(size(yi));endif (nargin < 5 | isempty(ri))	ri = zeros(size(yi));endif (nargin < 6 | isempty(block_order))	block_order = 1;endnblock = length(block_order);if length(block_order) == 1	nblock = block_order;	block_order = 1:nblock;endif (nargin < 7 | isempty(Asums))	% compute Asum	not done!!!!!!!1	for ii=1:nblock		ib = block_order(ii);	end	Asum = zeros([size(x) nblock]);endif (nargin < 7 | isempty(nblock))	nblock = 1;endGt = G';	% easier to work with transposefor ib=1:nblock	ia = ib:nblock:na;	Asum = zeros(size(x));	eterm = zeros(size(x));	%	Asum = G' * ci	for ia=ib:nblock:na		Asum = Asum + Gt(:,[1:nb]+(ia-1)*na) * ci(ia,:)';	end	return	yp = ci .* (G * x) + ri;	% predicted measurements	eterm = G' * (ci .* (yi ./ yp));	x = x .* eterm ./ Asum;end

⌨️ 快捷键说明

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