mkImpulse.m 529 B

12345678910111213141516171819202122232425
  1. % IM = mkImpulse(SIZE, ORIGIN, AMPLITUDE)
  2. %
  3. % Compute a matrix of dimension SIZE (a [Y X] 2-vector, or a scalar)
  4. % containing a single non-zero entry, at position ORIGIN (defaults to
  5. % ceil(size/2)), of value AMPLITUDE (defaults to 1).
  6. % Eero Simoncelli, 6/96.
  7. function [res] = mkImpulse(sz, origin, amplitude)
  8. sz = sz(:)';
  9. if (size(sz,2) == 1)
  10. sz = [sz sz];
  11. end
  12. if (exist('origin') ~= 1)
  13. origin = ceil(sz/2);
  14. end
  15. if (exist('amplitude') ~= 1)
  16. amplitude = 1;
  17. end
  18. res = zeros(sz);
  19. res(origin(1),origin(2)) = amplitude;