Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
executable file 43 lines (30 sloc) 845 Bytes
% IM = mkAngularSine(SIZE, HARMONIC, AMPL, PHASE, ORIGIN)
%
% Make an angular sinusoidal image:
% AMPL * sin( HARMONIC*theta + PHASE),
% where theta is the angle about the origin.
% SIZE specifies the matrix size, as for zeros().
% AMPL (default = 1) and PHASE (default = 0) are optional.
% Eero Simoncelli, 2/97.
function [res] = mkAngularSine(sz, harmonic, ampl, ph, origin)
sz = sz(:);
if (size(sz,1) == 1)
sz = [sz,sz];
end
mxsz = max(sz(1),sz(2));
%------------------------------------------------------------
%% OPTIONAL ARGS:
if (exist('harmonic') ~= 1)
harmonic = 1;
end
if (exist('ampl') ~= 1)
ampl = 1;
end
if (exist('ph') ~= 1)
ph = 0;
end
if (exist('origin') ~= 1)
origin = (sz+1)/2;
end
%------------------------------------------------------------
res = ampl * sin(harmonic*mkAngle(sz,ph,origin) + ph);
Something went wrong with that request. Please try again.