radon_zp2_fast.m

来自「beamlet变化的工具箱」· M 代码 · 共 45 行

M
45
字号
function Rad = Radon_Zp2_fast(x)
% Radon_Zp2_Fast: Fast Radon Transform for Z_p^2
% Usage
%	Rad = Radon_Zp2_Fast(x)
% Inputs
%	x	array p*p, p prime
% Outputs 
%	Rad	array p*(p+1)
% Description
%	An O(p^2 log(p)) flops algorithm for the
%	Radon transform for Z_p^2.
%
p = size(x,1);
PPolar = zeros(p,p+1);
fhat = fft2(x) ./ p^2;
for i=0:(p-1),
	row = 0:(p-1);
	col = rem( -i.* row, p);
	col = col + (col ~= 0) .*  p;
	inx = row + p*col + 1;
    vec = fhat(inx);
	PPolar(:,i+1) = vec(:); 
end
PPolar(:,(p+1)) = fhat(1,1:p).';
Rad = zeros(p,p+1);
for i=1:(p+1),
  Rad(:,i) = real(ifft(PPolar(:,i)) * p);
end

% Copyright 2000  David L. Donoho
%% Part of BeamLab Version:200% Built:Friday,23-Aug-2002 00:00:00% This is Copyrighted Material% For Copying permissions see COPYING.m% Comments? e-mail beamlab@stat.stanford.edu%%% Part of BeamLab Version:200% Built:Saturday,14-Sep-2002 00:00:00% This is Copyrighted Material% For Copying permissions see COPYING.m% Comments? e-mail beamlab@stat.stanford.edu%

⌨️ 快捷键说明

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