% EE 438 Digital Signal Processing with Applications - Spring 2001 % 2-D signals and systems% Image display within Matlab% Initialize % cos2dxcirc.m % Spectrum of circ(x,y)*cos(ux+vy) %--------------------------------------------------------------- % Initialize clear all; close all; %--------------------------------------------------------------- % Parameters radius=32; % radius of circle degrees = 30; % "direction" of cosine P = 8; % period of cosine M = 256; % dimensions of image (MxM) %--------------------------------------------------------------- %Initialize colormap mcomp = 0 : 1.0 ./ 255 : 1.0; % output colors lie in [0,1] map = [mcomp' mcomp' mcomp']; index = (-M/2:1:M/2-1); x = ones(M,1)*index; y = x(:,end:-1:1)'; z = x.*x + y.*y <= radius.*radius; theta = pi*degrees/180; rho = 1/P; u_0 = rho*cos(theta); v_0 = rho*sin(theta); f = 0.5 + 0.5*cos(2*pi*(u_0*x + v_0*y)); g=z.*f; figure(1); image(g*255); colormap(map); axis('off'); axis('image'); title('g(x,y)=0.5(1+cos(u_0x+v_0y))circ(x,y)') g = fftshift(g); G = fft2(g); G = fftshift(G); Gmag = abs(G); Gmax = max(max(G)); decade = 2; Gmag = Gmag/Gmax*10^decade + 1; Gmag = log10(Gmag); Gmax = max(max(Gmag)); figure(2); image(Gmag*255/Gmax); colormap(map); axis('off'); axis('image'); title('log|G(u,v)|')