Matlab - GUIDE MATLAB

   
Vista:

GUIDE MATLAB

Publicado por Ronald (7 intervenciones) el 25/10/2015 13:17:01
Hola,

tengo muchas imágenes que quiero cargar en una GUI de Matlab.Necesito que cada vez que le doy al botón NextImage, a la siguiente imagen....pero no lo consigo. solo la primera y la segunda.¿ Alguien sabe como puedo hacerlo?no tengo mucha idea de usar la GUI..

Gracias!!!!

Lo que hago es poner este código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
function interfaz_OpeningFcn(hObject, eventdata, handles, varargin)
 
handles.output = hObject;
 
 
Carpeta='C:\Users\Ronald\Documents\MATLAB\Imagenes\';
directorio= dir(Carpeta);
file={};
isub = [directorio(:).isdir];
subcarpetas = {directorio(isub).name}';
subcarpetas(ismember(subcarpetas,{'.','..'})) = [];
numsubcarpetas=length(subcarpetas);

 for k=1:numsubcarpetas
 
 f=dir(fullfile(Carpeta,subcarpetas{k},'*.jpg'));
 file=[file fullfile(Carpeta,subcarpetas{k},{f.name})];
 numfile=length(file);
 

   imagen=imread(file{k});
   imshow (imagen);
  
 end


% Update handles structure
guidata(hObject, handles);



function NextImage_Callback(hObject, eventdata, handles)

 for k=1:numfiles
 
 f=dir(fullfile(Carpeta,subcarpetas{k},'*.jpg'));
 file=[file fullfile(Carpeta,subcarpetas{k},{f.name})];
 numfile=length(file);
 
   imagen=imread(file{k});
   
  
 end
    guidata(hObject, handles);
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

GUIDE MATLAB

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 25/10/2015 17:02:19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
function varargout = subir_imagenes1(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @subir_imagenes1_OpeningFcn, ...
                   'gui_OutputFcn',  @subir_imagenes1_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 subir_imagenes1_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
 
function varargout = subir_imagenes1_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
 
function pushbutton3_Callback(hObject, eventdata, handles)
Carpeta='C:\Users\jeremias\Pictures\CARPETAS IMAGENES';
 directorio= dir(Carpeta);
 isub = [directorio(:).isdir];
 subcarpetas = {directorio(isub).name}';
subcarpetas=subcarpetas(3:end);
 numsubcarpetas=length(subcarpetas);
 for k=1: numsubcarpetas
     ruta=fullfile(Carpeta,subcarpetas{k},'*.jpg')
     f=dir(ruta);
      for j=1:size(f,1)
      imagen1=fullfile(Carpeta,subcarpetas{k}, f(j).name)  ;
      imshow (imagen1);
      pause(0.5)
     end
 end





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
>> subir_imagenes1
 
ruta =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpeta2\*.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpeta2\Matlab basicoceupsfiee.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpeta2\hola.jpg
 
 
ruta =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpetas4\*.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpetas4\derivada_integral.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpetas4\tension.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpetas4\title.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\carpetas4\xtick.jpg
 
 
ruta =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\*.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\11393252_831786413578304_2760347635026007517_n.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\11749517_10205685000178313_977212248_n.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\Matlab basicoceupsfiee.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\ceupsfiee MB 2015.jpg
 
 
imagen1 =
 
C:\Users\jeremias\Pictures\CARPETAS IMAGENES\sebitas5\distr1.jpg






Saludos
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
Servicios de programación matlab
jjcc94@hotmail.com
Estimado Usuario, el correo es para servicios de cursos, asesoría y programación. Toda ayuda gratuita es vía foro


http://matlabcaballero.blogspot.com
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

GUIDE MATLAB

Publicado por Ronald (7 intervenciones) el 25/10/2015 17:55:44
Hola Jose,

he cargado el código que me has puesto poniendo el código en mi botón de NextImage, y no se me cargan todas...solo una y el botón no me funciona cuando le doy

Muchas Gracias,
Un saludo.
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
Imágen de perfil de JOSE JEREMIAS CABALLERO

GUIDE MATLAB

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 25/10/2015 18:03:53
porque no subes tu código fig y m y los archivos imágenes. Como veras el código q yo he puesto si funciona cuando ejecuto el programa y la ejecución esta debajo. Ahora el problema debe estar q la dirección de tus imágenes están en otro lugar de lo que pongo y por lo tanto no va funcionar, tienes que cambiar ese dato Carpeta='C:\Users\jeremias\Pictures\CARPETAS IMAGENES'; no es solo copiar y ejecutar, tienes que estudiar el código, revisar, quita los punto y coma de cada de uno y ver lo que está haciendo. además deberías pegar la imagen del error que arroja matlab, y no solo decir que no funciona.

saludos.
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

GUIDE MATLAB

Publicado por Ronald (7 intervenciones) el 25/10/2015 18:10:29
El código lo entiendo, y he puesto mi directorio y he visto lo que salía, no me sale ningún error...lo único que en la GUI solo me carga la primera imagen y no me funciona el botón que tengo como NextImage. Si pongo el pause (0.5) se me cargan todas..pero eso no quiero, necesito que se cargue la siguiente cada vez que yo le doy al botón de NextImage.

Gracias,
Un saludo
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
Imágen de perfil de JOSE JEREMIAS CABALLERO

GUIDE MATLAB

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 25/10/2015 18:45:13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
function varargout = subir_imagenes2(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @subir_imagenes2_OpeningFcn, ...
                   'gui_OutputFcn',  @subir_imagenes2_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 subir_imagenes2_OpeningFcn(hObject, eventdata, handles, varargin)
global m
m=1;
Carpeta='C:\Users\jeremias\Pictures\CARPETAS IMAGENES';
 directorio= dir(Carpeta);
 isub = [directorio(:).isdir];
 subcarpetas = {directorio(isub).name}';
subcarpetas=subcarpetas(3:end);
 numsubcarpetas=length(subcarpetas);
 n=1;
 for k=1: numsubcarpetas
     ruta=fullfile(Carpeta,subcarpetas{k},'*.jpg');
     f=dir(ruta);
      for j=1:size(f,1)
      imagen1{n,1}=fullfile(Carpeta,subcarpetas{k}, f(j).name)  ;
      n=n+1;
     end
 end
handles.imagen1=imagen1;
handles.n=n;
handles.output = hObject;
guidata(hObject, handles);


function varargout = subir_imagenes2_OutputFcn(hObject, eventdata, handles) 
varargout{1} = handles.output;

function pushbutton6_Callback(hObject, eventdata, handles)
global m
n=handles.n;
if m<n
imshow (handles.imagen1{m,1});
m=m+1;
end


Saludos
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
Servicios de programación matlab
jjcc94@hotmail.com
Estimado Usuario, el correo es para servicios de cursos, asesoría y programación. Toda ayuda gratuita es vía foro



http://matlabcaballero.blogspot.com
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