Matlab - GUIDE transformada de fourier Cirulo

 
Vista:

GUIDE transformada de fourier Cirulo

Publicado por Manus (1 intervención) el 09/09/2011 04:30:57
Buenas.

he intentado hacer la transformada de fourier de un circulo en matlab con guide... pero no he podido.

Encontre un videotutorial en youtube

http://www.youtube.com/watch?v=8Q1xUXfGyas

Para un rectángulo, sin embargo no he podido hacerlo...

Alguien me puede ayudar??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

GUIDE transformada de fourier Cirulo

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 09/09/2011 21:18:20
hola Manus

%=================================
function varargout = transformada_fourier(varargin)
gui_Singleton = 1;clc
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @transformada_fourier_OpeningFcn, ...
'gui_OutputFcn', @transformada_fourier_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function transformada_fourier_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);


function varargout = transformada_fourier_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function pushbutton1_Callback(hObject, eventdata, handles)
x=linspace(100,10,100);
% crea un vector de 100 elementos, donde cada elemento es 100

y=x; % el vector y toma el valor que el vector x

[mx,my]=meshgrid(x,y);
% genera una matriz mx de 100x100 cuyas entradas con puros 100
% genera una matriz my de 100x100 cuyas entradas con puros 100


dat1=mx.*my<0; %ecuacion de rectangulo
% mx.*my : multiplicacion de elemento a elemento de la matriz mx por my
% dat1=mx.*my<0 : guarda en la matriz dat1 la posicion de todo los
% elmentos de la matriz mx.*my cuyos valores son menores que 0


dat1(10:90,40:60)=1;
% de la matriz dat1: desde la fila 10 hasta la fila 90 y desde la columna
% 40 hasta la columna 60 le asigna el valor de 1 a cada una de sus entradas


axes(handles.axes1) % para poder graficar en el axes1
imshow(dat1); % en la ventana de grafica axes1 grafica el rectangulo

axes(handles.axes2); %para poder graficar en el axes2
xf1=FFT2(dat1); %aplica FFT2 a la matriz dat1 y lo guarda en xf1
imagesc(log(abs(fftshift(xf1))+1)); % visualiza el segundo imagen
colormap jet % para ver las figuras en color de formato jet

%============================
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS DONDE SE NECESITA MATLAB
PROFESOR DE MATLAB Y METODOS NUMERICOS
PROGRAMADOR EN MATLAB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar