mkR.m 775 B

1234567891011121314151617181920212223242526272829303132
  1. % IM = mkR(SIZE, EXPT, ORIGIN)
  2. %
  3. % Compute a matrix of dimension SIZE (a [Y X] 2-vector, or a scalar)
  4. % containing samples of a radial ramp function, raised to power EXPT
  5. % (default = 1), with given ORIGIN (default = (size+1)/2, [1 1] =
  6. % upper left). All but the first argument are optional.
  7. % Eero Simoncelli, 6/96.
  8. function [res] = mkR(sz, expt, origin)
  9. sz = sz(:);
  10. if (size(sz,1) == 1)
  11. sz = [sz,sz];
  12. end
  13. % -----------------------------------------------------------------
  14. % OPTIONAL args:
  15. if (exist('expt') ~= 1)
  16. expt = 1;
  17. end
  18. if (exist('origin') ~= 1)
  19. origin = (sz+1)/2;
  20. end
  21. % -----------------------------------------------------------------
  22. [xramp,yramp] = meshgrid( [1:sz(2)]-origin(2), [1:sz(1)]-origin(1) );
  23. res = (xramp.^2 + yramp.^2).^(expt/2);